structuri

La o staţie de benzină există mai multe maşini caracterizate prin număr, marcă şi culoare. Se cere:
a) Să se determine numărul maşinilor Dacia;
b) Să se ordoneze maşinile după culoare.

#include<iostream.h>
#include<string.h>
#include<conio.h>
typedef struct
{char marca[20],culoare[20],med[20];
 int nr;}masina ;
 masina a[20];
 int n,x,k;
 void citire()
 {int i;
 cout<<"n=";cin>>n;
 for (i=1;i<=n;i++)
 {cout<<"a[i].marca: ";cin>>a[i].marca;
 cout<<"a[i].culoare: ";cin>>a[i].culoare;
 cout<<"a[i].numar: ";cin>>a[i].nr;
    }
 }
 void nr_dacia()
 { int i;
 int nr=0;
 for (i=1;i<=n;i++)
 {x=strcmp(a[i].marca,"dacia");
 if (x==0)   nr=nr+1;}
 cout<<"numarul de masini Dacia este "<<nr<<"\n";
 }
 void sortare()
 { int i,j;masina aux;

 for (i=1;i<=n-1;i++)
  for (j=i+1;j<=n;j++)
    {x=strcmp(a[i].culoare,a[j].culoare);
      if(x>0)
      {aux=a[i];
      a[i]=a[j];
      a[j]=aux;
     }
  }
  for (i=1;i<=n;i++)
    cout<<a[i].culoare<<" "<<a[i].marca<<" "<<a[i].nr<<endl;
 }

void main()
{
citire();
nr_dacia();
sortare();
 }

Pentru evidenţa produselor cosmetice dintr-un depozit, se defineşte o structură cu următoarele informaţii: codul produsului, denumire, preţul produsului. Citiţi informaţiile tuturor produselor şi afişaţi produsele cu noile preţuri (valoarea lui x este 7 dacă codul produsului este mai mic decât 500. Şi 11 în caz contrar). Afişaţi produsele cu cel mai mare preţ după scumpire.

 

#include<iostream.h>
#include<string.h>
#include<conio.h>
typedef struct
{int cod,c,p,pret;
 char den[20];}produse;
 produse a[20];
 int n,i,c,p;
 void citire()
 {
 cout<<"Dati numarul de produse ";cin>>n;
 for (i=1;i<=n;i++)
  {cout<<"codul produsului ";cin>>a[i].cod;
  cout<<"pretul produsului ";cin>>a[i].pret;
  cout<<"denumirea produsului ";cin>>a[i].den;}
 }
 void rezolvare()
 {
 for (i=1;i<=n;i++)
        if(a[i].cod<500) a[i].pret=7;
     else  a[i].pret=11;
 for (i=1;i<=n;i++)
 cout<<"pretul "<<a[i].den<<" este "<<a[i].pret<<"\n";
 cout<<endl;
 for (i=1;i<=n;i++)
 if(a[i].pret==11) cout<<a[i].den<<"\n";
 }
 void main()
 {
 citire();
 rezolvare();
 }

Se citesc de la tastatură numele şi media generală a n elevi. Se cere să se afişeze lista elevilor în ordinea descrescătoare a mediilor.

#include<iostream.h>
#include<string.h>
typedef struct elev{
       char nume[50];
       float medie;
};
elev a[100],aux;
int n;
void citire()
{int i;
cout<<"n=";cin>>n;
for(i=1;i<=n;i++)
{cout<<"a[i].nume: ";cin>>a[i].nume;
cout<<"a[i].medie: ";cin>>a[i].medie;
}
}
void sortare()
{int i,j;
for(i=1;i<n;i++)
{for(j=i+1;j<=n;j++)
if(a[i].medie<a[j].medie)
          {aux=a[i];
          a[i]=a[j];
          a[j]=aux;
          }
}
}
void afisare()
{int i;
for(i=1;i<=n;i++)
cout<<a[i].nume<<" "<<a[i].medie<<endl;

}
void main()
{citire();
cout<<"lista de elevi\n";
afisare();
sortare();
cout<<"dupa sortare\n";
afisare();
}

 

counter for wordpress

View My Stats