Ini da doar 60 de puncte
#425 distincte1
Cerinţa
Se citesc de la tastatură trei numere naturale. Să se determine numărul de valori distincte.
Date de intrare
Programul va citi de la tastatură trei numere naturale.
Date de ieşire
Programul va afișa numărul de valori distincte care apar.
Restricţii şi precizări
Numerele citite sunt cuprinse între 0 și 1.000.000.000, inclusiv.
#include
using namespace std;
int main()
{
long long int a,b,c,cnt=0;
cin>>a>>b>>c;
if(a!=b && b!=c)
cnt=3;
if(a!=b && a==c)
cnt=2;
if(a!=c && a==b)
cnt=2;
if(a!=c && a!=b && b==c)
cnt=2;
if(b!=a && b==c)
cnt=2;
if(b!=c && b==a)
cnt=2;
if(b!=c && a!=b && a==c)
cnt=2;
if(c!=b && c==a)
cnt=2;
if(c!=c && c==b)
cnt=2;
if(c!=a && c!=b && a==b)
cnt=2;
cout<
return 0;
}
Răspunsuri la întrebare
Răspuns de
0
Explicație:
e foarte complicat cum ai gândit și foarte multe if-uri în care te încurci
sugerez o abordare mai simpla
if( a!=b) //avem 2 numere distincte sigur
{cnt=2;
if( a!=c sau b!=c) cnt++;
}
else //primele 2 nr sunt identice.in funcție de c, vedem dacă avem fie 1, fie 2 valori distincte
{ cnt=1;
if(b!=c) cnt++;
}
cout<<cnt;
schiopubogdan99:
o mica corectare if( a!=c SI b!=c)
Răspuns de
0
Răspuns:
#include <iostream>
using namespace std;
int a, b, c;
int main()
{
cin>>a>>b>>c;
if(a==b && a==c) cout<<1;
else if(a==b && a!=c) cout<<2;
else if(b==c && b!=a) cout<<2;
else if(a==c && a!=b) cout<<2;
else if(a!=b && b!=c && a!=c) cout <<3;
return 0;}
Explicație:
Alte întrebări interesante
Biologie,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă