Показать сообщение отдельно

  #4  
Старый 23.10.2009, 00:29
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
С нами: 9963746

Репутация: 180


По умолчанию

Цитата:
Сообщение от Lohovoz  
Доброго времени суток всем, тут возникла задачка, - перевод десятичного числа в двоичное, по идее смысл я понял - в цикле число делится на 2 и возвращает остаток в ячейку массива, но хотелось бы решить эту задачу с помощью отдельной рекурсивной функции, я совсем новичок в программировании, если кому не сложно, подскажите
Код:
v#include <iostream>
#include <string>

using namespace std;

void fuck(const int num, string &snum){
	if (num%2==0)
		snum+="0";
	else snum+="1";
	if ((num/2)!=0) fuck(num/2, snum);
	else return;
}

int main(){
	string snum;
	fuck(57, snum);
	cout<<snum<<endl;
}
вот те и рекурсия. Только она малясь кривая, и итоговую бинарную запись задом наперед выводит. Ну думаю развернуть ты сам сможешь, если приспичет
 
Ответить с цитированием