Zadaci C++

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 23

ZADACI C++

SEMINARSKI RAD IZ UVODA U PROGRAMIRANJE

Kandidat

Mentor

SADRAJ
1.

CIKLINA STRUKTURA...................................................................................... 1
1.1.

Zadatak broj 1........................................................................................... 1

1.2.

Zadatak broj 2........................................................................................... 2

1.3.

Zadatak broj 3........................................................................................... 3

1.4.

Zadatak broj 4........................................................................................... 4

1.5.

Zadatak broj 5........................................................................................... 5

1.6.

Zadatak broj 6........................................................................................... 6

1.7.

Zadatak broj 7........................................................................................... 7

1.8.

Zadatak broj 8........................................................................................... 8

1.9.

Zadatak broj 9........................................................................................... 9

1.10.
2.

Zadatak broj 10.................................................................................... 10

LINIJSKA STRUKTURA...................................................................................... 12
2.1.

Zadatak broj 1......................................................................................... 12

2.2.

Zadatak broj 2......................................................................................... 13

2.3.

Zadatak broj 3......................................................................................... 14

2.4.

Zadatak broj 4......................................................................................... 15

2.5.

Zadatak broj 5......................................................................................... 16

3. RAZGRANATA STRUKTURA................................................................................ 17
3.1.

Zadatak broj 1......................................................................................... 17

3.2.

Zadatak broj 2......................................................................................... 18

3.3.

Zadatak broj 3......................................................................................... 19

3.4.

Zadatak broj 4......................................................................................... 20

3.5.

Zadatak broj 5......................................................................................... 21

1. CIKLINA STRUKTURA
1.1.

Zadatak broj 1

Suma prvih 5 prirodnih brojeva.


Kod programa:

Dijagram toka:

#include <iostream>
using namespace std;
int main()
{
int suma=0;
for(int i=1;i<=5;++i)
suma+=i;
cout<<"Suma: "<<suma<<endl;
system("Pause");
return 0 ;
}

Tekstualni algoritam:
1.
2.
3.
4.
5.
6.

1.2.

postaviti poetnu vrijednost sume (suma=0;)


i = 1 poetna vrijednost kontrolne varijable i
formirati novu vrijednost sume (s+=i;)
uveaj i ++i
ako je i <= 5 vrati se na korak 3
ispisati izraunatu vrijednost sume cout<<"Suma: "<<suma<<endl;

Zadatak broj 2

Napisati program za ispis prvih n prirodnih brojeva unazad.


3

Kod programa:

Dijagram toka:

#include<iostream>
using namespace std;

int main()
{
int n;
cin>>n;
for(int i=n; i>=1; --i)
{
cout<<i<<endl;
}
system("PAUSE");
return 0;
}

Tekstualni algoritam:
1. uitati od kog broja se izvodi ispis (n)
2. za i = 20 do 5 unazad; radi
ispis vrijednosti promjenljive i

1.3.

Zadatak broj 3

Napisati program za izraunavanje proizvoda od 1 do 10.


Kod programa:

Dijagram toka:
4

#include <iostream>
using namespace std;
int main()
{
int i;
double p;
p=1;
for(i=1; i<=10; i++)
p=p*i;
cout<<"Proizvod brojeva od 1 do 10 iznosi: "<<p<<endl;
system("pause");
return 0;
}

Teksutalni algoritam:
1. poetna vrijednost proizvoda (p=1)
2. za i = 1 do 10 radi
formirati novi proizvod (p=p*i)
3. ispisati izraunati proizvod

1.4.
Zadatak broj 4
Izraunati sumu 10 uitanih bojeva sa tastature.

Kod programa:

Dijagram toka:

#include <iostream>
#include <cmath>
using namespace std;
main()
{
int i;
double a, s;
s = 0;
for (i=1; i<=10; i++) {
cout<<("Ukucaj ")<<" "<<i<<" . broj "<<endl;
cin>>a;
s = s + a;
}
cout<<("Suma je: ")<<s<<endl;
system("PAUSE");
return 0;
}
Tekstualni algoritam:
1. poetna vrijednost sume (s=0)
2. za i = 1 do 10 radi
uitati broj sa tastature (a)
uveati sume (s=0) i broja (br=br+1)
3. ispisati izraunatu vrijednost sume(a)

1.5.

Zadatak broj 5

Nai sumu brojeva u intervalu od a do b djeljivih sa 5.


Kod programa:

Dijagram toka:
6

