Răspuns :
Răspuns:
Ia un "max2" care sa fie <= decat max si ai dpua valori din sir printr o singura parcurgere dar mai adaugi un "if".
Adaugi un if ori de cate ori mai vrei inca o valoarezz la urma poti face si o sortare;)
Explicație:
Răspuns:
Buna! Ti-am modificat putin algoritmul astfel incat sa afiseze:
a) primele 2 cele mai mari valori:
#include<iostream>
using namespace std;
int main()
{
int a[20], nr, i;
cout << "Numarul de elemente din sirul a (maximum 20) ";
cin >> nr;
for (i = 0; i < nr; i++)
{
cout << "a[" << i << "] = ";
cin >> a[i];
}
int maxi1, maxi2;
maxi1=a[0];
maxi2=a[0];
for(i=1; i< nr; i++)
if(maxi1<=a[i])
{
maxi2=maxi1;
maxi1=a[i];
}
cout<<"Elementele maxime din sir sunt: "<<maxi1<<" si "<<maxi2;
return 0;
}
b)primele 3 cele mai mari valori:
#include<iostream>
using namespace std;
int main()
{
int a[20], nr, i;
cout << "Numarul de elemente din sirul a (maximum 20) ";
cin >> nr;
for (i = 0; i < nr; i++)
{
cout << "a[" << i << "] = ";
cin >> a[i];
}
int maxi1, maxi2, maxi3;
maxi1=a[0];
maxi2=a[0];
maxi3=a[0];
for(i=1; i< nr; i++)
if(maxi1<=a[i])
{
maxi3=maxi2;
maxi2=maxi1;
maxi1=a[i];
}
cout<<"Elementele maxime din sir sunt: "<<maxi1<<", "<<maxi2<<" si "<<maxi3;
return 0;
}
Explicație:
Sper ca te-am ajutat! Mult succes!
Vă mulțumim că ați vizitat site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Dacă aveți întrebări sau nevoie de asistență suplimentară, nu ezitați să ne contactați. Vă așteptăm cu drag data viitoare și nu uitați să ne adăugați la favorite!