Array بدون تكرار العناصر

– أكتب برنامج يقرأ من المستخدم 10 أرقام ثم أحفظها في ِarray ، ولكن يجب أن لايكرر المستخدم أي رقم يعني أن تكون العناصر مختلفة ، ثم أطبع محتوى الـ array.

الحل:

#include <iostream>
using namespace std;

void main()
{
 int a[10];

 //read first element
   cout << "Enter a number: ";
   cin >> a[0];

 for (int i = 1 , j = 0; i<10; i++, j++)
 {
    cout << "Enter a number :";
    cin >> a[i];

 //validate the input
       for (int r = 1; r <= i; r++)
   {
        if (a[i] == a[i - r]) //if not valid

     do{
          cout << "...wrong input!....\nEnter a number: ";
          cin >> a[i];
       } while (a[i] == a[j]);

   }//end inner for loop

 }//end outer for loop

//print the array content
  for (int i = 0; i<10; i++)
  cout << a[i] << " ";
 
 cout << endl;
 system("pause");
}
Advertisements