#include <iostream>
#include <cmath>
using namespace std;
main()
{
int i,a,b,s;
cout<<"Od broja: "<<endl;
cin>>a;
cout<<"Do broja: "<<endl;
cin>>b;
s=0;
for(i=a; i<=b; i++)
if(i % 5 == 0)
s=s+i;
cout<<"Suma djeljivih sa 5 u intervalu od a do b je: "<<s<<endl;

system("PAUSE");
}
Tekstualni algoritam:
1. uitati granice intervala (a, b)
2. poetna vrijednost sume (s=0)
3. za i = a do b radi
ako je i dijeljivo sa 5 tada
formirati novu sumu (s=s+i)
4. Ispisati granice (a, b) i izraunatu vrijednost sume
1.6.

Zadatak broj 6

Program za ispis proizvoda brojeva od 1 do n.


Kod programa:

Dijagram toka:
7

#include <iostream>
using namespace std;

int main()
{
int i, p, n;
cout << "Unesite vrijednost za n: "; cin >> n;
p = 1;
i = 1;
while (i<=n)
{
p = p * i;
i++;
}
cout << "Proizvod brojeva od 1 do "<< n << " iznosi: "
<< p << endl;
system("PAUSE");
return 0;
}
Tekstualni dijagram:
1. uitati do kog broja se izvodi sabiranje (n)
2. poetna vrijednost proizvoda (p=1)
3. poetna vrijednost za i (i = 1)
4. dok je i manje ili jednako n (i<=n) prei na slijedee korake; inae idi na nastavak
programa (korak 8)
5. formirati novi proizvod (p=p*i)
6. uveaj vrijednost kontrolne promjenljive (i=i+1)
8

7. idi na korak 4
8. ispisati izraunatu vrijednost proizvoda p, granica (n)

1.7.
Zadatak broj 7
Ispis brojeva unazad ( od 20 do 5 ) .
Kod programa:

Dijagram toka:

#include<iostream>
using namespace std;
int main()
{
int i=20;
while(i>=5)
{
cout<<i<<endl;
i--;
}
system("PAUSE");
return 0;
}
Tekstualni dijagram;
1. poetna vrijednost za i (i = 20)
2. dok je i vee ili jednako 5 (i>=5) prei na slijedee
korake; inae idi na nastavak programa korak 6
3. ispisati vrijednost promjenljive
4. umanji vrijednost kontrolne promjenljive (i=i-1)
5. idi na korak 2
6. kraj
1.8.

Zadatak broj 8

Proizvod parnih brojeva u razmaku od a do b .


Kod programa:

Dijagram toka:
9

#include <iostream>
using namespace std;
int main(){
int i,a,b;
float p;
cout << "Upisi prvi broj A : " ;
cin >> a;
cout << "Upisi drugi broj B : " ;
cin >> b;
p = 1;
i = a;
do
{
if(i % 2 == 0)
p = p * i;
i++;
} while(i<=b);
cout << "Proizvod parnih brojeva brojeva je " << p <<
endl;
system("PAUSE");
return 0;
}

Text dijagram;
1.
2.
3.
4.
5.
6.

uitati granice intervala (a, b)


poetna vrijednost proizvoda (p=1)
poetne vrijednosti za i (i =a)
poetak petlje
ako je i djeljivo sa 2 formirati novi proizvod (p=p*i)
uveaj vrijednost kontrolne promjenljive (i=i+1)
10

7. ako je promjenljiva i vea od b izai iz petlje inae idi na korak 4


8. ispisati izraunati

1.9.
Zadatak broj 9
Broji parne brojeve u razmaku izmeu k i n . ( do while)
Kod programa:

Dijagram toka:

#include <iostream>
using namespace std;
int main()
{
int br,i,n,k;
cout<<"Od broja : ?"<<endl;
cin>>k;
cout<<"Do broja: ?";
cin>>n;
br=0;
i=k;
do
{
if(i % 2 == 0)
br=br+1;
i++;
} while(i<=n);
cout<<"Takvih brojeva ima: "<<br<<endl;
system("pause");
return 0;
}
Text dijagram:
11

1.
2.
3.
4.
5.
6.
7.
8.

uitati granice intervala (k,n)


poetna vrijednost brojaa (br =0)
poetne vrijednosti za i (i = k)
poetak petlje
ako je i djeljivo sa 2 uveati vrijednost brojaa (br=br+1)
uveaj vrijednost kontrolne promjenljive (i=i+1)
ako je promjenljiva i vea od n izai iz petlje inae idi na korak 4
ispisati izraunatu vrijednost brojaa (br)

