Cerinţa
Se citesc două numere naturale. Să se afişeze numărul care are mai multe cifre egale cu 1
în reprezentarea în baza 2
.
Date de intrare
Programul citește de la tastatură două numere naturale.
Date de ieşire
Programul afișează pe ecran valoarea cerută.
Restricţii şi precizări
- cele două numere citite vor fi mai mici decât
2.000.000.000
- dacă cele două numere au acelaşi număr de cifre
1
în reprezentarea în baza2
se va afişa cel mai mic dintre ele
Exemplu
Intrare
125 1250
Ieșire
125
Explicaţie
Reprezentarea lui 125
în baza 2
este 1111101
, cu 6
cifre 1
, iar reprezentarea lui 1250
este 10011100010
, cu 5
cifre 1
. Astfel, 125
are mai multe cifre 1
în reprezentarea în baza 2
.
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema CifreBinare:
#include <iostream>
using namespace std;
int main(){
int n,m,cn,cm;
cin >> n >> m;
int rn = 0,rm = 0;
cn = n, cm = m;
while(cn)
rn+=cn%2, cn/=2;
while(cm)
rm+=cm%2, cm/=2;
if(rn>rm)
cout << n;
else
if(rm>rn)
cout << m;
else
cout << (n<m?n:m);
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #122 CifreBinare
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #122 CifreBinare de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!