Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- struct pitici{
- float inaltime;
- int greutate;
- };
- pitici v[50];
- int n;
- using namespace std;
- void citire(){
- cout<<"Scrie numarul de pitici:";
- cin>>n;
- for(int i=0;i<n;i++)
- {
- cout<<"Scrie inaltimea piticului "<<i+1<<" :";
- cin>>v[i].inaltime;
- cout<<"Scrie greutatea piticului "<<i+1<<" :";
- cin>>v[i].greutate;
- }
- }
- int prim(int x){
- for(int i=2;i<x/2;i++)
- if(x%i==0)
- return 0;
- return 1;
- }
- void g_prim(){
- cout<<endl;
- for(int i=0;i<n;i++)
- if(prim(v[i].greutate))
- cout<<v[i].inaltime<<","<<v[i].greutate<<endl;
- }
- void prieteni(){
- cout<<endl;
- for(int i=0;i<n;i++)
- for(int j=0;j<n;j++)
- if(v[i].greutate<v[j].greutate)
- cout<<v[i].inaltime<<","<<v[i].greutate<<"-->"<<v[j].inaltime<<","<<v[j].greutate<<endl;
- }
- void groapa(){
- int m,aux,min,i,j;
- float s=0,aux2;
- cout<<endl;
- cout<<"Scrie adancimea:";cin>>m;
- //sorteaza descrescator
- for(i=0;i<n;i++)
- for(j=0;j<n;j++)
- if(v[i].greutate<v[j].greutate)
- {
- aux=v[i].greutate;
- v[i].greutate=v[j].greutate;
- v[j].greutate=aux;
- aux2=v[i].inaltime;
- v[i].inaltime=v[j].inaltime;
- v[j].inaltime=aux2;
- }
- //cautam cel mai slab pitic care greut numar prim
- min=999;
- aux=0;
- /*!for(i=0;i<n;i++)
- s+=v[i].inaltime;*/
- /*!if(v[i].greutate<min&&prim(v[i].greutate)){
- aux=i;
- min=v[i].greutate;
- }*/
- //s=v[aux].inaltime;
- //cout<<aux<<endl;
- i=n-1;
- while(s<m){
- s+=v[i].inaltime;
- i--;
- }
- cout<<v[i].inaltime<<","<<v[i].greutate<<endl;
- i++;
- while(s>=m&&i>0){
- cout<<v[i].inaltime<<","<<v[i].greutate<<endl;
- s-=v[i].inaltime;
- i++;
- }
- }
- int meniu(){
- int optiune;
- cout<<endl;
- cout<<"+++++++++++++++++++++"<<endl;
- cout<<"1) Prim "<<endl;
- cout<<"2) Prieten "<<endl;
- cout<<"3) Groapa "<<endl;
- cout<<"0) Iesire "<<endl;
- cout<<"+++++++++++++++++++++"<<endl;
- cout<<"Scrie optiunea ta:";
- cin>>optiune;
- switch(optiune){
- case 1:
- cout<<"PRIMI:"<<endl;
- g_prim();
- return 1;
- break;
- case 2:
- cout<<"Prieteni:";
- prieteni();
- return 1;
- break;
- case 3:
- cout<<"groapa";
- groapa();
- return 1;
- break;
- case 0:
- cout<<"iesire";
- return 0;
- break;
- default:
- cout<<"scrie o optiune din lista";
- }
- }
- int main(){
- citire();
- while(meniu());
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment