/******************************************************************************************** Name of Program: Duplicate Sorter v1.0 Name of file: Question2.cpp What the program does: Reads in 20 integers between 10-100 and outputs non-duplicates only. Creator Name: Tom Kralidis Date: December 10, 1998 Miscellaneous: Uses user entered arrays, for, sorts, etc. ********************************************************************************************/ #include #include int main(void) { int number[21],num[11]; int DupNum,ReStart=1,InputNum; int arrayPlace,size,arrayHold; char UserDecision; while(ReStart) // End of program looper { for ( arrayPlace=0; arrayPlace<=20; arrayPlace++ ) { number[arrayPlace] = NULL; } size = 1; clrscr(); cout << "Enter 20 integers between 10 and 100\n" << endl; cout << "Only non-duplicate numbers will be printed\n\n"; while ( size <= 20 ) // Continues until while condition of 20 is met { cout << "Enter integer " << size << ":" << endl; cin >> InputNum; if ( InputNum <= 100 && InputNum >= 10 ) // Logical AND { number[size] = InputNum;//Checks for duplication size++; } else { cout << "Oops, enter another integer between 10-100 please:" << endl; } } cout << "\nHere are the non-duplicated integers:\n"; for( arrayPlace=1; arrayPlace<20; arrayPlace++ ) //sort { for( arrayHold = 1; arrayHold < 20; arrayHold++ ) { if ( number[arrayHold] > number[arrayHold + 1] ) { InputNum = number[arrayHold]; number[arrayHold] = number [arrayHold+1]; number[arrayHold+1] = InputNum; } } } //program now does a search for duplicates for ( arrayPlace = 1; arrayPlace <= 20; arrayPlace++ ) { DupNum=0; for( arrayHold = 1; arrayHold <= 20; arrayHold++ ) { if ( arrayPlace != arrayHold ) { if ( number[arrayHold] == number[arrayPlace]) { DupNum++;//increment duplicate counter if (DupNum > 1 ) //Kills subsequent duplicates number[arrayHold] = NULL; } } } if ( ! (DupNum % 2 ) ) { if ( number[arrayPlace] != NULL ) cout << number[arrayPlace] << endl; } } //User proceed option cout << "\nContinue?\n\t[y] Yes\n\t[n] No\n\t" << endl; cin >> UserDecision; if ( UserDecision =='y' || UserDecision == 'Y') // Logical OR ReStart = 1; else if ( UserDecision =='n' || UserDecision == 'N') ReStart = 0; } clrscr(); cout <<"\n\nTom Kralidis\ttommy@storm.ca\n "<< endl; return 1; }