Automobile
description
Transcript of Automobile
Automobile
-> In Piata Avram Iancu, la semafor,
asteapta 15 automobile. Acestea se vor citi din fisierul masini.in si vor fi caracterizate de numarul de inmatriculare si culoare.Se cere:
• a) creati stiva cu automobilele;• b) afisati stiva;• c) calculati cate automobile rosii,
albastre si argintii se afla la semafor (pentru fiecare culoare in parte);
• d) scrieti in fisierul auto.out automobilele care nu au numar de cluj ;
• e) cand semaforul se face verde primele k automobile pleaca. Eliminati-le!
-> In Piata Avram Iancu, la semafor, asteapta 15 automobile. Acestea se vor citi din fisierul masini.in si vor fi caracterizate de numarul de inmatriculare si culoare.Se cere:a) creati stiva cu automobilele;b) afisati stiva;c) calculati cate automobile rosii, albastre si argintii se afla la semafor (pentru fiecare culoare in parte);d) scrieti in fisierul auto.out automobilele care nu au numar de cluj ;e) cand semaforul se face verde primele k automobile pleaca. Eliminati-le!
cj 63 tho galben
cj 14 mir albastru
cj 22 tri negru cj 55 amk
verde b 24 kal
argintiu cj 52 orw
argintiu si 24 pro rosu cj 24 vio
argintiu
-> Masini.in:cj 27 ana verde
b 50 abc negru
cj 65 ioa albastru
cj 84 tim rosu
br 64 bic argintiu
cj 94 bia rosu
ar 44 kya negru
• b)Afisarea
stivei
void afisare (nod *varf){ nod *p; p=varf; while (p!=NULL)
{ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 560);cout<<p->loc<<" "<<p->nr<<" "<<p->lit<<" "<<p->cul<<endl;
cout<<"__________________"<<endl;
p=p->urm; }}
• a) Crearea stivei
void creare (nod *&varf){ nod *p; int i,b; char a[10],c[10],d[10]; for (i=1; i<=15; i++)
{f>>a; f>>b; f>>c; f>>d; push (varf,a,b,c,d);
}}
•Masinile care asteapta la semafor:
Exemplul:
cj 27 ana verdeb 50 abc negrucj 65 ioa albastrucj 84 tim rosubr 64 bic argintiucj 94 bia rosuar 44 kya negrucj 63 tho galbencj 14 mir albastrucj 22 tri negrucj 55 amk verdeb 24 kal argintiucj 52 orw argintiusi 24 pro rosucj 24 vio argintiu
Stiva:
cj 24 vio argintiusi 24 pro rosucj 52 orw argintiub 24 kal argintiucj 55 amk verdecj 22 tri negrucj 14 mir albastrucj 63 tho galbenar 44 kya negrucj 94 bia rosubr 64 bic argintiucj 84 tim rosucj 65 ioa albastrub 50 abc negrucj 27 ana verde
• c) Contorizarea culorilor
void culori (nod *varf,int&cont1,int&cont2,int&cont3){ nod *p; p=varf; while (p) { if (strcmp(p->cul,"rosu")==0) cont1++; else if (strcmp(p->cul,"albastru")==0) cont2++; else if (strcmp(p->cul,"argintiu")==0) cont3++; p=p->urm; }}
Masini rosii: 3
Masini albastre: 2
Masini argintii: 4
• d) masinile din afara clujului
void numar (nod *varf){ nod *p; p=varf; while (p) { if (strcmp(p->loc,"cj")!=0)
g<<p->loc<<" "<<p->nr<<" "<<p->lit<<" "<<p->cul<<endl; p=p->urm; }}
In fisierul auto.out:
si 24 pro rosub 24 kal argintiuar 44 kya negrubr 64 bic argintiub 50 abc negru
• e) eliminarea primelor k masini
void pop (nod *&varf){ nod *p; p=varf; varf=varf->urm; delete p;}
de exemplu k=5; se va afisa:
cj 22 tri negrucj 14 mir albastrucj 63 tho galbenar 44 kya negrucj 94 bia rosubr 64 bic argintiucj 84 tim rosucj 65 ioa albastrub 50 abc negrucj 27 ana verde
Au contribuit:Bojan RoxanaBretea enisaChereches LuanaChira LuizaFelecan BiancaRanga Ramona