Предмет: Информатика,
автор: innessabest
Написать две функции: одна из которых осуществляет перевод из десятичной системы исчисления в двоичную, а вторая - наоборот.
На языке С
Ответы
Автор ответа:
0
#include <stdio.h>
#include <math.h>
#include <locale.h>
int BinaryToDecimal(long long n)
{
int decimalNumber = 0, i = 0, remainder;
while (n!=0)
{
remainder = n%10;
n /= 10;
decimalNumber += remainder*pow(2,i);
++i;
}
return decimalNumber;
}
long long DecimalToBinary(int n)
{
long long binaryNumber = 0;
int remainder, i = 1, step = 1;
while (n!=0)
{
remainder = n%2;
n /= 2;
binaryNumber += remainder*i;
i *= 10;
}
return binaryNumber;
}
int main()
{
setlocale(LC_ALL,"Rus");
long long bin;
printf("Введите двоичное число: ");
scanf("%lld", &bin);
printf("%lld в двоичной = %d в десятичной", bin, BinaryToDecimal(bin));
int dec;
printf("\nВведите десятичное число: ");
scanf("%d", &dec);
printf("%d в десятичной = %lld в двоичной", dec, DecimalToBinary(dec));
return 0;
}
#include <math.h>
#include <locale.h>
int BinaryToDecimal(long long n)
{
int decimalNumber = 0, i = 0, remainder;
while (n!=0)
{
remainder = n%10;
n /= 10;
decimalNumber += remainder*pow(2,i);
++i;
}
return decimalNumber;
}
long long DecimalToBinary(int n)
{
long long binaryNumber = 0;
int remainder, i = 1, step = 1;
while (n!=0)
{
remainder = n%2;
n /= 2;
binaryNumber += remainder*i;
i *= 10;
}
return binaryNumber;
}
int main()
{
setlocale(LC_ALL,"Rus");
long long bin;
printf("Введите двоичное число: ");
scanf("%lld", &bin);
printf("%lld в двоичной = %d в десятичной", bin, BinaryToDecimal(bin));
int dec;
printf("\nВведите десятичное число: ");
scanf("%d", &dec);
printf("%d в десятичной = %lld в двоичной", dec, DecimalToBinary(dec));
return 0;
}
innessabest:
спасибо огромное
Похожие вопросы
Предмет: Алгебра,
автор: giorgio07
Предмет: Алгебра,
автор: jenjachuma85
Предмет: Математика,
автор: diana89z88
Предмет: Химия,
автор: zazalupiz