14.6.. Aritmetička sredina trocifrenih brojeva čija je suma prve dvije cifre djeljiva sa 3.
Opis rješenja: 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 asr = (double)suma / br; Provjera djeljivosti se izvodi naredbom % tj. if ((s + d) % 3 == 0). Ako je ostatak dijeljenja sa 3 jednak 0 to znači da je suma prve dvije cifre djeljiva sa 3.
Listing programa:
// 14615022
#include <stdio.h>
int main()
{
printf("Aritmeticka sredina trocifrenih brojeva - suma prve dvije cifre djeljive sa 3\n"); // 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
printf("Aritmeticka sredina: %lf", asr); // ispis
return 0;
}
II verzija suma += broj, brojac: br++
// 14615022
#include <stdio.h>
int main()
{
printf("Aritmeticka sredina trocifrenih brojeva - suma prve dvije cifre djeljive sa 3\n"); // 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; // uvecaj sumu
br++; // jos jedan broj
}
}
asr = (double)suma / br; // izracunaj asr
printf("Aritmeticka sredina: %lf", asr); // ispis
return 0;
}
Ispis na ekranu:
Index
|
|