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
» Une calculatrice en une ligne de programme
[Syntaxe] Utilisation de Select / Case Emptypar jean_debord Aujourd'hui à 8:47

» Form(résolu)
[Syntaxe] Utilisation de Select / Case Emptypar leclode Hier à 17:59

» trop de fichiers en cours
[Syntaxe] Utilisation de Select / Case Emptypar Marc Hier à 11:42

» Bataille navale SM
[Syntaxe] Utilisation de Select / Case Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Gestion d'un système client-serveur.
[Syntaxe] Utilisation de Select / Case Emptypar Pedro Jeu 25 Avr 2024 - 19:31

» Les maths du crocodile
[Syntaxe] Utilisation de Select / Case Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
[Syntaxe] Utilisation de Select / Case Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
[Syntaxe] Utilisation de Select / Case Emptypar Froggy One Mer 24 Avr 2024 - 18:38

» Dessine-moi une galaxie
[Syntaxe] Utilisation de Select / Case Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
[Syntaxe] Utilisation de Select / Case Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
[Syntaxe] Utilisation de Select / Case Emptypar papydall Dim 21 Avr 2024 - 23:30

» 2D_fill_color(résolu)
[Syntaxe] Utilisation de Select / Case Emptypar leclode Sam 20 Avr 2024 - 8:32

» Consommation gaz électricité
[Syntaxe] Utilisation de Select / Case Emptypar leclode Mer 17 Avr 2024 - 11:07

» on_key_down (résolu)
[Syntaxe] Utilisation de Select / Case Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
[Syntaxe] Utilisation de Select / Case 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 : -45%
WHIRLPOOL OWFC3C26X – Lave-vaisselle pose libre ...
Voir le deal
339 €

 

 [Syntaxe] Utilisation de Select / Case

Aller en bas 
3 participants
AuteurMessage
Nardo26

Nardo26


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

