Voici l'adaptation en linotte d'un tour de magie assez connu : 
on choisit 5 cartes au hasard dans un jeu de 52. 
On annonce la première à l'ordinateur, puis la 2e, puis la 3e,
puis la 4e... et le programme annonce lui-même la 5e !

Le "truc" consiste bien sûr à jouer sur l'ordre des cartes 
(qui est libre), de façon à ce que la succession des 4 
premières donne assez d'informations pour coder complètement
la dernière. 
Et évidemment, il faut connaître le code choisi pour utiliser 
le programme (et ainsi épater une classe de 35 élèves). 
L'explication (ci-dessous) est un peu longue mais je crois 
qu'elle en vaut la peine.

Première idée : parmi les 5 cartes tirées au sort, deux seront 
forcément de la même couleur. Notons-les A et B. L'une d'entre
 elles sera la première que l'on abattra et l'autre la 
dernière, autrement dit celle que le programme devra deviner ; 
ainsi il en connaîtra d'emblée la couleur : ce sera la même 
que celle de la première carte annoncée.

Deuxième idée : pour décider laquelle des cartes A et B on 
abattra en premier, on définit un ordre "circulaire" sur les 
numéros de cartes (le 1 est suivi du 2, le 2 du 3, ... la dame 
du roi, le roi du 1, etc...) et on choisit la première carte 
de façon à ce que l'autre s'en déduise en "ajoutant" un nombre 
inférieur ou égal à 6 ; par exemple si on a un 2 et un 5, on 
commencera par abattre le 2 et on finira par le 5 (car il suffit
 d'additionner 3 pour passer du 2 au 5) ; si on a tiré un 4 et 
une dame, on commencera par la dame (on passe de la dame au 4 
en "ajoutant" 5 puisqu'après la dame viennent dans l'ordre le 
roi, le 1, le 2, le 3 et enfin le 4 ; dans l'autre sens ça ne 
marcherait pas, car la dame est seulement la 8e carte en 
partant du 4).

Troisième idée : les trois cartes du milieu vont coder le nombre 
nécessaire pour passer de la première à la dernière carte 
(nombre qui est donc compris entre 1 et 6) ; pour cela on 
définit, outre l'ordre naturel sur les numéros (du 1 au roi ; 
l'as est donc ici la carte la plus petite), un ordre sur les 
couleurs (ici trèfle < carreau < coeur < pique) de façon à 
pouvoir comparer n'importe quelles cartes du jeu : d'abord par 
le numéro, puis par la couleur (en cas d'égalité de numéro). 
Ainsi, le 2 de coeur est plus petit que le 3 de trèfle 
(car 2 < 3), qui est lui-même plus petit que le 3 de coeur 
(car trèfle < coeur).

Notant alors C, D et E les 3 cartes du milieu, supposons par 
exemple que C < D < E ; alors on choisit de les poser dans 
l'ordre suivant :

C puis D puis E pour coder 1 ;
C puis E puis D pour coder 2 ;
D puis C puis E pour coder 3 ;
D puis E puis C pour coder 4 ;
E puis C puis D pour coder 5 ;
E puis D puis C pour coder 6.

(Remarque : c'est simplement l'ordre lexicographique)

Conclusion : avec cet algorithme, la première carte donne la 
couleur de la dernière, dont le numéro s'obtient en additionnant 
celui de la première au nombre codé par les trois du milieu.

Un exemple pour être plus clair : supposons qu'on tire le 2 et 
le valet de coeur, le 1 de pique, la dame de trèfle et la dame 
de carreau.

- Il y a deux cartes à coeur ; on pose donc d'abord le valet de 
coeur et on garde le 2 pour la fin ; il reste à coder le nombre 
4 avec les 3 cartes restantes (car le 2 est la quatrième carte 
en partant du valet) ;

- Comme 1 < dame et comme trèfle < carreau, l'ordre de ces 3 
cartes est : 1 de pique < dame de trèfle < dame de carreau ; 
pour coder le nombre 4, on choisit donc de poser dans cet ordre :

--- la dame de trèfle ;

--- puis la dame de carreau ;

--- puis le 1 de pique.

L'ordinateur réfléchit alors trois secondes et annonce le 
2 de coeur !

Voilà, j'espère que c'est à peu près clair...
