14.. Napisati program za izračunavanje proizvoda trocifrenih brojeva sa istim ciframa.
Opis rješenja: Kumulativni proizvod izračunava se sa p =p * broj (ili p *= broj). Provjera se izvodi naredbom if (s == d && d == j) iste cifre. Ako je ispunjen uslov izvodi se uvećanje vrijednosti proizvod.
Listing programa:
// 14613003
#include<iostream>
using namespace std;
int main()
{
cout << "Trocifreni brojevi - Proizvod brojeva sa istim ciframa" << endl;
int broj, j, d, s; // deklarisanje varijabli
double p = 1; // pocetne vrijednost
for (broj=100; broj <= 999; broj++){ // za trocifrene brojeve radi
j = broj % 10; // jedinice
d = (broj / 10);
d = d % 10; // desetice
s = broj / 100; // stotice
if (s == d && d == j) // iste cifre?
p = p * broj; // da, uvecaj vrijednost proizvod
}
cout << "Proizvod: " << p << endl; // ispis
return 0;
}
Ispis na ekranu:
Trocifreni brojevi - Proizvod brojeva sa istim ciframa
Proizvod: 9.2826e+023
II verzija proizvod: p *= broj
// 14613003
#include<iostream>
using namespace std;
int main()
{
cout << "Trocifreni brojevi - Proizvod brojeva sa istim ciframa" << endl;
int broj, j, d, s; // deklarisanje varijabli
int p = 1; // pocetne vrijednost
int exponent = 0; // pocetne vrijednost
for (broj=100; broj <= 999; broj++){ // za trocifrene brojeve radi
j = broj % 10; // jedinice
d = (broj / 10);
d = d % 10; // desetice
s = broj / 100; // stotice
if (s == d && d == j) // iste cifre?
p = (double)p * broj; // nova vrijednost proizvoda
if (p > 1000) { // proizvod veci od 1000?
p = p / 1000; // podijeli proizvod sa 1000
exponent = exponent + 3; // uvecaj eksponet za 3
} else { // proizvod nije veci od 1000
p = p / 10; // podijeli p sa 10
exponent = exponent + 1; // uvecaj eksponet za 1
}
}
}
cout << "Proizvod = " << p << " eksponent = " << exponent << endl; // ispis
return 0;
}
Ispis na ekranu:
Index
|