Dev-C++
Zad. Znaleźć średnią arytmetyczną wszystkich liczb trzycyfrowych, tzn. z przedziału [100, 999]. Wypisać średnią lub komentarz o braku takich liczb.
Tablica jest wypełniana przez użytkownika, rozmiar tablicy dowolny, typ danych można wybrać dowolnie, chyba że kontekst zadania nie pozwala na stosowanie określonych typów.
" Life is not a problem to be solved but a reality to be experienced! "
© Copyright 2013 - 2024 KUDO.TIPS - All rights reserved.
#include <cstdlib>
#include <iostream>
//Copyright <C> by kamas248 September 2010
using namespace std;
int main(int argc, char *argv[])
{
int tab[100]; //inicjalizacja zmiennych
int tab_l;
float wynik = 0;
int l_trzy = 0;
cout << "Podaj, ile liczb wprowadzisz: ";
while(!(cin >> tab_l) || tab_l> 100) { //Weryfikacja wejścia
cin.clear();
cin.ignore(100, '\n');
cout << "\nWprowadzono bledne dane ! Podaj liczbe ponownie: ";
}
cout << "\nPodaj po spacjach te liczby: ";
for (int i=0;i<tab_l;i++) {
while(!(cin >> tab[i])) { //Weryfikacja wejścia i zapisanie tablicy
cin.clear();
cin.ignore(100, '\n');
cout << "\nWprowadzony " << i+1 << " znak nie jest liczba calkowita ! Podaj ponownie ten znak i pozostale: ";
}
}
for (int i=0;i<tab_l;i++) {
if (tab[i] >= 100 && tab[i] <= 999) {
wynik=wynik+tab[i];
l_trzy++;
}
}
if (wynik==0) {
cout << "Brak liczb trzycyfrowych \n";
}
else {
cout.setf(ios_base::fixed); //zaokrąglanie do trzech miejsc po przecinku
cout.setf(ios_base::showpoint);
cout.precision(3);
cout << "\nSrednia arytmetyczna liczb trzycyfrowych wynosi: ";
cout << wynik/l_trzy << "\n";
}
system("PAUSE");
return EXIT_SUCCESS;
}
Liczę na naj ;)