PDA

View Full Version : برنامه عدد صحیح کوچکتر از 256 را گرفته و به مبنای ۲ ببرد ؟



mohsen.fk
چهارشنبه 25 فروردین 1395, 15:32 عصر
با سلام خدمت مدیران محترم
الگوریتمی و برنامه ای که یک عدد صحیح کوچکتر از ۲۵۶ را گرفته و به مبنای ۲ ببرد ؟
توضیحات الگوریتم و برنامه رو ممنون میشم از دوستان یا مدیران راهنمایی کنند .

smokyshadow
پنج شنبه 26 فروردین 1395, 07:43 صبح
با سلام خدمت مدیران محترم
الگوریتمی و برنامه ای که یک عدد صحیح کوچکتر از ۲۵۶ را گرفته و به مبنای ۲ ببرد ؟
توضیحات الگوریتم و برنامه رو ممنون میشم از دوستان یا مدیران راهنمایی کنند .

#include<iostream>
using namespace std;
int dectobinary(int number);
int recursive_binary(int number);
int main() {
int number;
cout << "enter a number";
cin >> number;
cout<<dectobinary(number)<<"\n";
cout<<"with recursive"<<recursive_binary(number);




}
int dectobinary(int number) {
int backup=0;
while (number > 0) {
int remainder = number % 2;
backup = backup * 10 + remainder;
number = number / 2;
}
return backup;

}
int recursive_binary(int number) {
static int backup=0;
if (number > 0) {
backup = backup*10+number%2;
recursive_binary(number/2);


}

return backup;
}



سلام این کد عدد دسیمال رو به باینری تبدیل می کنه که به دو شکل بازگشتی و معمولی نوشتم...خیلی اسونه بخونی متوجه میشی:)

Ananas
جمعه 27 فروردین 1395, 04:31 صبح
#include <iostream.h>


char * byte_to_bin(char * p_dst, const char num)
{
int j = 8;
while (j > 0)
{
j--;
if ( (num & (1 << j)) != 0 )
break;
};
int i = 0;
while (j >= 0)
{
p_dst[i] = ( (num & (1 << j)) != 0 ) ? '1' : '0';
i++;
j--;
};
p_dst[i] = (char)0;
return p_dst;
};

int main()
{
for (int i = 0; i < 256; i++)
{
char str[32];
std::cout << byte_to_bin(str, i) << std::endl;
};
getchar();
getchar();
return 0;
};

mohsen.fk
یک شنبه 29 فروردین 1395, 18:16 عصر
با سلام برنامه بالا میخاستم مثل الگوریتم زیر نوشته بشه هر کار کردم متوجه نشدم ممنون میشم راهنمایی کنید دوستان
140054