#include <iostream>
int main()
{
int base;
std::cout<<"Please enter what base to convert from: ";
std::cin>>base;
switch(base)
{
case 4:
{
int x, first, second, third, fourth, fifth, test1, test2, test3, test4, test5;
int result;
std::cout<<"Imput integer: ";
std::cin>>x;
first=x%4;
test1=x/4;
if(test1<=0)
{
result=first;
std::cout<<result<<"\n";
break;
}
else
{
second=test1%4;
test2=test1/4;
if(test2<=0)
{
result=(second*10)+first;
std::cout<<second<<first<<"\n";
break;
}
else
{
third=test2%4;
test3=test2/4;
if(test3<=0)
{
result=(third*100)+(second*10)+first;
std::cout<<result<<"\n";
break;
}
else
{
fourth=test3%4;
test4=test3/4;
if(test4<=0)
{
result=(fourth*1000)+(third*100)+(second*10)+first;
std::cout<<result<<"\n";
break;
}
else
{
fifth=test4%4;
test5=test4/4;
result=(fifth*10000)+(fourth*1000)+(third*100)+(second*10)+first;
std::cout<<result<<"\n";
break;
}
}
}
}
}
case 2:
{
int x, first, second, third, fourth, fifth, test1, test2, test3, test4, test5;
int result;
std::cout<<"Imput integer: ";
std::cin>>x;
first=x%2;
test1=x/2;
if(test1<=0)
{
result=first;
std::cout<<result<<"\n";
break;
}
else
{
second=test1%2;
test2=test1/2;
if(test2<=0)
{
result=(second*10)+first;
std::cout<<result<<"\n";
break;
}
else
{
third=test2%2;
test3=test2/2;
if(test3<=0)
{
result=(third*100)+(second*10)+first;
std::cout<<result<<"\n";
break;
}
else
{
fourth=test3%2;
test4=test3/2;
if(test4<=0)
{
result=(fourth*1000)+(third*100)+(second*10)+first;
std::cout<<result<<"\n";
break;
}
else
{
fifth=test4%2;
test5=test4/2;
result=(fifth*10000)+(fourth*1000)+(third*100)+(second*10)+first;
std::cout<<result<<"\n";
break;
}
}
}
}
}
case 8 :
{
int x, first, second, third, fourth, fifth, test1, test2, test3, test4, test5;
int result;
std::cout<<"Imput integer: ";
std::cin>>x;
first=x%8;
test1=x/8;
if(test1<=0)
{
result=first;
std::cout<<result<<"\n";
break;
}
else
{
second=test1%8;
test2=test1/8;
if(test2<=0)
{
result=(second*10)+first;
std::cout<<result<<"\n";
break;
}
else
{
third=test2%8;
test3=test2/8;
if(test3<=0)
{
result=(third*100)+(second*10)+first;
std::cout<<result<<"\n";
break;
}
else
{
fourth=test3%8;
test4=test3/8;
if(test4<=0)
{
result=(fourth*1000)+(third*100)+(second*10)+first;
std::cout<<result<<"\n";
break;
}
else
{
fifth=test4%8;
test5=test4/8;
{
result=(fifth*10000)+(fourth*1000)+(third*100)+(second*10)+first;
std::cout<<result<<"\n";
break;
}
}
}
}
}
default :
std::cout<<"Invalid entry";
}
return (0);
}
I have a feeling however that this isnt the right way to approach this...
Im asking because ive been working on this for around 6 hours straight now and just cant seem to crack it. I know it involves using a While loop, or a For loop but i just cant seem to have that "ahah" moment to know how to use the proper loops necesarry. Help would be greatly appreciated.

New Topic/Question
Reply




MultiQuote





|