Pentru următoarele probleme descrieţi un algoritm de rezolvare, folosind metodele de descriere cunoscute: a) Este dat un şir din cel mult 100 de numere întregi. Se cere să se aranjeze elementele şirului în ordine crescătoare. b) Este dat un şir din cel mult 100 de numere întregi. Se cere determinarea elementului cu valoare maximă din şir şi a numărului de repetări ale lui printr-o singură parcurgere a şirului
Răspunsuri la întrebare
Răspuns de
0
Iti raspund pe rand :
pentru punctul a) este o sortare - program separat
//Metoda de sortare Bubble Sort
#include <iostream>
using namespace std; int v[1005],n,i,aux; bool ok; int main() { cin>>n; for(i=1;i<=n;i++) cin>>v[i]; do { ok=true; for(i=1;i<n;i++) if(v[i]>v[i+1]) { aux=v[i]; v[i]=v[i+1]; v[i+1]=aux; ok=false; } } while (!ok); for(i=1;i<=n;i++) cout<<v[i]<<" "; return 0; }
pentru punctul b - problema separata
#include <iostream>
using namespace std;
int i, n, x, ap, maxx;
int main()
{
cin >> n;
for(i = 1; i <= n; i ++)
{
cin >> x;
if(x > maxx) maxx = x, ap = 1;
else if(x == maxx) ap ++;
}
cout << maxx << " " << ap;
return 0;
}
pentru punctul a) este o sortare - program separat
//Metoda de sortare Bubble Sort
#include <iostream>
using namespace std; int v[1005],n,i,aux; bool ok; int main() { cin>>n; for(i=1;i<=n;i++) cin>>v[i]; do { ok=true; for(i=1;i<n;i++) if(v[i]>v[i+1]) { aux=v[i]; v[i]=v[i+1]; v[i+1]=aux; ok=false; } } while (!ok); for(i=1;i<=n;i++) cout<<v[i]<<" "; return 0; }
pentru punctul b - problema separata
#include <iostream>
using namespace std;
int i, n, x, ap, maxx;
int main()
{
cin >> n;
for(i = 1; i <= n; i ++)
{
cin >> x;
if(x > maxx) maxx = x, ap = 1;
else if(x == maxx) ap ++;
}
cout << maxx << " " << ap;
return 0;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Geografie,
8 ani în urmă
Franceza,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă