
Averiguar dígitos.
Publicado por Szpilman (12 intervenciones) el 31/10/2014 00:33:45
Hola, en primer lugar agradecer por la ayuda prestada en esta página, es de gran ayuda para el estudiante de programación. Me han salvado la vida en contadas ocasiones.
Mi duda es la siguiente, deseo hacer un subprograma que reciba un número entero y devuelva TRUE si todas las cifras de este números son pares y devuelva FALSE en el caso contrario (todas las cifras sean impares, o impares y pares alternativamente). Os dejo una definición al respecto:“totalpar” todo número natural N tal que N=dm dm-1...d1 d0 y tal que todos sus dígitos son pares.
De momento este código es lo que llevo hecho, y me logra averiguar con ciertos números, pero no todas. Agradecería nuevamente un posible arreglo al respecto.
FUNCTION totalPar(num:INTEGER):BOOLEAN;
VAR
Muchas gracias antemano por la posible ayuda :)
Mi duda es la siguiente, deseo hacer un subprograma que reciba un número entero y devuelva TRUE si todas las cifras de este números son pares y devuelva FALSE en el caso contrario (todas las cifras sean impares, o impares y pares alternativamente). Os dejo una definición al respecto:“totalpar” todo número natural N tal que N=dm dm-1...d1 d0 y tal que todos sus dígitos son pares.
De momento este código es lo que llevo hecho, y me logra averiguar con ciertos números, pero no todas. Agradecería nuevamente un posible arreglo al respecto.
FUNCTION totalPar(num:INTEGER):BOOLEAN;
VAR
resTotalpar : INTEGER;
BEGINREPEAT
num := num DIV 10;
resTotalpar := num MOD 10;
resTotalpar := resTotalpar MOD 2;
IF resTotalpar = 0 THEN
totalPar := TRUE
ELSE
totalPar := FALSE;
UNTIL ( num = 0 ) OR ( totalPar = FALSE );
REPEAT
writeln();
END;Muchas gracias antemano por la posible ayuda :)
Valora esta pregunta


0