Pular para o conteúdo principal

Digita um numero na Base10 e mostra na Base2 - (Converte Decimal em Binário)

{Elabore um algoritmo que o usuario forneça um número inteiro (que é decimal),
calcule e mostre este numero em binario.}
Program Pzim ;
var
binario:array[1..15]of integer;
i,j,num,y:integer;
 Begin
     writeln('Digite um número : ');           {solicita que seja digitado um numero}
     read(y);                                  {armazena o numero na variavel y}
     num:=y;                                   {armazena a var Y na var NUM}
     for i:=1 to 15 do
         begin                                 {atribui zeros no vetor binario}
             binario[i]:=0;
         end;
     for j:=15 downto 1 do           {faz do ultimo, 8 até o primeiro, armazena os ddos no vetor binario
                                     de forma inversa, devido a forma de converter decimal em binario}
         begin
                      binario[j]:=(y mod 2); {o vetor binario recebe o valor do resto da var y (mode 2), e coloca na ultima posição}
                     y:= (y div 2);                   {a var y recebe o valor do quociente e repete o processo anterior }
                                                {até terminar o processo de divisão, qdo o quociente de y for indivisivel por 2(parte inteira)}
         end;
             writeln('O numero  ',num, ', base 10');     {exibe mensagem}
            writeln('tem como correspondente');
      for i:=1 to 15 do
          begin
              write(binario[i],' ');                    {mostra o vetor binario e seus valores de 0 e 1}
          end;
              write(', na base 2');                       {exibe mensagem}
 End.

Postagens mais visitadas deste blog

3 notas com media ponderada

Program Pzim ; {4- Escreva um programa que leia o código de um aluno e suas três notas. Calcule a média ponderada do aluno, considerando que o peso para a maior nota seja 4 e para as duas restantes, 3. Mostre o código do aluno, suas três notas, a média calculada e uma mensagem "APROVADO" se a média for maior ou igual a 5 e "REPROVADO" se a média for menor que 5. } var cod:integer; n1, n2, n3, nm1, nm2, nm3, media:real; Begin media:=0; writeln('Digite o código do aluno : '); read(cod); write('digite a 1o. nota : '); read(n1); write('digite a 2o. nota : '); read(n2); write('digite a 3o. nota : '); read(n3); {aproveitando a mesma estrutura para ordenar a maior nota, as outras duas não tem importançia na ordem, pois tem o mesmo peso} if ((n1 > n2) and (n1 > n3)) then begin nm1:=n1; nm2:=n2; nm3:=n3; end else if ((n2 > n1) and (n2 > n3)) then begin nm1:=n2; nm2:=n1; nm3:=n3; end else if ((n3 ...

programa para somar os N primeiros termos

Program Pzim ; {Faça um programa para somar os N primeiros termos da série abaixo: 1 + 3/1 + 5/3 + 7/5 + 9/7 + ...} var n,i:integer; n1, n2, soma:real; {variaveis}  Begin  n1:=3;{inicia as variaveis com 3 e 1, }  n2:=1;  soma:=1; {inicia a soma com 1, por isso o for, faz até n-1, pois como o primeiro termo é um, ele já vem incrementado}   write('Digite um numero : ');   readln(n);   for i:=1 to n-1 do {faz de 1 até n-1, pois a soma é iniciado já com 1}   begin soma:=soma+(n1/n2); writelnl('1'); writeln(n1,'/',n2);  {essa linha é facultativa, é só pra visualizar as divisoes} n1:=n1+2; {incrementa n1 mais 2} n2:=n2+2; {incrementa n2 mais 2}   end;      writeln('A soma dos ',n,' termos de "1+ 3/1 + ... N" é: ',soma); {mostra a resposta}  End.

Exercicio 4 de Heterogenea

Program Pzim ; {Faça um algoritmo que leia 7 produtos, contendo codigo, nome, quantidade, preço. No final, imprima os produtos que tenha mais do que 5 unidades.} type r_produto = record     cod:integer;     nome:string;     quant:integer;     preco:real; end; var     v_produto:array [1..3] of r_produto;     i, qmais5:integer;  Begin  qmais5:=0;     for i:=1 to 3 do         begin             writeln('ENTRE COM OS DADOS DOS PRODUUTOS');             writeln('_______________________________');             writeln(' ',I,'o. Produto ');             writeln('_______________________________');             writ...