14.5. Napisati program za izračunavanje aritmetičke sredine trocifrenih brojeva sa istim ciframa.
Opis rješenja: Početna vrijednost brojača je br=0 a izraz za kumulativni brojač je br = br + 1; (br++). Provjera se izvodi naredbom if (s == d && d == j) iste cifre. Ako je ispunjen uslov izvodi se uvećanje vrijednosti sume i brojača.
Listing programa:
// 14615003
#include<iostream>
using namespace std;
int main()
{
cout << "Aritmeticka sredina trocifrenih brojeva sa istim ciframa" << endl;
int broj, j, d, s; // deklarisanje varijabli
double asr; // deklarisanje varijabli
int br = 0, suma = 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?
suma = suma + broj; // da, uvecaj vrijednost suma
br = br + 1; // da, uvecaj vrijednost brojaca
}
}
asr = (double)suma / br; // izracunaj asr
cout << "Aritmeticka sredina prema uslovu: " << asr << endl; // ispis
return 0;
}
II verzija suma += broj, brojac: br++
// 14615003
#include<iostream>
using namespace std;
int main()
{
cout << "Aritmeticka sredina trocifrenih brojeva sa istim ciframa" << endl;
int broj, j, d, s; // deklarisanje varijabli
double asr; // deklarisanje varijabli
int br = 0, suma = 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?
suma += broj; // da, uvecaj vrijednost suma: suma = suma + broj
br++; // da, uvecaj vrijednost brojaca,br = br + 1
}
}
asr = (double)suma / br; // izracunaj asr
cout << "Aritmeticka sredina prema uslovu: " << asr << endl; // ispis
return 0;
}
Ispis na ekranu:
Index
|
|