Server IP : 172.16.15.8 / Your IP : 18.188.227.108 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/acyurksaitis/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
// CS212 HW #5: hw5.cpp // // Due: March 26, 2008 // // Author: Amy Yurksaitis // // Instructor: Dr. Wang // // Goal: This program will allow the user to input a string, // find a string, print the string list, sort the list // to ascending order, and quit. // // Compile: g++ hw5.cpp -o hw5.out // Run: ./hw5.out ///////////////////////////////////////////////////////////////////////////// #include <iostream> using namespace std; const int MAX = 100; class List { int length; string data[MAX]; public: List () { length = 0; } int Length ( ) const { return length; } bool IsFull ( ) const { return ( length == MAX ); } bool IsEmpty ( ) const { return ( length == 0 ); } void Print ( ) const; void Insert ( string item ) { data[ length ] = item; length ++; } bool IsPresent ( string item ) const { bool done = false; for ( int k=0; k<length && ! done; k++ ) if ( data[k] == item ) done = true; return done; } void SelSort () { 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 List:: Print() const { for(int k=0; k<length; k++) cout<< data[k] << endl; } void menu (); void process ( char, List& ); int main() { List myList; char ch; menu(); cin >> ch; while ( tolower(ch) != 'q' ) { process(ch, myList); menu(); cin >> ch; } getchar(); return 0; } void menu () { cout << "I to insert an string\n"; cout << "F to find an string\n"; cout << "P to print the list\n"; cout << "S to sort the list\n"; cout << "Q to quit the operation\n"; cout << "\nYou choose: "; } void process ( char ch, List& myList ) { string datum; switch ( tolower(ch) ) { case 'i': cout <<"Input a string: "; cin >> datum; myList.Insert(datum); cout << "The list is: " <<endl; myList.Print(); cout << "\n\nType any key to continue .." <<endl; getchar(); break; case 's': cout << "The list is: " << endl; myList.SelSort(); myList.Print(); cout << "\n\nType any key to continue .." <<endl; getchar(); break; case 'p': cout << "The list is: " <<endl; myList.Print(); cout << "\n\nType any key to continue .." <<endl; getchar(); break; case 'f': cout << "Input an item to be found: "; cin >> datum; if ( myList.IsPresent(datum) ) cout << datum << " is in the list.\n"; else cout << datum << " isn't in the list.\n"; cout << "\n\nType any key to continue .." <<endl; getchar(); break; default: cout << "\nInvalid input.\n" ; cout << "\n\nType any key to continue .." <<endl; getchar(); } return; }