1.10.

Zadatak broj 10

Suma svih brojeva djeljivih sa 7 i 3 u intervalu od 1 do n .


Kod programa:

Dijagram toka:

#include <iostream>
using namespace std;
int main()
{
int s = 0,i, n;
cout << "Unesi krajnji broj " ;
cin >> n;
s = 0;
i = 1;
do
{
if (i % 7 == 0)
{
if (i % 3 == 0)
s = s + i;
}
i++;
}while (i<= n);
12

cout << "Suma svih brojeva djeljivih sa 7 je " << s << endl;
system("PAUSE");

return 0;
}

Text algoritam:
1.
2.
3.
4.
5.
6.
7.
8.

uitati do kog broja se izvodi sabiranje (n)


poetna vrijednost sume (s=0)
poetne vrijednosti za i (i = 1)
poetak petlje
ako je i djeljivo sa 3 i sa 7 formirati novu sumu (s=s+i)
uveaj vrijednost kontrolne promjenljive (i=i+1)
ako je promjenljiva i vea od n izai iz petlje inae idi na korak 4
ispisati izraunatu vrijednost sumu s

2. LINIJSKA STRUKTURA
2.1.
Zadatak broj 1
U banci imate odreenu sumu novca. Godinja kamata je 17%. Pod predpostavkom da nita
ne podiete u banci, koliko ete novaca imati nakon tri godine.
Kod programa:

Dijagram toka:

13

#include <iostream>
using namespace std;
int main (void)
{
int Suma1;
long double Suma2;
cout<<"Unesi kolicinu novca: ";
cin>>Suma1;
Suma2=(((Suma1*1.17)*1.17)*1.17);
cout<<"Kolicina novca nakon 3 godine: "<< Suma2 << endl;

system("PAUSE");
return 0;
}

Tekstualni dijagram:
1. ulaz - uitati: "Koliku sumu novca imate u banci?"; x
2. obrada - izraunati:
y=x/100*17
z=y*3+x
3. izlaz - ispisati: "Nakon tri godine vasa suma iznosi:"; z

2.2.

Zadatak broj 2

Program koji vrijeme uitano u satima, minutama i sekundama izraunava i ispisuje u


sekundama.
Kod programa:

Dijagram toka:

#include <iostream>
14

using namespace std;


int main (void)
{
int Sat, Minut, Sekund, Sekund2;
cout << "Unesite sate: ";
cin >> Sat;
cout << "Unesite minute: ";
cin >> Minut;
cout << "Unesite sekunde: ";
cin >> Sekund;

Sekund2 = Sat*3600 + Minut*60 + Sekund;


cout << "Vrijeme izrazeno u sekundama: " << Sekund2 <<
endl;

system("PUASE");
return 0;
}
Textualni dijagram;
1. ulaz - uitati: h , m , s
2. obrada - izraunati: S = h * 3600 + m * 60 + s
3. izlaz - ispisati: h , m , s, S

2.3.
Zadatak broj 3
Program u koji unesemo dvocifreni broj a on nam izrauna sumu cifara tog broja.
Kod programa:

Dijagram toka:

#include <iostream>
#include <cstdlib>
15

using namespace std;


int main() {
int x, y, a, s;
cout<<"Unesi dvocifren broj: ";
cin>>a;
system("CLS");
y = a % 10;
x = a / 10;
s = x + y;
cout<<"Broj je "<<a<<" "<<"Suma je"<<s<<endl;
system("PAUSE");
return 0 ;
}
Tekstualni dijagram;
1. ulaz - uitati: "broj=", a,
2. obrada - izraunati:
x = INT(a/10)
y = a MOD 10
c = x+y
3. izlaz - ispisati: "broj=", a, "suma=", s

2.4.

Zadatak broj 4

Program izraunava kvadrat unesenog broja.


Kod programa:

Dijagram toka:

#include<iostream>
16

using namespace std;

int main()
{
int broj;
cout<<"Unesi broj: ";
cin>>broj;
cout<<endl<<"Kvadrat unesenog broja iznosi:
"<<broj*broj<<endl;
system("Pause");
return 0;
}

Tekstualni dijagram;
1. ulaz - uitati: a
2. obrada - izraunati:
x=a2
3. izlaz - ispisati: a, x

