Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- case ISAFTER:
- if (q.isEmpty()) {
- cout << "Queue is Empty. Something can't be after nothing. :P\n";
- }
- else {
- int user_after, user_data = 0;
- /*else if (q.isAfter() == true)
- cout << */
- cout << "Please enter your first integer value.\nThis value [1], if found, will check if the second entered value is after it:";
- cin >> user_after;
- cout << endl;
- //QueueNode( user_after ) a;
- cout << "Please enter your second integer value.\nAssuming [1] was found, isAfter will check if this value [2] is after [1]: ";
- cin >> user_data;
- cout << endl;
- //QueueNode( user_data ) d;
- if ( q.isAfter( user_data, user_after ))
- cout << user_data << " is after " << user_after << "in the Queue.\n";
- else
- cout << user_data << " was not found after a " << user_after << "in the Queue.\n";
- }
- break;
- //////////////////////////////////////////// isAfter() Implementation ////////////////////////////////////////
- template <class Object>
- bool Queue<Object>::isAfter( Object data, Object after ) const {
- QueueNode<Object> *findsAfter = header;
- QueueNode<Object> *findsData = header;
- //checks for an empty list
- /*if( header->getNext() == NULL ) {
- cout << "Queue is Empty. Something can't be after nothing. :P\n";
- return(false);
- }*/
- do {
- findsAfter = findsAfter->getNext();
- findsData = findsData->getNext();
- if( findsAfter->getElement() == after ) {
- do{
- findsData = findsData->getNext();
- if( findsData->getElement() == data )
- return(true);
- else if( findsData->getElement() == NULL )
- return(false);
- else
- findsData = findsData->getNext();
- } while ( findsData->getElement() != NULL );
- }
- } while( findsAfter->getElement() != NULL );
- cout << "Value [1] was not found in the Queue.\n";
- return(false);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement