Перевести число из десятичной системы счисления в двоичную рекурсией
Всем привет,вот такой у меня вариант решения,но он не работает так как надо,может кто-то подсказать как исправить?
#include <iostream>
#include <cmath>
#include <math.h>
using namespace std;
int Recurs(int number){
if(number > 1)
Recurs(number/2);
cout << number % 2;
}
int main(){
cout << "Enter natural number"<< endl;
int number;
cin >> number;
cout << Recurs(number);
}
Ответы (2 шт):
Автор решения: Аркадий
→ Ссылка
У Вас функции, которые должны возвращать int, не возвращают ничего. Также непонятно, зачем cout << Recurs(number), вывод на экран у Вас и так есть.
#include <iostream>
#include <cmath>
#include <math.h>
using namespace std;
int Recurs(int number){
if(number > 1)
Recurs(number/2);
cout << number % 2;
return 0; /* <-- */
}
int main(){
cout << "Enter natural number"<< endl;
int number;
cin >> number;
Recurs(number); /* <-- */
return 0; /* <-- */
}
Автор решения: Nazar
→ Ссылка
Вот теперь всё работает
#include <iostream>
#include <cmath>
#include <math.h>
using namespace std;
int Recurs(int number){
if(number > 1)
Recurs(number /2);
cout << number % 2;
return number;
}
int main(){
setlocale(LC_ALL , "Ukrainian");
cout << "Введите натуральное число" << endl;
int number;
cin >> number;
Recurs(number);
}