Informatică, întrebare adresată de MeowlessMeea, 9 ani în urmă

Se citesc nr pana la intalnirea lui 0. Afisati cele mai mici 2 valori din cele citite.

Răspunsuri la întrebare

Răspuns de express
0
#include <bits/stdc++.h>
using namespace std;
int n, x, i, min1, min2;
int main()
{
cin >> x;
if(x == 0) {cout << 0 << " " << 0; return 0;}
min1 = min2 = x;
while(x != 0)
{
cin >> x;
if(x != 0 && x < min1) min2 = min1, min1 = x;
 else if(x != 0 && x < min2) min2 = x;
}
cout << min1 << " " << min2;
return 0;
}


MeowlessMeea: merci mult :)
MeowlessMeea: o mica problema.. am verificat programul si daca scriu de exemplu 3, 24,600,500,0 imi afiseaza 3 si 3
express: asa e . Am o alta sursa care este ok:
express: #include <bits/stdc++.h>
using namespace std;
int n, x, i, min1 = INT_MAX, min2 = min1;
int main()
{
cin >> x;
if(x == 0) {cout << 0 << " " << 0; return 0;}
if(x < min1) min1 = x;
while(x != 0)
{
cin >> x;
if(x != 0 && x < min1) min2 = min1, min1 = x;
else if(x != 0 && x < min2) min2 = x;
}
cout << min1 << " " << min2;
return 0;
}
MeowlessMeea: am reusit sa fac si eu un alt algoritm intre timp
MeowlessMeea: merci de ajutor :)
MeowlessMeea: int n,a,b;
Alte întrebări interesante