14.6.. Aritmetička sredina trocifrenih brojeva kod kojih je razlika prve dvije cifre djeljiva sa 3.
Opis rješenja: Početna vrijednost sume je suma= 0; a brojča br = 0. Kumulativna suma se izračunava sa suma =suma + broj; a kumulativni brojač se izračunava sa
br = br + 1;. Aritmetička sredina se izračunava na kraju kao as = suma/br; Provjera (u ovom primjeru razlika prve dvije cifre djeljiva sa 3) tj. if ((s - d) % 3 == 0). Ako je ostatak dijeljenja sa 3 jednak 0 to znači da je razlika prve dvije cifre djeljiva sa 3.
Listing programa:
// 14615022
#include<iostream>
using namespace std;
int main()
{
cout << "Aritmeticka sredina trocifrenih brojeva - suma prve dvije cifre djeljive sa 3" << endl; // naslov
int broj, 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
d = (broj / 10);
d = d % 10; // desetice
s = broj / 100; // stotice
if ((s + d) % 3 == 0) { // suma prve dvije cif djeljive sa 3?
suma = suma + broj; // uvecaj sumu
br = br + 1; // jos jedan broj
}
}
asr = (double)suma / br; // izracunaj asr
cout << "Aritmeticka sredina prema uslovu = " << asr << endl; // ispis
return 0;
}
II verzija suma += broj, brojac: br++
// 14615022
#include<iostream>
using namespace std;
int main()
{
cout << "Aritmeticka sredina trocifrenih brojeva - suma prve dvije cifre djeljive sa 3" << endl; // naslov
int broj, 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
d = (broj / 10);
d = d % 10; // desetice
s = broj / 100; // stotice
if ((s + d) % 3 == 0) { // suma prve dvije cif djeljive sa 3?
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
|
|