2.5.
Zadatak broj 5
Program koji izraunava aritmetiku sredinu tri unesena broja preko tastature.
Kod programa:

Dijagram toka;

#include<iostream>
using namespace std;
17

int main()
{
int a,b,c;
cout<<"Unesi prvi broj: ";
cin>>a;
cout<<"Unesi drugi broj:";
cin>>b;
cout<<"Unesi treci broj:";
cin>>c;
int suma=a+b+c;
cout<<"Aritmeticka sredina unesenih brojeva iznosi: "<<(double)suma/3<<endl;
system("PAUSE");
return 0;
}
Tekstualni dijagram;
1. ulaz - uitati: a, b, c
2. obrada - izraunati:
x=(a+b+c)/3
3. izlaz - ispisati: a, b, c, x

3. RAZGRANATA STRUKTURA
3.1.

Zadatak broj 1

18

Ispisuje recipronu vrijednost unesenog broja, u sluaju da je to 0 , ispisuje uporenje


djeljenje sa nulom.
Kod programa:

Dijagram toka:

# include <iostream>
using namespace std;
main()
{
float n;
cout<<"Unesite broj: "<<endl;
cin>>n;
if (n==0)
cout<<"Djeljenje sa nulom"<<endl;
else
cout<<"Reciprocna vrijednost je:
"<<1/n<<endl;
system("PAUSE");
}
Tekstualni dijagram:
1. Ulaz: x
2. Logiki uslov: x = 0
Istinit /TRUE/: Ispis "Dijeljenje sa nulom je nemoguce"
Laan /FALSE/: Ispis "Reciprocna vrijednost je"; 1 / x

3.2.
Zadatak broj 2
Od dva uitana broja , koja mi unesemo preko tastature(a i b) program nadje manji broj
( min).
Kod programa:

Dijagram toka:

19

#include <iostream>
#include <cmath>
using namespace std;
main()
{
double a,b,min;
cout<<("Unesite dva broja: ")<<endl;
cin>>a>>b;

if (a > b)
{
min=b;
}
else
{
min=a;
}
cout<<"Od brojeva "<<a<<" i "<< b<<endl;
cout<<"manji je "<< min<<endl;

system("PAUSE");
return 0;
}

Tekstualni dijagram:
1. Ulaz: a, b

20

2. Logiki uslov: a > b


Istinit /TRUE/: min = b
Laan /FALSE/: min = a
3. Izlaz: "Od brojeva:"; a; b;"Manji je:"; min

3.3.

Zadatak broj 3.

Program za odreivanje apsolutne vrijednosti broja.


Kod programa:

Dijagram toka:

#include <iostream>
#include<cmath>
using namespace std;
main ()
{
int broj,y;
cout<<"Unesite neki broj:"<<endl;
cin>>broj;
if(broj>=0)
y=broj;
else
y=-broj;
cout<<"Apsolutna Vrijednost broja je:"<<y<<endl;
system("pause");
return 0;
}
Tekstualni dijagram:
1. Ulaz: a

21

2. Logiki uslov: a >= 0


Istinit /TRUE/: apsa = a
Laan /FALSE/: apsa = -a
3. Izlaz: apsa

3.4.

Zadatak broj 4

Program koji odreiva parnost broja, onog kojeg mi unesemo preko tastature.
Kod programa:

Dijagram toka:

#include <iostream>
#include<cmath>
using namespace std;
main ()
{
int x;
cout<<"Unesite variablu x ";
cin>>x;
if (x%2==0)
cout<<"Broj je paran!"<<endl;
else
cout<<"Broj nije paran!"<<endl;
system ("pause>0");
return 0;
}

Tekstualni algoritam:
1. Ulaz: x
22

2. Logiki uslov: x MOD 2 = 0


Istinit /TRUE/: Broj x je paran
Laan /FALSE/: Broj x je neparan

3.5.

Zadatak broj 5

Uitati broj ispisati znak broja prema izrazu:

Kod programa:

Dijagram toka:

#include <iostream>
#include <cmath>
using namespace std;
main ()
{
int x,z;
cout<<"Unesite variablu x ";
cin>>x;
if (x>=0)
z=1;
else
z=0;
cout<<"Vrijednost izraza je,odnosno znak je: " <<z<<endl;
system ("pause");
return 0;
}

Tekstualni dijagram: Ulaz: x

Logiki uslov: X > 0 Istinit /TRUE/: Z = 1 ; Laan /FALSE/: Z = 0 Izlaz: X, Z.

23

You might also like