[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: [Syntaxe] Utilisation de Select / Case   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 9:27

Bonjour,

Je n'arrive pas à utiliser correctement ces fonctions.

je m'explique, je ne peux pas faire ceci:

Code:
select i%
 case 1:
    if condition=1
      ...
      ...
    else
      ...
      ... 
    end_if
 case 2:
    if condition=1
      ...
      ...
    else
      ...
    end_if
end_select
Actuellement je n'ai rien trouvé d'autre que de faire ceci:
Code:
case 1: gosub case_1
case 2: gosub case_2

Est_ce que je suis obligé de déclarer autant de label et de gosub qu'il y a de case ?
scratch

Ca m'embête d'avoir une foultitude de petites procédures contenant 3 à 4 lignes de code...

de même je que je ne peux pas faire :
if ...
else if ....
else if...
end_if

Comment faites vous ? Question
Revenir en haut Aller en bas
http://nardo26.lescigales.org
Invité
Invité




[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: Re: [Syntaxe] Utilisation de Select / Case   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 9:53

Hello (bonjour - traduction) Nardo

Je ne suis pas d'accord. enlève les deux points après case

tu modifies dans le programme les valeurs de i% et condition à chaque fois, et tout fonctionne.
Code:
dim condition,i%
  i%=2
  condition=1
select i%
 case 1
    if condition=1
        message "condition=1, i%=1"
    else
        message "condition<>1, i%=1" 
    end_if
 case 2
    if condition=1
      message "condition=1, i%=2"
    else
      message "condition<>1, i%=2"
    end_if
end_select

Les fins de semaines sont dures pour ceux qui travaille.

Je rajoute que c'est la version du 30 juillet, la dernière je n'avais pas réussi à la télécharger.
Donc si ça ne marche pas, ce serait dù à la dernière version.
Revenir en haut Aller en bas
Jack
Admin
Jack


Nombre de messages : 2381
Date d'inscription : 28/05/2007

[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: Re: [Syntaxe] Utilisation de Select / Case   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 10:19

Tout à fait. Il n'y a pas de deux-points après case, sauf si on veut mettre une autre instruction sur la ligne, et dans ce cas, on met un deux-points comme on le ferait d'ailleurs pour toute autre ligne que case.
Exemple:
Code:
dim v
v=2
select v
case 1:print "v=1"
case 2:print "v=2"
case 3:print "v=3"
case 4:print "v=4"
case 5:print "v=5"
case 6:print "v=6"
end_select
mais celui-ci fonctionne tout autant:
Code:
dim v
v=2
select v
case 1
  print "v=1"
case 2
  print "v=2"
case 3
  print "v=3"
case 4
  print "v=4"
case 5
  print "v=5"
case 6
  print "v=6"
end_select
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Nardo26

Nardo26


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

[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: Re: [Syntaxe] Utilisation de Select / Case   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 11:36

Merci à tous les deux !

C'est peut-être la syntaxe du langage C qui m'a induit (en non enduit) en erreur...
Une autre petite question et après je pense avoir fait le tour de la question. Smile

Si j'écris ceci en C :
Code:

switch (i%)
{
  case 1:
  case 2:
    ...
  break;
  case 3:
  ...
  break;
  default:
    ....
}
comment puis-je l'écrire en Panoramic ?

stp Jack, regarde ta messagerie... Neutral
Revenir en haut Aller en bas
http://nardo26.lescigales.org
jjn4

jjn4


Nombre de messages : 2690
Date d'inscription : 13/09/2009

[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: +++   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 11:56

Il faudrait que tu nous expliques à quoi sert le break en langage C
et aussi le default.
Si c'est pour faire une sorte de exit_select, ça n'existe pas en panoramic,
on peut toujours utiliser un goto ou faire de façon plus structurelle... ?
scratch
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
Nardo26

Nardo26


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

[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: Re: [Syntaxe] Utilisation de Select / Case   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 12:03

En gros mon exemple signifie :

si i% est égal à 1 ou 2 faire:
....
sinon si i% est égal à 3 faire:
....
sinon : (default)
....
fin_si

le break indique qu'il faut sortie du case...
si j'enleve le break qui se trouve au dessus de case 3 cela équivaut à:

si i% est égal à 1 ou 2 faire:
....
fin_si
si i% est égal à 3 ou 2 ou 1 faire:
....
sinon: (le default)
...
fin_si

bon l'exemple est court, mais dans le cas ou il y a par exemple une bonne dizaine de 'case' l'utilisation de select/end_select devient intéressante...
Revenir en haut Aller en bas
http://nardo26.lescigales.org
jjn4

jjn4


Nombre de messages : 2690
Date d'inscription : 13/09/2009

[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: +++   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 12:20

Le select_case n'est pas si perfectionné en panoramic.
Si tu veux faire comme tu dis (1 ou 2), tu peux employer des gosub,
histoire de ne pas répéter deux fois le même sous-programme.
Exemple :
Code:
select a%
case 1 : gosub tralala
case 2 : gosub tralala
case 3 : ' faire ceci
case 4 : ' faire cela
case 5 : gosub boum
case 6 : gosub boum
end_select
alien
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
Nardo26

Nardo26


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

[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: Re: [Syntaxe] Utilisation de Select / Case   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 12:26

Merci jjn4,

C'est bien ce qui me semblait,mais j'ai quand même posé la question au cas où...
il aurait été intéressant d'avoir une syntaxe du style:
Code:

select i%
  case 1,2
    ...
    exit_select
  case 3
    ...
    exit_select
  default:
    ....
end_select

ben va falloir faire avec des gosub... Wink
Revenir en haut Aller en bas
http://nardo26.lescigales.org
Invité
Invité




[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: Re: [Syntaxe] Utilisation de Select / Case   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 12:36

C'est vrai que case default serait la bien venu. Mais on peut contourner ce manque
Code:
dim condition,i%
  i%=3
  condition=1
 
select i%
 case 1
    if condition=1
        message "condition=1, i%=1"
    else
        message "condition<>1, i%=1" 
    end_if
    i%=0
 case 2
    if condition=1
      message "condition=1, i%=2"
    else
      message "condition<>1, i%=2"
    end_if
  i%=0
end_select
if i%>0 then message "autre teste"
Si on tape une valeur autre que 1 et 2 ici, on traite la demande
Normalement on peut modifier i%, vu que i%a été traité. Sinon avoir une variable qui copie i% avant select.
Revenir en haut Aller en bas
Nardo26

Nardo26


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

[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: Re: [Syntaxe] Utilisation de Select / Case   [Syntaxe] Utilisation de Select / Case EmptySam 16 Oct 2010 - 13:27

merci cosmos pour l'astuce !
c'est tout simple le traitement du default... Very Happy
Revenir en haut Aller en bas
http://nardo26.lescigales.org
Contenu sponsorisé





[Syntaxe] Utilisation de Select / Case Empty
MessageSujet: Re: [Syntaxe] Utilisation de Select / Case   [Syntaxe] Utilisation de Select / Case Empty

Revenir en haut Aller en bas
 
[Syntaxe] Utilisation de Select / Case
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» CASE_ELSE pour la syntaxe select/case/end_select
» else et select case
» SELECT, CASE, END_SELECT
» Problème avec des SELECT...CASE imbriqués
» select, case, end_select

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: