перевод из десятичной в двоичную

  • Автор темы Larin
  • Дата начала
Статус
Закрыто для дальнейших ответов.
L

Larin

#1
есть число n и нужно перевести его в нули и единицы. Дай те плз исходник...
 
D

Dico

#2
Код:
inline char * Binary(register int a){  //Функция перевода число в двоичную систему счисления

 int rsize;              //Расмер нового массива

 char *Bin = new char [21];

 for(int rr = 0;rr <= 21;rr++){

   Bin[rr]= '5';}          //Заполняем пятёрками чтобы отличить реальные двоичные числа

 int hw_iterat = 0;          //Эта переменная служит для индексации массива - в цикле увеличивается каждый раз на 1 

 while(a > 0) {

   if((a % 2) == 0){

     Bin[hw_iterat] = '0';     //Заполняем массив 0

   a = a / 2;}

   else {

     Bin[hw_iterat] = '1';     //Заполняем массив 1

     a = a / 2;}

   hw_iterat++;}

  if(a == 1){

     Bin[hw_iterat] = '1';}

  for(int re = 0;re <= 21;re++){

      if(Bin[re] == '5'){

      rsize = re-1;

      break;}}

    char *real = new char[rsize];   //Вводим новый массив чтобы он полностью был заполнен

    for(int m = 0;m <= rsize;m++){ 

      real[m]=Bin[m];} 

    char * Binary = new char[rsize + 1]; 

    for(int w = 0; w <= rsize;w++){    

      Binary[w] = real[rsize-w];}  //Binary будет содержать нужные нам числа 

    Binary[rsize+1] = '\0';      //Ставим \0 в конце для корректного преобразования в строку

    char * str = Binary;        //Строка str содержит нужные нам данные

    return str;
 
L

Larin

#4
#include <iostream.h>
#include <stdlib.h>
#include <alloc.h>
#include<conio.h>
void main() {
clrscr();
char mas[16] = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
char *temp;
long a,i=0;
a=1513;

temp= (char *) malloc(200);
while (a!=0) {
temp=mas[a % 16];
i++;
a/=16;

}
temp=0;
for (long j=i-1;j>=0;j--) cout<<temp[j];

}

вообщем вот, что у меня получилось. всё работает. но как сделать тоже самое, только с float - числами ?
 
Статус
Закрыто для дальнейших ответов.