Osnove Programiranja - C zadaci (funkcije)

int funkcija(int a){a=45;a++;return 54;}

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.

<<Home