Conversão de Decimal para Binário
Publicado por marlon luis petry 31/05/2005
[ Hits: 30.648 ]
Homepage: http://petryx.blogrs.com.br
Este algoritmo converte um número decimal para um número binário através de um pilha dinâmica.
/****************************************************************************** **Author = Marlon Petry **e-mail = marlonpetry@gmail.com **Date = 29/05/2005 **Description: Decimal to binary with queue dynamical ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ******************************************************************************/ #include <stdio.h> typedef struct queue { int value; struct queue *prev,*next; }q; q *topo = NULL,*base = NULL; void push(int value) { q *aux; if(topo == NULL) { base = (q *) malloc(sizeof(q)); base->value = value; base->next = NULL; base->prev = NULL; topo = base; } else { aux = (q *) malloc(sizeof(q)); aux->value = value; aux->prev = topo; aux->next = NULL; topo->next = aux; topo = aux; } } int pop() { int value; if(topo == NULL) return -1; else { value= topo->value; topo = topo->prev; } return value; } void convertDecBin(int dec) { int r; while(dec != 0) { r = dec%2; push(r); dec = dec/2; } } void show() { int flag = 0,b; printf("\nValue Binary is "); while(flag != 1) { b = pop(); if(b == -1) flag = 1; else printf("%d",b); } } main() { int dec; int ch; do { printf("Inform value DECIMAL\n"); scanf("%d",&dec); convertDecBin(dec); show(); puts("\n-1 for finish"); scanf("%d",&ch); }while(ch != -1); }
Rotação à esquerda árvore Binária
Atenção a quem posta conteúdo de dicas, scripts e tal (2)
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Ativando o Modo Noturno via Linha de Comando no GNOME/Wayland
Habilitando a importação de senhas no Firefox
Como corrigir o erro do VirtualBox travar a máquina virtual em tela cheia
Instalando Google Chrome no Ubuntu 24.04 LTS
Quantidade de caracteres suportados na barra de endereços dos navegadores
instalar linux com intel RST ativo (4)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (33)