Primer programa sa funkcijom koja računa aritmetičku sredinu dva cela broja.
#include <stdio.h>
float ar(int a, int b) /* Definicija funkcije */
{ float c;
c = (a + b)/2;
return c; }
main()
{ float x;
x = ar(3,5); /* Poziv funkcije */
printf(„%f\n“, x); /* Ovo smo krace mogli da napisemo kao printf(„%d\n“, ar(3,5)); */
}
Primer funkcije koja stepenuje realan broj na celobrojni izlozilac (kao standardna funkcija Power).
float power(float x, int k)
{ int i; float rezultat ;
rezultat = 1;
for (i = 0; i<k; i++) rezultat=rezultat*x;
return rezultat; }
Verzija koja radi i za negativne izlozioce.
float power(float x, int k)
{ int i; float s = 1, rezultat;
if (k<0) n = -k;
else n = k;
for (i = 1; i<=n; i++) s=s*x;
if (k>0) rezultat =s;
else rezultat =1/s;
return rezultat; }
Primer funkcije koja za realan broj x računa y po datoj formuli .
U glavnom programu uneti dva realna broja a,b i štampati vrednost izraza I=y(2)+y(a)-y(b).
#include <stdio.h>
float fun(float x)
{ float y ;
if (x<=1) y=x*x*x;
else y=sqrt(x);
return y;
}
main()
{ float a,b,I;
printf(“uneti dva realna broja:”);
scanf(“%f%f”,&a,&b) ;
I= fun(2)+fun(a)-fun(b);
prinf(“Vrednost izraza I je %f”,I);
}
Задаци:
1. Написати функцију РОМБ која израчунава обим ромба на основу његових дијагонала. У главном програму унети податке за два ромба, упоредити их и штампати који ромб има већи обим.
2. Написати функцију КУПА која израчунава запремину купе на основу полупречника основе и висине. У главном програму унети полупречник основе и висину купе, израчунати њену запремину, а затим и запремину купе чији је полупречник основе два пута већи, а висина два пута мања. Штампати која купа има већу запремину.
3. Написати функцију РАСТОЈАЊЕ која рачуна растојање између две тачке дате својим координатама. У главном програму унети координате три тачке и проверити да ли дате тачке чине троугао. Ако чине израчунати обим и површину троугла.
4. Написати функцију ФАКТ која израчунава факторијел природног броја n. У главном програму унети два природна броја a и b и штампати А=(а+1)! и B= (b-1)! .
5.Написати функцију која :
1) израчунава степен 3n за дати цео број n,
2) одређује највећу цифру датог троцифреног броја.
У главном програму унети цео број x и израчунати и штампати 3x +3-x и штампати највећу цифру броја 35.
6. Написати функцију која :
1) израчунава S(n), тј. збир бројева од 1 до n,
2) одређује да ли је дати број прост.
У главном програму унети бројеве x и y , израчунати S(x)-S(y) и проверити да ли је добијени број прост.
А САД НЕШТО САСВИМ ДРИГАЧИЈЕ! Покушајте сами да направите квиз!
s