Policz średnią wszystkich komórek w tabeli i wyświetl pozycje komórek, których wartości są ponad średnią (przeciętną). Na podstawie tego kodu (dodać do tego co już jest):
#include #include #include
using namespace std;
const int N = 10;
int main() {
int liczby[N];
int min, max;
srand(time(NULL));
int i=0; do { liczby[i] = rand()%1000 +1 ; i++;
} while (i < N);
i = 0; do { cout<< liczby[i]<<" "; i++;
} while (i < N);
cout << "\n******\n"; i = 0; int poz_min = 0; int poz_max = 0; min = liczby[0]; max = liczby[0]; do { if (liczby[i] < min) { min = liczby[i]; poz_min = i; }
if (liczby[i] > max) { max = liczby[i]; poz_max = i; } i++; } while (i < N);
cout << "Najmniejsza liczba to: " << min << " w komorce " << poz_min +1 < cout << "Najwieksza liczba to: " << max << " w komorce " << poz_max +1 << endl;
Odpowiedź:
Wyjaśnienie:
Oto zmodyfikowany kod, który oblicza średnią wartość komórek w tabeli i wyświetla pozycje komórek, których wartości są ponad średnią:
```cpp
#include <iostream>
#include <ctime>
using namespace std;
const int N = 10;
int main() {
int liczby[N];
int min, max, suma = 0;
srand(time(NULL));
int i = 0;
do {
liczby[i] = rand() % 1000 + 1;
suma += liczby[i];
i++;
} while (i < N);
i = 0;
do {
cout << liczby[i] << " ";
i++;
} while (i < N);
double srednia = static_cast<double>(suma) / N;
cout << "\nSrednia wszystkich liczb: " << srednia << "\n******\n";
i = 0;
int poz_min = 0;
int poz_max = 0;
min = liczby[0];
max = liczby[0];
do {
if (liczby[i] < min) {
min = liczby[i];
poz_min = i;
}
if (liczby[i] > max) {
max = liczby[i];
poz_max = i;
}
if (liczby[i] > srednia) {
cout << "Liczba " << liczby[i] << " w komorce " << i + 1 << " jest wieksza od sredniej.\n";
}
i++;
} while (i < N);
cout << "Najmniejsza liczba to: " << min << " w komorce " << poz_min + 1 << endl;
cout << "Najwieksza liczba to: " << max << " w komorce " << poz_max + 1 << endl;
return 0;
}
```
Wprowadziłem zmiany w kodzie, aby obliczał średnią wartość komórek i wyświetlał pozycje komórek, których wartości są większe od średniej.