View Full Version : سوال: تبدیل عدد به باینری
  
minazare
شنبه 28 اسفند 1389, 01:34 صبح
برنامه ای بنویسید که یک عدد صحیح را گرفته وبا استفاده از توابع بازگشتی معادل باینری آن را برگرداند
#include<stdio.h>
#include<stdlib.h>
int binary(int);
int main()
{
    int number;
    printf("enter integer number:");
    scanf("%d",&number);
    binary(number);
    printf("\nnumber=%d\n",binary(number));
    return 0;
    }
    int     binary(int number)
    {
        if(number ==0)
            return 0;
        else
        {
            binary (number/2);
            printf ("\n number%2");
        }
     return (number);
    }
من این برنامه رو نوشتم ولی خروجی مد نظر منو نداره.میشه راهنماییم کنید
mohammadian7
شنبه 28 اسفند 1389, 02:06 صبح
سلام
من این کد رو نوشتم اگر جاییش رو متوجه نشدی بگو تا توضیج بدم البته فکر میکنم واضح باشه.
#include "stdafx.h"
#include<stdio.h>
#include<stdlib.h>
#include <conio.h>
void binary(int number)
{
    int num;
    if(number == 0)
        printf ("0");
    else{
        binary (number/2);
        printf ("%d",number%2);
    }
}
int _tmain(int argc, _TCHAR* argv[])
{
    int number;
    printf("enter integer number:");
    scanf("%d",&number);
    printf ("binary: ");
    binary(number);
    getch();
    return 0;
}
موج كوير
شنبه 28 اسفند 1389, 05:35 صبح
این همان برنامه بالا است فقط یه فرمول بازگشتی جایگزین شده.چندتا خط هم حذف شده.:لبخندساده:
#include<stdio.h>
#include<conio.h>
double binary(int);
int main()
{
int number;
printf("enter integer number:");
scanf("%d",&number);
printf("\nnumber=%.0f\n",binary(number));
getch();
return 0;
}
double binary(int number)
{
if(number ==0)
return 0;
else
{
return namber%2+binary(number/2)*10;
}
}
minazare
شنبه 28 اسفند 1389, 09:52 صبح
از لطف هر دو عزیز ممنون.ولی هر دو برنامه اجرا نمیشن.شما وقتی نوشتینش اجرا شد؟
minazare
شنبه 28 اسفند 1389, 11:34 صبح
خیلی ممنون فهمیدم errorواسه چی میداد.خیلی لطف کردین
NIMA_1981
شنبه 28 اسفند 1389, 12:07 عصر
شما اینحوری بنویس درست کار میکنه 
 
#include<stdio.h>
#include<stdlib.h>
#include <conio.h>
void binary(int number)
{
    int num;
    if(number == 0)
        printf ("0");
    else{
        binary (number/2);
        printf ("%d",number%2);
    }
}
int main()
{
    int number;
    printf("enter integer number:");
    scanf("%d",&number);
    printf ("binary: ");
    binary(number);
    getch();
    return 0;
}
hoomanbahloli
جمعه 05 آبان 1391, 20:37 عصر
ممنون از همه شما
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.