QUATRE-CALC
4X4: KM[00000] : remplir le bidon de 9 litres
4X4: KM[00010] : vider le bidon de 9 litres dans le bidon de 7 litres
4X4: KM[00020] : go !!!
* RAJOUT D'UN BIDON DE 9 LITRE(S) A L'EQUIPEMENT
* RAJOUT D'UN BIDON DE 7 LITRE(S) A L'EQUIPEMENT
-- RESERVOIR : 0
-- BIDON DE 9 : 2 LITRE(S)
-- BIDON DE 7 : 7 LITRE(S)
-- CYCLES-MOTEUR : 3
Le language QUATRE-CALC est fondé sur une modélisation trés simple de l'Univers qui est uniquement composé de listes, de 4X4 et de bidons.
Les principales caractéristiques du langage QUATRE-CALC sont:
- SIMPLICITE : syntaxe basée sur celle de COBOL
- SOUPLESSE : des mots clefs différents peuvent représenter la même action (TACHE = CORVEE = PROCEDURE = CALCUL = TO-DO-LIST = ..), ce qui évite au programmeur tout sentiment de lassitude ou d'ennui.
- FACILITE d'apprentissage et d'écriture : une seule instruction arithmétique (VIDER)
- PERFORMANCE : l'instruction VIDER effectue deux opérations à la fois : une addition et une soustraction
- PUISSANCE : le programmeur dispose de jusqu'à 2000000000 de BIDONS (tous de capacité différente)
Les instructions élémentaires sont :
- REMPLIR un BIDON. Ex: REMPLIR LE BIDON DE 42 LITRES
- VIDER un BIDON dans un autre BIDON (tout débordement sera vérifié et évité par le moteur QUATRE-CALC)
- VERIFIER le contenu d'un BIDON
- SI VIDE, PLEIN, ou MI-PLEIN
- ALLER quelque part ou FAIRE quelque chose
- COMPARER le contenu d'un BIDON et d'un autre BIDON
- SI MOINS-PLEIN, PLUS-PLEIN, ou EGAL
- ALLER (GOTO) quelque part ou FAIRE quelque chose. Ex : ALLER AU MUSEE-DE-L-ERMITAGE
- APPELER une PROCEDURE, CORVEE ou TACHE
- GPS une-position : noter une position. Ex: GPS MUSEE-DE-L-ERMITAGE
- EMPILER le BIDON N : cette instruction trés puissante duplique le BIDON N et le met en haut de la pile des BIDONS dupliqués.
- DEPILER dans bidon M : cette instruction vide (ajoute) le contenu du BIDON haut de pile dans le BIDON M. Le BIDON haut-de-pile est ensuite jeté.
Instructions d'entrées/sorties
- CRIER (ou CIBI) un-message-quelconque
- SMS BIDON DE 666 LITRES : le BIDON de 666 LITRES (par exemple) envoie un SMS indiquant sa position et son contenu.
Instructions spéciales
- COLMATER le BIDON B : aprés cette opération le contenu du BIDON B colmaté est INDEFINI.
- INVENTAIRE : afficher le contenu de tous les BIDONS
- SURVEILLER LE BIDON DE N LITRES : ce BIDON signalera tous ses changemenst d'états (VIDE,PLEIN,MI-PLEIN)
- CHECK-LIST (TACHE-RECURRENTE, A-FAIRE-TOUT-LE-TEMPS) : cette liste d'instruction est exécutée à chaque cycle-moteur
- REVEIL N : Executer la tâche suivante toutes les N millisecondes (voir exemple)
- Le BIDON HORLOGE (PENDULE) est magique: Il se remplit tout seul 1 LITRE/SEC (temps réel)
Divers
- STOP
- RODAGE N : limite le nombre de cycles-moteur à N
- FEUX-D-AVERTISSEMENT-SI-BIDON-VIDE (WARNING) : WARNING ON ou OFF. surveillance de tous les bidons.
Commandes : Ce ne sont pas des instructions mais des commandes intégrées dans l'environnement de programmation VISUAL-QUATRE-CALC-PRO-EDITION-DE-LUXE (IDPVQ):
- touche CTRL-C : interrompt l'exécution en cours
- ? : aide
- GO : lancer l'éxecution des instructions précédentes ou du fichier lu.
- INIT : remet tous les compteurs à ZERO
- MELANGE : Mélange les bidons présents dans le but d'obtenir la quantité désirée
- I : INVENTAIRE
- LIRE un-fichier-source-quatrecalq - Ex: LIRE exemple.txt - ensuite GO -
- Q : quitter l'IDPVQ
- ALIAS mot-connu mot-nouveau. Ex: ALIAS VIDER BOIRE. Permet de traduire QUATRE-CALC dans l'idiome de son choix, ou de définir de nouveaux mots clef.
- ALIAS nombre mot-nouveau. Ex ALIAS 666 FIN-DU-MONDE. REMPLIR FIN-DU-MONDE
- Raccourci : $1 est équivalent à 1000000001, $2 à 1000000002, etc.
Simple programme QUATRE-CALC :
4X4: KM[00000] : CRIER HELLO-WORLD
4X4: KM[00000] : GO
-- KM:00000 'HELLO-WORLD'
Exemple de CORVEE QUATRE-CALC.
Multiplication des contenus des bidons 1000000002 et 1000000003 - Résultat dans le bidon 1000000001
COMMENTAIRE $1 = 1000000001, etc.
CORVEE MULTIPLICATION -- entrée $2 & $3 - retour dans $1
VIDER $1
DUPLIQUER-ET-EMPILER $3
GPS MULTIPLIE-ENCORE
VERIFIER $3
SI VIDE
ALLER-A MULTIPLICATION-FINIE
VIDER LE BIDON 1
VERSER LE BIDON $3 DANS LE BIDON 1
DUPLIQUER-ET-EMPILER $2
DEPILER DANS $1
ALLER-A MULTIPLIE-ENCORE
GPS MULTIPLICATION-FINIE
DEPILER DANS $3
FIN MULTIPLICATION
4X4: KM[02580] : vider-tout
4X4: KM[02590] : remplir 42
4X4: KM[02600] : vider 42 dans $2
4X4: KM[02610] : remplir 666
4X4: KM[02620] : vider 666 dans $3
4X4: KM[02630] : faire une multiplication SVP
4X4: KM[02640] : go
-- RESERVOIR : 1372
-- BIDON DE 1000000003 : 666 LITRE(S)
-- BIDON DE 1000000002 : 42 LITRE(S)
-- BIDON DE 1 : 1 LITRE(S)
-- BIDON DE 1000000001 : 27972 LITRE(S) <== (c'est bien 666x42)
-- BIDON DE 1000000666 : 0 LITRE(S)
-- BIDON DE 2 : 0 LITRE(S)
-- BIDON DE 42 : 0 LITRE(S)
-- BIDON DE 666 : 0 LITRE(S)
-- CYCLES-MOTEUR : 9367
QUATRE-CALC n'eût pas été possible sans les travaux de Gödel, Turing, Church, du docteur Blorer, nexialiste, et de John MacCarthy.
Télécharger VISUAL-QUATRE-CALC-PRO-EDITION-DE-LUXE 1.1.3 pour W****s.
Télécharger le fichier exemple.
Télécharger la bibliothèque mathématique (multiplication, division, pgcd, factorielle, etc.) QUATRE-CALC
Le concours - Envoyez votre votre programme quatre-calc solution, et gagnez un 4X4 -
Deux 4x4 partent en même temps et respectivement de Paris et de Dakar, villes distantes de 10000 km.
Le premier roule à vitesse constante de un km/h, et le second accélère de un km/h toutes les heures.
Au bout de combien de temps le choc aura-t-il lieu ? (à une heure prés).
Solution de Mme Solal C., qui gagne le 4X4 ci-dessous.
Envoyez vos réponses et vos programmes QUATRE-CALC et vos questions