Răspuns :
Greselile se afla aici :
maxi=n;
mini=n;
Incearca sa testezi codul tau pentru :
4
2 1 3 2
O sa afiseze 5 deoarece considera maximul 4 (gresit ) si minimul 1 (corect)
sau pentru :
4
12 10 33 21
O sa afiseze 37 deoarece considera maximul 33 ( corect) si minimul 4 (gresit)
Maximul trebuie initializat cu cea mai mica valoare posibila (in functie de datele de intrare). In cazul acestei probleme (vedem ca sunt numere naturale), maxi trebuie initializat cu 0. Minimul trebuie initializat cu cea mai mare valoare posibila (in functie datele de intrare). Cele n numere citite vor avea cel mult 6 cifre. Mini trebuie sa ia valoarea 999999.
O alta varianta este sa citesti in afara structurii repetitive primul numar (variabila ji din programul tau ) si apoi sa initializezi maxi si mini cu aceasta valoare.
Mai jos iti prezint o posibila rezolvare:
#include <iostream>
using namespace std;
int main() {
int n, maxi = 0, mini = 999999, a;
cin>>n;
for(int i = 0; i < n; i++) {
cin >> a;
if(a > maxi)
maxi = a;
if(a < mini)
mini = a;
}
cout << maxi + mini;
}
maxi=n;
mini=n;
Incearca sa testezi codul tau pentru :
4
2 1 3 2
O sa afiseze 5 deoarece considera maximul 4 (gresit ) si minimul 1 (corect)
sau pentru :
4
12 10 33 21
O sa afiseze 37 deoarece considera maximul 33 ( corect) si minimul 4 (gresit)
Maximul trebuie initializat cu cea mai mica valoare posibila (in functie de datele de intrare). In cazul acestei probleme (vedem ca sunt numere naturale), maxi trebuie initializat cu 0. Minimul trebuie initializat cu cea mai mare valoare posibila (in functie datele de intrare). Cele n numere citite vor avea cel mult 6 cifre. Mini trebuie sa ia valoarea 999999.
O alta varianta este sa citesti in afara structurii repetitive primul numar (variabila ji din programul tau ) si apoi sa initializezi maxi si mini cu aceasta valoare.
Mai jos iti prezint o posibila rezolvare:
#include <iostream>
using namespace std;
int main() {
int n, maxi = 0, mini = 999999, a;
cin>>n;
for(int i = 0; i < n; i++) {
cin >> a;
if(a > maxi)
maxi = a;
if(a < mini)
mini = a;
}
cout << maxi + mini;
}