103 lines
2.4 KiB
C++
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');
|
|
}
|