Professional Documents
Culture Documents
LV4-Z1
-------
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
struct tocka{
int x;
int y;
int z;
};
struct trokut{
//postavljamo vrhove trokuta kao pokazivace koje cemo kasnije psotaviti na
adrese unesenih tocaka
struct tocka* t1;
struct tocka* t2;
struct tocka* t3;
};
float distance(struct tocka* t2, struct tocka* t1){
//funkcija koja računa udaljenost između dvije točke; u funkciji pow
pokazujemo na vrijednost koordinata dviju točaka koje onda oduzimamo
return sqrt(pow(t2->x - t1->x, 2) + pow(t2->y - t1->y, 2) + pow(t2->z - t1-
>z, 2));
}
float opseg(struct trokut t){
//funkcija racuna opseg zbrajanjem povratnih vrijednosti funkcije distance za
sve tri stranice trokuta
return distance(t.t1, t.t2) + distance(t.t2, t.t3) + distance(t.t3, t.t1);
}
int main(void) {
struct tocka tocke[20];
struct trokut T[20], * tr;
tr = &T[0];
//postavljamo pokazivač tr na adresu prvog člana polja struktura trokuti
int n, m;
int t1, t2, t3;
float opseg;
return 0;
}
-------
LV4-Z2
-------
#include <stdio.h>
struct proizvod {
char ime[20];
float cijena;
int kolicina;
} artikl[10], *max;
//definiranje polja struktura i pokazivača kojeg ćemo postaviti da pokazuje
na adresu određene strukture iz polja artikl
int main(void) {
int n, i, temp = 0;
float max_price;
char clr; //varijabla u koju
će se spremati \n znak poslije funkcije scanf, a prije funkcije fgets
max_price = artikl[0].cijena;
//postavljamo cijenu prvog elementa kao maksimalnu cijenu, pa onda u for
petlji prolazimo kroz polje i uspoređujemo kako bi dobili stvarnu najveću
vrijednost
for (i = 0; i < n; i++) {
if (artikl[i].cijena > max_price) {
max_price = artikl[i].cijena;
temp = i; //u varijablu temp
postavljamo indeks artikla koji ima najveću cijenu
}
}
printf("REZULTATI:\n");
printf("cijena: %.2f, kolicina: %d", max->cijena, max->kolicina);
//ispisujemo vrijednosti koje se nalaze na adresama na koje pokazivač
pokazuje
return 0;
}