Files
Programutvecklingsmetodik/Linked_List/mainfile.cpp
2026-03-05 13:44:23 +01:00

103 lines
2.4 KiB
C++

/***************************************************/
/* 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');
}