FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Form(résolu)
Du mal à construire un groupe "if then else" Emptypar leclode Aujourd'hui à 17:59

» trop de fichiers en cours
Du mal à construire un groupe "if then else" Emptypar Marc Aujourd'hui à 11:42

» Bataille navale SM
Du mal à construire un groupe "if then else" Emptypar jjn4 Hier à 17:39

» Une calculatrice en une ligne de programme
Du mal à construire un groupe "if then else" Emptypar jean_debord Hier à 8:01

» Gestion d'un système client-serveur.
Du mal à construire un groupe "if then else" Emptypar Pedro Jeu 25 Avr 2024 - 19:31

» Les maths du crocodile
Du mal à construire un groupe "if then else" Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
Du mal à construire un groupe "if then else" Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Du mal à construire un groupe "if then else" Emptypar Froggy One Mer 24 Avr 2024 - 18:38

» Dessine-moi une galaxie
Du mal à construire un groupe "if then else" Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
Du mal à construire un groupe "if then else" Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
Du mal à construire un groupe "if then else" Emptypar papydall Dim 21 Avr 2024 - 23:30

» 2D_fill_color(résolu)
Du mal à construire un groupe "if then else" Emptypar leclode Sam 20 Avr 2024 - 8:32

» Consommation gaz électricité
Du mal à construire un groupe "if then else" Emptypar leclode Mer 17 Avr 2024 - 11:07

» on_key_down (résolu)
Du mal à construire un groupe "if then else" Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
Du mal à construire un groupe "if then else" Emptypar jjn4 Jeu 4 Avr 2024 - 14:42

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Avril 2024
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
2930     
CalendrierCalendrier
Le Deal du moment : -40%
Tefal Ingenio Emotion – Batterie de cuisine 10 ...
Voir le deal
59.99 €

 

 Du mal à construire un groupe "if then else"

Aller en bas 
4 participants
AuteurMessage
dragonno




Nombre de messages : 341
Localisation : Près de Toulouse
Date d'inscription : 22/01/2009

Du mal à construire un groupe "if then else" Empty
MessageSujet: Du mal à construire un groupe "if then else"   Du mal à construire un groupe "if then else" EmptySam 13 Nov 2010 - 12:40

Sur mon code test de panoramic, un code pour diriger un vaisseau, je voudrais placer la commande :

if scancode=32 then gosub laser else sprite_hide 2

Je voudrais faire en sorte que la routine laser soit effectuée pour la condition du if sinon (else) que cela cache le sprite (sprite_hide) mais c'est la construction de la ligne de code qui n'est pas bonne, j'ai un message de label illégal.

Dans la plupart des langages cette écriture de la condition "if then else" peut se faire sur une seule ligne et j'ai l'impression que dans panoramic il faut une ligne pour chaque partie de la condition, je me trompe ?
Revenir en haut Aller en bas
Nardo26

Nardo26


Nombre de messages : 2294
Age : 55
Localisation : Valence
Date d'inscription : 02/07/2010

Du mal à construire un groupe "if then else" Empty
MessageSujet: Re: Du mal à construire un groupe "if then else"   Du mal à construire un groupe "if then else" EmptySam 13 Nov 2010 - 12:47

