Download presentation
Presentation is loading. Please wait.
1
Programski jezik C++ - Vježbe - 5. dio
Ak. god. 2017/2018 Doc. Dr. Sc. Marko Maliković
2
Zadatak Napišite program koji će za upisani cijeli broj ispisati koliko puta se u tom broju pojavljuje znamenka 0, koliko puta znamenka 1, koliko puta znamenka 2, ... i koliko puta znamenka 9
3
Rješenje (BEZ UPORABE NIZOVA JER IH JOŠ NISMO RADILI) 1. dio programa:
#include <iostream> using namespace std; int main() { int nula, jedinica, dvojka, trojka, cetvorka, petica, sestica, sedmica, osmica, devetka; nula=0; jedinica=0; dvojka=0; trojka=0; cetvorka=0; petica=0; sestica=0; sedmica=0; osmica=0; devetka=0; int n; cout << "Upisite cijeli broj: "; cin >> n; while (n>0) { switch (n%10){ case 0: nula++;break; case 1: jedinica++;break; case 2: dvojka++;break; case 3: trojka++;break; case 4: cetvorka++;break; case 5: petica++;break; case 6: sestica++;break; case 7: sedmica++;break; case 8: osmica++;break; case 9: devetka++;break; } n=n/10;
4
Rješenje (BEZ UPORABE NIZOVA JER IH JOŠ NISMO RADILI) 2. dio programa:
cout << "Nula ima " << nula << endl; cout << "Jedinica ima " << jedinica << endl; cout << "Dvojki ima " << dvojka << endl; cout << "Trojki ima " << trojka << endl; cout << "Cetvorki ima " << cetvorka << endl; cout << "Petica ima " << petica << endl; cout << "Sestica ima " << sestica << endl; cout << "Sedmica ima " << sedmica << endl; cout << "Osmica ima " << osmica << endl; cout << "Devetka ima " << devetka << endl; return 0; }
5
Zadatak Napišite program koji računa zbroj znamenki za neki cijeli broj
6
Rješenje #include <iostream> using namespace std; int main() { int n, zbroj; zbroj = 0; cout << "Upisite cijeli broj: "; cin >> n; while (n>0) { zbroj = zbroj+(n%10); // Zbroj povečavamo za prvu desnu znamenku n=n/10; // Broj skraćujemo za prvu desnu znamenku } cout << "Zbroj znamenki upisanog broja je " << zbroj << endl; return 0;
7
Zadatak - Tablica množenja -
#include <iostream> using namespace std; int main() { int i, j; for (i = 1; i <= 10; ++i){ for (j = 1; j <= 10; ++j) {cout << i * j;} cout << endl;} return 0; } Međutim, gornji program će kao izlaz dati: Zato jer nismo ni na koji način razdvojili izračunate brojeve
8
Rješenje Što trebamo? Upotrijebiti ćemo manipulator setw()
Trebamo dobiti ispis brojeva u pravilnim stupcima (ne možemo razdvajati brojeve razmacima jer nisu svi brojevi jednake širine) Upotrijebiti ćemo manipulator setw() setw() određuje koliki je najmanji prostor predviđen za ispis podatka koji slijedi u izlaznom toku Varijanta setw(5) određuje da je taj prostor jednak 5 Manipulator setw() je definiran u datoteci iomanip Znači da na početku programa moramo uključiti i datoteku iomanip
9
Zadatak - Tablica množenja -
#include <iostream> #include <iomanip> using namespace std; int main() { int i, j; for (i = 1; i <= 10; ++i){ for (j = 1; j <= 10; ++j) {cout << setw(5) << i * j;} cout << endl;} return 0; } I sada program kao izlaz daje ovo
10
Zadatak Napišite program koji će ispisati tablicu množenja brojeva od 1 do 10 ali u slijedećem obliku: 1
11
Rješenje #include <iostream> #include <iomanip> using namespace std; int main() { int i, j; for (i = 1; i <= 10; ++i){ for (j = 1; j <= i; ++j) {cout << setw(5) << i * j;} cout << endl;} return 0; }
12
Zadatak Napišite program u kojem se računa približna vrijednost broja e (baze prirodnog logaritma) prema slijedećoj formuli: 𝑒= 1 0! + 1 1! + 1 2! + 1 3! + 1 4! +…+ 1 𝑛! +… Petlju za izračunavanje treba ponavljati sve do broja n kojeg upisuje korisnik
13
Zadatak Za prirodni broj d definiran je niz 𝑎 0 = 1, 𝑎 𝑛 +1= 𝑎 𝑛 2 𝑎𝑘𝑜 𝑗𝑒 𝑎 𝑛 𝑝𝑎𝑟𝑎𝑛, 𝑎 𝑛 +𝑑 𝑖𝑛𝑎č𝑒. Pronađite što više brojeva d takvih da postoji prirodni broj n za koji je 𝑎 𝑛 =1
14
Rješenje #include <iostream> #include <conio.h> using namespace std; int main() { int n, a0, a1, a2; bool nadjen_n; for (int d=1;d<=1000;d++) nadjen_n=false; n=1; a0=1; while (nadjen_n==false && n< ) if (a0%2==0) a2=a1; a1=a0/2; a0=a2; } else a1=a0+d; if (a1==1){ nadjen_n=true; cout << "Broj d = " << d << endl; n++; return 0;
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.