Documente Academic
Documente Profesional
Documente Cultură
5
Tema: Liste liniare
Scopul: utilizarea listelor liniare simplu înlănțuite (create manual)
pentru scrierea programelor în limbajul de programare C++.
Sarcini
Scrieți un program care permite utilizatorului să selecteze unul din punctele meniului
(crearea listei liniare din structuri; afișarea conținutului listei; adăugarea datelor în listă;
modificarea datelor din listă; eliminarea datelor din listă; căutarea datelor în listă
conform căruiva criteriu; sortarea datelor din listă; ieșirea din program ș.a.). Tema, pe
baza căreia trebuie să creați lista liniară este aceiași ca și la lucrarea de laborator nr. 3.
#include <iostream>
#include <string>
struct TehnicaCalcul {
int nr;
std::string denumire;
std::string model;
float pret;
int anEditare;
std::string tara;
struct Nod {
TehnicaCalcul tehnica;
Nod* urmator;
class Lista {
private:
Nod* primulNod;
public:
Lista() : primulNod(nullptr) {}
void afiseazaLista() {
Nod* nodCurent = primulNod;
};
void afisareMeniu() {
std::cout << "1. Adaugare tehnica de calcul in lista" << std::endl;
std::cout << "2. Afisare continut lista" << std::endl;
std::cout << "3. Modificare date in lista" << std::endl;
std::cout << "4. Stergere date din lista" << std::endl;
std::cout << "5. Cautare date in lista conform criteriului" <<
std::endl;
std::cout << "6. Sortare date in lista" << std::endl;
std::cout << "7. Iesire din program" << std::endl;
}
int main() {
Lista listaTehnica;
while (true) {
afisareMeniu();
int optiune;
std::cout << "Introduceti optiunea: ";
std::cin >> optiune;
switch (optiune) {
case 1: {
int nr;
std::string denumire, model, tara;
float pret;
int anEditare;
std::cout << "Introduceti numarul: "; std::cin >> nr;
std::cout << "Introduceti denumirea: "; std::cin >>
denumire;
std::cout << "Introduceti modelul: "; std::cin >> model;
std::cout << "Introduceti pretul: "; std::cin >> pret;
std::cout << "Introduceti anul editarii: "; std::cin >>
anEditare;
std::cout << "Introduceti tara: "; std::cin >> tara;
return 0;
}