Programación mágica
Cuenta una carta, dale la vuelta y resulta ser un As, ponla sobre la mesa, la segunda vez cuenta dos cartas, pon la carta contada hasta 1 en tu mano.
Abajo, la carta con el número 2 pasa a ser 2 y también está colocada sobre la mesa. Cuenta tres cartas más y ordena los números 1 y 2.
La primera carta se coloca debajo de la mano, y la tercera carta se da vuelta y es el 3, que todavía está sobre la mesa. Sigue haciendo esto
Continúa hasta que se hayan dado la vuelta a las 13 cartas de tu mano. En este momento, el orden de las cartas sobre la mesa resulta ser: A, 2, 3, 4.
, 5,...,J,Q,K. Programe para encontrar el orden original de las 13 cartas en la mano del mago.
[Análisis] Se puede ver como mover la tarjeta i-1 hacia la parte inferior de la tarjeta cada vez antes de girar la tarjeta I, y girar la otra tarjeta es la tarjeta I..
var i , j, k, t, n: integer;
Respuesta: Entero de la matriz [1..50]
Inicio
; Escribir (' N = '); readln(n);
a[n]:= 1
para i:=n-1 hasta 1 hacer
Inicio
p>
a[I]:= 1;
Para j:=i+1 a n hacer Inc(a[j]); p>
Para j:=1 a i-1
Iniciar
t:= a[n];
mover(a[i ], a[i+1], ( n-I)* tamañode(a[1]);
a[I]:= t;
Fin;
Fin;
Para i:=1 an escribir(a[i], ' ');
writeln
Fin
;