45. Napisati program koji poziva proceduru koja ispisuje tekst: «Ja sam funkcija!»
#include <stdio.h>
#include <conio.h>
void funkcija()
{
printf("Ja sam funkcija!");
}
main()
{
funkcija();
getch();
}
Preuzmite projekt: zad_45.cpp.
46. Napisati program koji će ispisati n puta «Dobar dan». Navedeni ispis teksta nalazi se u funkciji – dakle funkcija jednom ispisuje navedeni tekst.
#include <stdio.h>
#include <conio.h>
void funkcija()
{
printf("Ja sam funkcija!\n");
}
main()
{
int n;
printf("Koliko puta? ");
scanf("%d",&n);
for(int i=1;i<=n;i++)
funkcija();
getch();
}
Preuzmite projekt: zad_46.cpp.
47. Napisati program koji za upisana dva broja izračunava sumu i umnožak. Izračun i ispis rezultata odvijaju se u funkciji.
#include <stdio.h>
#include <conio.h>
void funkcija(int a,int b)
{
printf("%d*%d=%d\n%d+%d=%d",a,b,a*b,a,b,a+b);
}
main()
{
int br1,br2;
printf("Prvi broj: ");
scanf("%d",&br1);
printf("Drugi broj: ");
scanf("%d",&br2);
funkcija(br1,br2);;
getch();
}
Preuzmite projekt: zad_47.cpp.
48. Napisati funkciju koja izračunava faktorijel upisanog broja.
#include <stdio.h>
#include <conio.h>
int faktorijel(int n)
{
if(n==0)
return 0;
else
{
int f=1;
while(n>1)
{
f*=n;
n--;
}
return f;
}
}
main()
{
int br;
printf("Unesi jedan broj: ");
scanf("%d",&br);
printf("Faktrojiel broja %d je %d.",br,faktorijel(br));
getch();
}
Preuzmite projekt: zad_48.cpp.
49. Napisati funkciju koja će za upisani sat, minutu i sekundu ispisati realni broj sa dvije decimale.
#include <stdio.h>
#include <conio.h>
float vrijeme(int sat,int min,int sec)
{
float dec_h;
dec_h=sat+float(min)/60+float(sec)/3600;
return dec_h;
}
main()
{
int sat,min,sec;
printf("Sat: ");
scanf("%d",&sat);
printf("Minute: ");
scanf("%d",&min);
printf("Sekunde: ");
scanf("%d",&sec);
printf("%dh%dm%ds=%.2fh",sat,min,sec,vrijeme(sat,min,sec));
getch();
}
Preuzmite projekt: zad_49.cpp.
50. Napisati funkciju koja će upisani broj sa dvije decimale pretvoriti u sate, minute i sekunde.
#include <stdio.h>
#include <conio.h>
void vrijeme(float dec)
{
//Matematičku logiku nisam uspio dokučit, pa ako ima netko da zna formulu za iz decimalnog u hh:mm:ss nek mi ju mail-a:D
}
main()
{
float dec_h;
printf("Unesi vrijeme u obliku decimalnog broja: ");
scanf("%f",&dec_h);
vrijeme(dec_h);
getch();
}
Preuzmite projekt: zad_50.cpp.
51. Napisati funkciju koja ispisuje cijenu sa PDV-om za primljenu cijenu bez PDV-a. Cijene se upisuju dok se ne upiše 0.
#include <stdio.h>
#include <conio.h>
void pdv(float cijena)
{
printf("Cijena s PDV-om iznosi %.2f.\n",cijena*1.22);
}
main()
{
float cijena;
for(int i=1;i>0;i)
{
printf("Unesi cijenu bez PDV-a: ");
scanf("%f",&cijena);
if(cijena==0)
{
printf("Press any key to continue...");
break;
}
pdv(cijena);
}
getch();
}
Preuzmite projekt: zad_51.cpp.
52. Napisati funkciju koja kao rezultat vraća sumu tri upisana broja.
#include <stdio.h>
#include <conio.h>
int suma(int br[3])
{
int sum=0;
for(int index=0;index<=2;index++)sum+=br[index];
return sum;
}
main()
{
int br[3];
for(int index=0;index<=2;index++)
{
printf("Unesi %d. broj: ",index+1);
scanf("%d",&br[index]);
}
printf("Suma ta tri brojeva je: %d",suma(br));
getch();
}
Preuzmite projekt: zad_52.cpp.
53. Zaposlenik je dobio plaću u prvommjesecu p kuna, a svaki slijedeći mjesec dobiva d kuna više. Napisati funkciju koja će vratiti iznos plaće koji će radnik primiti nakon m mjeseci.
#include <stdio.h>
#include <conio.h>
int placa(int p,int d,int m)
{
for(int index=0;index<m;index++)p+=d;
return p;
}
main()
{
int p,d,m;
printf("Unesi pocetni iznos place: ");
scanf("%d",&p);
printf("Za koliko ce se placa povecavat: ");
scanf("%d",&d);
printf("Broj mjeseci: ");
scanf("%d",&m);
printf("Radnik ce nakon %d mjeseci primit placu od: %d.",m,placa(p,d,m));
getch();
}
Preuzmite projekt: zad_53.cpp.
54. Napisati program koji će pozivati funkciju, a koja će vraćati vrijednosti: 1 ako je upisani broj djeljiv sa 2 ili 3; 2 ako je upisani broj djeljiv sa 5 ili 7; 3 ako je upisani broj djeljiv sa 11; 0 ako upisani broj nije djeljiv sa niti jednim od upitanih brojeva. Ispisati u koju kategoriju spada upisani broj ovisno o povratnoj informaciji iz funkcije. Upisivati brojeve dok se ne upiše barem 4 broja kategorije 3 ili 5 brojeva kategorije 2. Ispisati broj (količinu) upisanih brojeva svake pojedine kategorije.
#include <stdio.h>
#include <conio.h>
int djeljenje(int br)
{
if(br%2==0||br%3==0)return 1;
else if(br%5==0||br%7==0)return 2;
else if(br%11==0)return 3;
else return 0;
}
main()
{
int br,sum_0,sum_1,sum_2,sum_3;
sum_0=sum_1=sum_2=sum_3=0;
while(sum_3<4 && sum_2<5)
{
printf("Unesite jedan broj: ");
scanf("%d",&br);
switch(djeljenje(br))
{
case 0:
sum_0++;
printf("Broj spada u kotagoriju 0 (nije djeljiv s 2,3,5,7 ili 11)\n");
break;
case 1:
sum_1++;
printf("Broj spada u kotagoriju 1 (djeljiv je s 2 ili 3)\n");
break;
case 2:
sum_2++;
printf("Broj spada u kotagoriju 2 (djeljiv je s 5 ili 7)\n");
break;
case 3:
sum_3++;
printf("Broj spada u kotagoriju 3 (djeljiv je s 11)\n");
break;
default:
printf("Greška!");
}
}
getch();
}
Preuzmite projekt: zad_54.cpp.