Witam, to już chyba codzienność tego forum, że piszę z jakimś problemem. Robię zadanie: http://pl.spoj.com/problems/PP0504D/
Nabazgrałem coś takiego i doszedłem do wniosku, że to wszystko źle, bo to tylko jedna by starczyła jakby ją zapętlić. Jakaś podpowiedź jak to zrobić?
Myślicie, że jak mam problemy z takimi zadaniami to robić kolejny kurs czy mogę męczyć się z tymi zadaniami, bo te łatwiejsze z łątwych to bez problemu ogarniam praktycznie :P
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
int a;
int b=0;
int f=0;
int x=0;
int main()
{
cin >>a;
do
{
b++;
}
while (a>pow( 16, b ));
int c = a/pow(16, b-1);
//pierwsza cyfa
if (c<10)
cout <<c;
else if (c==10)
cout<<"A";
else if(c==11)
cout <<"B";
else if(c==12)
cout <<"C";
else if(c==13)
cout<<"D";
else if(c==14)
cout <<"E";
else if(c==15)
cout <<"F";
int e=pow(16, b-1);
int d=a%e;
do
{
f++;
}
while (d>pow( 16, f ));
int z = d/pow(16, f-1);
//druga cyfra
if (z<10)
cout <<z;
else if (z==10)
cout<<"A";
else if(z==11)
cout <<"B";
else if(z==12)
cout <<"C";
else if(z==13)
cout<<"D";
else if(z==14)
cout <<"E";
else if(z==15)
cout <<"F";
int h=pow(16, f-1);
int g=d%h;
{
x++;
}
while (g>pow( 16, x ));
int y = g/pow(16, x-1);
cout <<y;
return 0;
}