383
Cerința
Se dă un număr n scris în baza 2. Să se afișeze valoarea acestuia în baza 4.
Date de intrare
Programul citește de la tastatură scrierea în baza 2 a numărului n.
Date de ieșire
Programul va afișa pe ecran scrierea în baza 4 a numărului n.
Restricții și precizări
nare cel mult100de cifre în baza2
Exemplu
Intrare
100011
Ieșire
203
Explicație
100011(2) este scrierea binară a numărului 35(10) . Numărul 35 trecut în baza 4 are scrierea 203(4)
#include<iostream>
#include<string>
using namespace std;
string n;
void modf(int v)
{
for(int i=v; i<n.length(); i+=2) {
if(n[i] == '0' && n[i+1] == '0') cout << 0;
else if(n[i] == '0' && n[i+1] == '1') cout << 1;
else if(n[i] == '1' && n[i+1] == '0') cout << 2;
else cout << 3;
}
}
int main()
{
cin >> n;
if(n.length() & 1) { cout << 1; modf(1); }
else modf(0);
return 0;
}
Comentarii