Red de conocimiento informático - Consumibles informáticos - Título: [NOIP1999] Números Palíndromo Título Descripción Si un número (el primer dígito no es cero) se lee igual de izquierda a derecha o de derecha a izquierda, lo llamaremos

Título: [NOIP1999] Números Palíndromo Título Descripción Si un número (el primer dígito no es cero) se lee igual de izquierda a derecha o de derecha a izquierda, lo llamaremos

Esta pregunta también es muy simple. Simplemente prueba algunas habilidades básicas de programación y no es nada difícil. Siempre que tenga cuidado, podrá obtener puntos fácilmente por esta pregunta.

Los números aquí se representan mediante cadenas (por supuesto, también son posibles otros métodos) porque son fáciles de procesar.

La suma basada en N es lo más destacado de esta pregunta. El procesamiento es el siguiente:

1) Carácter -> Número, puede usar matrices para simplificar el programa, es decir, matrices de dígitos y caracteres

2) Haga la suma, conserve los dígitos y transporte los bits, tal como desea hacer una suma de alta precisión.

g es llevar.

const

paso:integer=0;

chars:array[0..15] of char=('0','1',' 2','3','4','5','6','7','8','9','A','B','C','D','E' ,'F');

var

digit:array[char] de entero;

i,n,g:integer;

m,s:string;

ok:boolean;

comenzar

para i:=0 a 9 hacer digit[char(ord('0 ')+i)]:=i;

para i:=0 a 5 haga dígito[char(ord('A')+i)]:=i+10;

escribir('n='); readln(n);

escribir('m='); readln(s);

para i:=1 a longitud( s) hacer s[i]:=upcase(s[i]);

repetir

ok:=true;

para i:=1 a longitud(es) div 2 hacer

si s[i]<>s[longitud(es)+1-i] entonces está bien:=false;

si está bien entonces romper;

inc(paso);

m:=s; g:=0;

para i:=longitud(m) hasta 1 hacer

comenzar

s[i]:=caracteres[(dígito[m[i]]+dígito[m[longitud(m)+1-i]]+g) mod n];

g:=(dígito[m[i]]+dígito[m[longitud(m)+1-i]]+g) div n;

fin; p>

si g>0 entonces s:=chars[g]+s;

hasta el paso>=30;

si está bien, entonces

writeln('STEP=',paso)

else

writeln('Imposible');

end.

No problema por favor Aceptado, por favor pregunte si tiene alguna pregunta.