Să se scrie un algoritm care citeşte un număr natural n şi afişează mesajul „da” dacă toate cifrele lui n sunt distincte, sau „nu” dacă n nu are toate cifrele distincte. De exemplu, pentru n=37645 se va afişa „da”, iar pentru 23414 se va afişa „nu”.
Răspunsuri la întrebare
Răspuns:
#include <iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int copie = n, v[100], gasit=0, ok = 0;
while(copie!=0)
{
v[ok] = copie % 10;
ok++;
copie /= 10;
}
for(int i=0;i<ok;i++)
{
for(int j=i+1;j<ok-1;j++)
if(v[i] == v[j] && i != j)
{
gasit=1; // am gasit un numar care se repeta
break; /*parasim parcurgerea de la elementul i+1 pana la final daca am gasit cel putin un element care se repeta*/
}
if( gasit == 1 ) /* daca am gasit cel putin un nr repetat nu are rost sa mai parcurgem vectorul */
break;
}
if( gasit == 0 )
cout<<"Da";
else
cout<<"Nu";
}