Studentii dintr-o facultate vor să facă un top al celor mai bune 10 melodii pentru fiecare săptămană. Ajutaţi-i să
realizeze un program prin care se introduc n date de forma:
titlu melodie
interpret
număr puncte acumulate
număr puncte primite
Sa se afiseze primele 10 titluri, in ordinea descrescătoare a punctelor
(c++ de rezolvat cu ajutorul tipului de date struct)
Răspunsuri la întrebare
Răspuns de
0
#include<iostream.h>
using namespace std ;
struct melodie { char titlu[20] , interpret[20];
int total , puncte ; }v[100],aux;
//total ->numarul total de puncte acumulate
//puncte -> numarul de puncte de saptamana aceasta
int main(){int n,i,j;
cout<<"Nr melodii : " ;
cin>>n;
for(i=1;i<=n;i++){
cin.get(v[i].titlu,20);
cin.get(v[i].interpret,20);
cin>>v[i].total;
cin>>v[i].puncte; }
for(i=1;i<n;i++) //Sortam descrescator
for(j=i+1;j<=n;j++)
if(v[i].puncte<v[j].puncte ){
aux=v[i];
v[i]=v[j];
v[j]=aux;}
if(n<=10)
for(i=1;i<=n ;i++)
cout<<v[i].titlu<<' ';
else
for(i=1;i<=10;i++)
cout<<v[i].titlu<<' ';}
using namespace std ;
struct melodie { char titlu[20] , interpret[20];
int total , puncte ; }v[100],aux;
//total ->numarul total de puncte acumulate
//puncte -> numarul de puncte de saptamana aceasta
int main(){int n,i,j;
cout<<"Nr melodii : " ;
cin>>n;
for(i=1;i<=n;i++){
cin.get(v[i].titlu,20);
cin.get(v[i].interpret,20);
cin>>v[i].total;
cin>>v[i].puncte; }
for(i=1;i<n;i++) //Sortam descrescator
for(j=i+1;j<=n;j++)
if(v[i].puncte<v[j].puncte ){
aux=v[i];
v[i]=v[j];
v[j]=aux;}
if(n<=10)
for(i=1;i<=n ;i++)
cout<<v[i].titlu<<' ';
else
for(i=1;i<=10;i++)
cout<<v[i].titlu<<' ';}
Alte întrebări interesante
Matematică,
8 ani în urmă
Chimie,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă