EJERCICIO INDIVIDUAL DE PROGRAMACIÓN

Anuncio
Tecnologías de la Información – Introducción a la programación
exa_ip_290208.doc
EJERCICIO INDIVIDUAL DE PROGRAMACIÓN
El programa a realizar consiste en aceptar un número binario formado por cuatro bits y
transformarlo de base : a base 10 (decimal), base 16 (hexadecimal) y a base 8(octal).
Si alguno de los cuatro digitos binarios no fuera correcta (cero o uno) el programa muestra un error
configurando la salida de la pantalla de la siguiente forma.
Si los digitos introducidos son binarios correctas, se procede a la transformación y se debe mostrar
el resultado de acuerdo a la pantalla siguiente.
Dentro de la carpeta planti_ti\int_programacion\exa_ip_290208 del computador
del profesor (ib00), existe almacenada una versión ejecutable de la solución a este ejercicio
(ej200208_sol.exe),de la que debes obtener la especificación de la pantalla, tanto los colores
como las posiciones de los correspondientes elementos.
Para la realización del programa dispones de la plantilla ej290208.pas situada en la carpeta
citada anteriormente. Este fichero deberá ser cambiado de nombre sustituyendo los dos primeros
caracteres (“ej”) por tu identificativo personal de dos caracteres.
Tecnologías de la Información – Introducción a la programación
exa_ip_290208.doc
program Ej_290208; (* Pasa un numero binario de 4 bits a otros sistemas *)
uses CRT;
var
(* VARIABLES DE ENTRADA *)
num_b2_0,num_b2_1,num_b2_3 : byte;
(* Digitos binarios *)
(* VARIABLES DE SALIDA *)
num_b10 : byte;
(* Numero base 10 *)
num_b16 : char;
(* Numero base 16 *)
num_b8_0 , num_b8_1 : byte; (* Digitos numero en base 8 *)
begin
clrscr;
writeln ('************************************************');
writeln ('*********** BINARIO --> OTRAS BASES ************');
writeln ('************************************************');
(* Dibujo de la pantalla *)
gotoxy (10,08); writeln ('Binario ...');
gotoxy (22,07); write ('ÚÄÄÄÂÄÄÄÂÄÄÄÂÄÄÄ¿');
gotoxy (22,08); write ('³
³
³
³
³');
gotoxy (22,09); write ('ÀÄÄÄÁÄÄÄÁÄÄÄÁÄÄÄÙ ');
gotoxy (10,12); writeln ('Decimal ...');
gotoxy (22,11); write ('ÚÄÄÄÄ¿');
gotoxy (22,13); write ('ÀÄÄÄÄÙ');
gotoxy (10,16); writeln ('Hexadecimal ..');
gotoxy (22,15); write ('ÚÄÄÄ¿'); gotoxy (22,16);
gotoxy (22,17); write ('ÀÄÄÄÙ');
(* Solicito el numero al usuario *)
gotoxy(1,5); clreol;
writeln ('Introduzca los 4 digitos binarios ');
readln (num_b2_3);
gotoxy (32,08);
gotoxy (36,08); readln (num_b2_0);
(* CONTROLO SI HAN TECLEADO VALORES CORRECTOS *)
if 3 > 2
(* Esta condicion debes quitarla y poner la correcta *)
then
begin
gotoxy (42,08); write ('** NUMERO INCORRECTO **');
gotoxy (23,12); write ('****');
gotoxy (23,16); write ('***');
gotoxy (27,20); write ('***');
end
else (* Si son valores correctos obtengo resto de bases *)
begin
(* Calculo numero en base 10 *)
(* Calculo numero en base 16 *)
(* Calculo numero en base 8 *)
(* Muestro los resultados obtenidos *)
end.
gotoxy (24,12); write (num_b10);
gotoxy (24,20); write (num_b8_1);
gotoxy (28,20); write (num_b8_0);
end;
(* FINALIZA LA EJECUCION DEL PROGRAMA *)
gotoxy(1,5); clreol;
writeln ('Pulse una tecla para terminar la ejecucion del programa');
repeat ; until keypressed;
nosound;
Descargar