Decimal para Binário em Scilab

Programa que transforma um número Decimal para Binário em Scilab


Versão do Scilab: 5.5.2.


clc
clear

numeroDecimal = 9;  
//dividendo é o número que será dividido
//numero a dividir é o divisor
//resto é o resto da divisao
cont = 1;           //variavel usada para contar a quantidade de numeros inseridos no vetor
resultado = 0;
resto = 0;
numBinario = [];
numeroOriginal = numeroDecimal;
while resultado <> 1
    
    printf("%g",numeroDecimal)
    printf("/2 = ")
    resultado = numeroDecimal / 2 ;   //aqui é feita a divisao em decimal, ou seja, quebrada
    resultado = fix(resultado)          //função que arredonda o numero quebrado para o numero inteiro tendendo a 0, pois não existe divisao inteira no scilab para numeros inteiro
    printf("%g",resultado)
    
    resto = modulo(numeroDecimal,2) ;      //resto da divisao que equivale ao % em C++ ou Java
    printf("   -   Resto : %g", resto) 
    disp("")                        //para pular linha

    numBinario(cont) = resto;           //armazena o resto da divisao no vetor
    numeroDecimal = resultado;        
    cont = cont + 1;
    if(numeroDecimal == 1)
    numBinario(cont) = numeroDecimal;
                printf("               Resto   : 1");             
                disp("")                    //para pular linha
                break
    end
 end

 printf(" O numero decimal (%g", numeroOriginal)
 printf(") fica (");
    for  i=cont:-1:1
        printf("%g",numBinario(i))
    end
 printf(") em binário");
   

Comentários

Postagens mais visitadas deste blog

Método da Interpolação por Eliminação Gaussiana em Scilab

Cálculo do Erro para Interpolação em Scilab

Método de Interpolação de Lagrange em Scilab