You are on page 1of 7

Uvod u računala i programiranje

Vježba 2.

 Upoznavanje sa strukturama upravljanja programskog tijeka


 Ispitivanje uvjeta. Grananje.
 Petlje (while, for), brojači, inkrement/dekrement
 Zamjena vrijednosti varijabli
Literatura: Interna skripta - stranice: 27.-36.

Zadatak 1.

Što je rezultat izvođenja programa? Ispišite sve međurezultate do cilja!

#include<stdio.h>
#include<stdio.h>
#include<stdio.h>

void main()
void
void
main()
main()
{ { {
int i; intint
i=5;
i=5;
for (i=0;i<5;i++)
while
while
(i)(i)
printf("%d\n",i);
printf("%d\n",--i);
printf("%d\n",i--);
} } }

#include<stdio.h> #include<stdio.h>

void main() void main()


{ {
int i=5; int i=5;
i=i+2;
if (--i>4) i=i+3; int uvjet=1;
if (i<5) printf
printf("%d\n",i); int suma=0;
("Izlaz A\n");
} while (uvjet)
else {
printf("Izlaz B\n"); if (i--<2) uvjet=0;
} suma=suma+i;
}
printf("%d\n",suma);
}

___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Zadatak 2.
a) Proučite program koji uspoređivanjem vrijednosti dviju varijabli određuje koja je vrijednost
manja, te ispisuje odgovarajuću poruku. Npr. Ako je prva manja od druge, ispiše: "Vrijednost
prve je manja od druge"; ako je druga manja od prve, ispiše: "Vrijednost druge je manja od
prve", a ako su jednake ispiše: "Ucitane vrijednosti su jednake".

b) Nadopunite program tako da omogućuje zamjenu vrijednosti varijabli u slučaju da je prva


manja od druge. Točnost algoritma provjerite odgovarajućim ispisom, primjerice: "Unijeli ste
vrijednosti 4 i 15. Veca vrijednost je 15".

#include <stdio.h>

int main()
{
int a, b;

printf( "\nUnesi dvije vrijednosti\n");


scanf( "%d",&a);
scanf( "%d",&b);

if (a<b)
printf("Vrijednost prve je manja od druge \n");
else if (b<a)
printf("Vrijednost druge je manja od prve \n");
else
printf("Ucitane vrijednosti su jednake\n");

return 0;
}

Zadatak 3.

Napišite program koji traži učitavanje vrijednosti dviju varijabli a i b . Zahtjev se ponavlja sve
dok korisnik ne unese drugu varijablu manje vrijednost (koristiti while petlju).
Program zatim ispisuje "Prva varijabla a = (ispisati vrijednost), a druga b= (ispisati
vrijednost). Vrijednost b je manja od a."

Zadatak 4.
Napišite program koji ispisuje sumu svih brojeva od 1 do 10. Prvo rješenje realizirajte
korištenjem for petlje, a drugo rješenje realizirajte while petljom.

Zadatak 5.

Dan je program koji omogućuje da četiri unesene varijable ispišemo redom od najveće do
najmanje! Koliko je puta potrebno napraviti usporedbe četiriju varijabli?

(Neobavezno pitanje: Kako bismo mogli opisati usporedbe vrijednosti brojačima? Da li je


moguće riješiti problem korištenjem petje?)
#include<stdio.h>
void main()
{
int a,b,c,d;
int pom;
printf ("Unesite 4 cjelobrojne varijable\n");
scanf("%d %d %d %d",&a, &b, &c, &d);

if (a<b)
{
pom=a;
a=b;
b=pom;
}

if (a<c)
{
pom=a;
a=c;
c=pom;
}

if (a<d)
{
pom=a;
a=d;
d=pom;
}
// u ovom trenu variabla a sigurno je najveca i moramo poredati jos b,c,i d

if (b<c)
{
pom=b;
b=c;
c=pom;
}

if (b<d)
{
pom=b;
b=d;
d=pom;
}
// sada je b druga najveca; jos moramo sloziti c i d
if (c<d)
{
pom=c;
c=d;
d=pom;
}

printf("Poredano od najvece do najmanje: %d %d %d %d\n",a, b, c, d);


}

Rješenje - Zadatak 2., b)


#include <stdio.h>

int main()
{
int a, b;
int pom; //dodajemo pomocnu varijablu

printf( "\nUnesi dvije vrijednosti\n");


scanf( "%d",&a);
scanf( "%d",&b);

if (a<b) //zamjenu vrijednosti treba napraviti


{ //kada je prva manja od druge
printf("Vrijednost prve je manja od druge \n");

pom=a;
a=b;
b=pom;

printf("Unijeli ste %d i %d. Veca vrijednost je %d.\n", b, a, a);


}

else if (b<a)
printf("Vrijednost druge je manja od prve \n");

else
printf("Ucitane vrijednosti su jednake\n");

return 0;
}

Rješenje - Zadatak 3
#include<stdio.h>

int main()
{#include<stdio.h>
int a, b;
int main()
{
printf("Upisite
int a, b; vrijednost prve varijable\n");
scanf("%d",&a);
int uvjet=1;
printf("Upisite vrijednost druge varijable\n");
scanf("%d",&b);
/* izvršavanje petlje kontrolira se „zastavicom“ (varijabla čija vrijednost
se tumači kao istina ili neistina)*/
while (a<=b){
printf("Upisite vrijednost prve varijable\n");
scanf("%d",&a);
while (uvjet){
printf("Upisite vrijednost druge varijable\n");
scanf("%d",&b);
printf("Upisite vrijednost prve varijable\n");
} scanf("%d",&a);
printf("Upisite vrijednost druge varijable\n");
printf("Prva a = %d, druga b= %d. Vrijednost b je manja a.\n",a,b);
scanf("%d",&b);

return 0;
if (b<a)
} uvjet=0;
}

printf("Prva a = %d, druga b= %d. Vrijednost b je manja a.\n",a,b);

return 0;

Drugačiji način postavljanja uvjeta while petlje:

Rješenje - Zadatak 4

// Rjesenje zadataka for - petljom

#include<stdio.h>

int main()
{
int i;
int suma=0;// Rjesenje zadataka while - petljom
#include<stdio.h>
for (i=1;i<=10;i++)
suma=suma+i;
int main()
{ je %d\n", suma);
printf("Suma
int i;
return 0; int suma=0;
}
i=1;
while (i<=10){
suma=suma+i;
i++;
}

printf("Suma je %d\n", suma);

return 0;
}

You might also like