Documente Academic
Documente Profesional
Documente Cultură
Chisinau 2013
1. Formarea i lucrul cu liste dinamice n limbajele C++, Pascal Formarea unei liste FIFO; efectuarea operaiilor de adugare, inserare, eliminare a elementelor; parcurgerea listei. Formarea unei liste FILO; efectuarea operaiilor de adugare, inserare, eliminare a elementelor; parcurgerea listei.
Problema 1 // FIFO (Cozi) #include<iostream> using namespace std; int FIFO[100], // lista peak=0, // virful listei tail=0; // coada listei
void add_node(){//functia de adaugare a unui nod cout<< "\nValoarea nodului : " << tail << " = "; cin>> FIFO[tail]; // se introduce valoarea nodului tail++; // pozitia cozii cu o unitate la dreapta }
voiddel_node(){// functia de stergere a unui nod if(peak < tail){ //daca virful este mai mic decit coada cout<< "Nodul " << peak << " cu valoarea = " << FIFO[peak] << " a fost sters !\n"; FIFO[peak]=0; // se goleste valoarea nodului peak++; // virful stivei se misca spre dreapta cu o unitate } else cout<< "\n\tLista este vida !";
int main(){ cout<<"mini HELP: Activitate = \n\t\t\tadd(adauga nod),\n\t\t\tdel(sterge nod),\n\t\t\tstop(finiseazaactivitati)."; cout<< "\n\nActivitate: "; char t[3]; while(cin>> t){ if(!strcmp(t, "add")) // daca s-a introdus "add" add_node(); // se adauga nod
else if(!strcmp(t, "del")) //daca s-a introdus "del" del_node(); // se sterge nod else // altfel break; // terminaactivitatea cout<< "\n\nActivitate: "; } cout<< "Listafinala: "; for(inti=peak; i<tail; i++) // ciclu de afisare a listei cout<< FIFO[i] << " "; cout<< "\n\n\n";
system("pause"); }
Problema 2 #include<iostream> Using namespace std; int FILO[100], // lista peak=0; // virfulstivei
voidadd_node(){ //functia de adaugare a unui nod cout<< "\nValoare anodului : " << peak << " = "; cin>> FILO[peak]; // se introduce valoarea nodului peak++; // virful stivei cu o pozitie la dreapta }
voiddel_node(){ // functia de stergere a unui nod if(peak>0){ // daca stiva nu este vida peak--; //virful cu o pozitie la stinga cout<< "Nodul " << peak << " cu valoarea = " << FILO[peak] << " a fost sters !\n"; FILO[peak]=0; // se sterge nodul } else
int main(){ cout<<"mini HELP: Activitate = \n\t\t\tadd(adauga nod),\n\t\t\tdel(sterge nod),\n\t\t\tstop(finiseazaactivitati)."; cout<< "\n\nActivitate: "; char t[3]; while(cin>> t){ if(!strcmp(t, "add")) add_node(); else if(!strcmp(t, "del")) del_node(); else break; cout<< "\n\nActivitate: "; } cout<< "Listafinala: "; for(inti=0; i<peak; i++) cout<< FILO[i] << " "; cout<< "\n\n\n";
system("pause"); }