/***************************************************/ /* LAB 0 I PUMA */ /* CRILLE & ROBIN 971114 */ /***************************************************/ #include "lab_0.h" /***************************************************/ /*SÄKER INMATNING */ /***************************************************/ int mataIn() { char buffer[BUFFERSIZE]; int f; do { cin >> buffer; if (strcmp(buffer,"0") == 0) return 0; else { f = atoi(buffer); if (f!=0) return f; else cout <<"Inget tal, försök igen: "; } }while (!f); } /***************************************************/ /*MENYVAL */ /***************************************************/ void menuItems() { clrscr(); cout <<" 1. Lägg till ett element \n" <<" 2. Ta bort element \n" <<" 3. Sortera \n" <<" 4. Skriv ut alla element \n" <<" 5. Sök efter ett element \n" <<" 6. Kolla om listan är tom \n" <<" 7. Returnera antal element i listan \n" <<" 0. Avsluta \n\n\n" << endl; } /***************************************************/ /*MENU TILL PROGRAMMET */ /***************************************************/ void main() { listClass minLista; listItemType newItem; char val = TRUE; do { menuItems(); cin >> val; switch (val) { case '1' : cout << "skriv in element!\n"; newItem = mataIn(); if(!minLista.newDuplicate(newItem)) minLista.listInsert(newItem); else { cout <<"Elementet finns redan"; getch(); } break; case '2' : int position; cout << "Vilken position vill du ta bort? "; position = mataIn(); if(minLista.posIsOk(position)) minLista.listDel(position); else { cout <<"Posten finns inte..."; getch(); } break; case '3' : minLista.listSort(); cout <<"Listan är sorterad!..."; getch();break; case '4' : minLista.listDisplay();break; case '5' : listItemType soktVarde; cout << "Ange vad du vill söka efter: "; soktVarde = mataIn(); minLista.listSeek(soktVarde);break; case '6' : minLista.listIsItEmpty();break; case '7' : minLista.listAntal();break; case '0' : cout <<"Programmet avslutat"<< endl;break; default: cout <<"Fel val"<< endl; } }while (val != '0'); }