Red de conocimiento informático - Consumibles informáticos - Programación mágica

Programación mágica

El fracaso del mago: El mago coloca de antemano 13 espadas en el póquer y pone las cartas boca abajo en su mano. La primera vez

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]);

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

;