Oui en effet, moi aussi je trouve dommage (ou alors il y a une subtilité qui m'échappe) qu'on ne puisse pas mettre de else sur la même ligne.
C'est pour cette raison que je fais mes if sous cette forme :
if ...
...
else
....
end_if

ou alors comme cela : (si on se met dans la tête que les ":" correspondent à un CR+LF)

if (a=3) : a=1 : else : a=5 :end_if
Revenir en haut Aller en bas
http://nardo26.lescigales.org
dragonno




Nombre de messages : 341
Localisation : Près de Toulouse
Date d'inscription : 22/01/2009

Du mal à construire un groupe "if then else" Empty
MessageSujet: Re: Du mal à construire un groupe "if then else"   Du mal à construire un groupe "if then else" EmptySam 13 Nov 2010 - 12:57

Merci !!!
Pour ta réponse claire Wink

J'avance Wink


ça marche sans mettre le end_if Wink
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5948
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

Du mal à construire un groupe "if then else" Empty
MessageSujet: Re: Du mal à construire un groupe "if then else"   Du mal à construire un groupe "if then else" EmptySam 13 Nov 2010 - 13:01

J'ajoute que dans le cas sité par Nardo, THEN ne doit pas être employé.
J'ai également été déconcerté par cette manière IF/THEN/ELSE. Question d'habitude.
A+
Revenir en haut Aller en bas
dragonno




Nombre de messages : 341
Localisation : Près de Toulouse
Date d'inscription : 22/01/2009

Du mal à construire un groupe "if then else" Empty
MessageSujet: Re: Du mal à construire un groupe "if then else"   Du mal à construire un groupe "if then else" EmptySam 13 Nov 2010 - 13:03

J'ai employé ça :

Citation :
if scancode=32 then gosub laser : else : sprite_hide 2

ça marche impecc Wink
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12274
Age : 74
Localisation : Ile de France
Date d'inscription : 29/12/2009

Du mal à construire un groupe "if then else" Empty
MessageSujet: Re: Du mal à construire un groupe "if then else"   Du mal à construire un groupe "if then else" EmptySam 13 Nov 2010 - 13:04

Nardo26 a raison: il donne les deux écritures possibles pour réaliser cela.

En Panoramic, le mot-clé THEN introduit UNE SEULE COMMANDE à écécuter en cas de condition vraie d'un IF. Aucun ELSE n'est permis après cela. A la fin de cette seule commande, Panoramic s'attend à une nouvelle commande indépendante. Dans ce cas de figure, il n'y a PAS de directive END_IF !

Si l'on veut utiliser ELSE, il faut utiliser la structure "bloc" de la commande IF:
Code:

IF
... liste de commandes à exécuter si la condition est vraie
ELSE
... liste de commandes à exécuter si la condition est fausse
END_IF

Et cette même construction doit être utilisée si on veut conditionner un bloc par un IF, même sans ELSE:
Code:

IF
... liste de commandes à exécuter si la condition est vraie
END_IF

La difficulté se présente si l'on utilise des lignes de continuation. Essaye ceci:
Code:
dim i%
i% = 3
if i%=2 then print "a" : print "b" else print "x"
if i%=3 then print "c" : print "d"
end
tu verras que ni a ni b ne sont imprimés, mais c et d. Ceci montre qu'après un THEN, LE RESTE DE LA LIGNE est considéré comme étant exécuté uniquement si la condition est vrai. Je pense donc que pour éviter des problèmes, il vaut mieux programmer comme suit:
Code:

IF (condition) THEN ...une seule commande...
IF (condition)
... une liste de commandes
END_IF
IF (condition)
... une liste de commandes
ELSE
... une liste de commandes
END_IF
même si la "liste de commandes" est réduite à une seule commande.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
dragonno




Nombre de messages : 341
Localisation : Près de Toulouse
Date d'inscription : 22/01/2009

Du mal à construire un groupe "if then else" Empty
MessageSujet: Re: Du mal à construire un groupe "if then else"   Du mal à construire un groupe "if then else" EmptySam 13 Nov 2010 - 13:06

Merci Klaus, comme d'hab tu est précis comme un horloger suisse Wink
Revenir en haut Aller en bas
Contenu sponsorisé





Du mal à construire un groupe "if then else" Empty
MessageSujet: Re: Du mal à construire un groupe "if then else"   Du mal à construire un groupe "if then else" Empty

Revenir en haut Aller en bas
 
Du mal à construire un groupe "if then else"
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Construire et résoudre un puzzle
» Comment construire 2 fenêtres
» Construire un masque pour les sprites
» Comment construire un bouton avec un picture
» definir un groupe d' options

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: