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
» Logiciel de planétarium.
Encore un mystère, mais avec les opérations Emptypar Pedro Aujourd'hui à 7:08

» Un autre pense-bête...
Encore un mystère, mais avec les opérations Emptypar Froggy One Jeu 21 Nov 2024 - 14:54

» Récupération du contenu d'une page html.
Encore un mystère, mais avec les opérations Emptypar Pedro Sam 16 Nov 2024 - 13:04

» Décompilation
Encore un mystère, mais avec les opérations Emptypar JL35 Mar 12 Nov 2024 - 18:57

» Un album photos comme du temps des grands-mères
Encore un mystère, mais avec les opérations Emptypar jjn4 Mar 12 Nov 2024 - 16:23

» traitement d'une feuille excel
Encore un mystère, mais avec les opérations Emptypar jjn4 Jeu 7 Nov 2024 - 2:52

» Aide-mémoire mensuel
Encore un mystère, mais avec les opérations Emptypar jjn4 Lun 4 Nov 2024 - 17:56

» Des incomprèhension avec Timer
Encore un mystère, mais avec les opérations Emptypar Klaus Mer 30 Oct 2024 - 17:26

» KGF_dll - nouvelles versions
Encore un mystère, mais avec les opérations Emptypar Klaus Mar 29 Oct 2024 - 16:58

» instructions panoramic
Encore un mystère, mais avec les opérations Emptypar maelilou Lun 28 Oct 2024 - 18:51

» Figures fractales
Encore un mystère, mais avec les opérations Emptypar Marc Ven 25 Oct 2024 - 10:18

» Panoramic et Scanette
Encore un mystère, mais avec les opérations Emptypar Yannick Mer 25 Sep 2024 - 20:16

» Editeur d étiquette avec QR évolutif
Encore un mystère, mais avec les opérations Emptypar JL35 Lun 23 Sep 2024 - 20:40

» BUG QR Code DelphiZXingQRCode
Encore un mystère, mais avec les opérations Emptypar Yannick Dim 22 Sep 2024 - 9:40

» fichier.exe
Encore un mystère, mais avec les opérations Emptypar leclode Ven 20 Sep 2024 - 17:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
-20%
Le deal à ne pas rater :
Drone Dji DJI Mini 4K (EU)
239 € 299 €
Voir le deal

 

 Encore un mystère, mais avec les opérations

Aller en bas 
4 participants
AuteurMessage
jjn4

jjn4


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

Encore un mystère, mais avec les opérations Empty
MessageSujet: Encore un mystère, mais avec les opérations   Encore un mystère, mais avec les opérations EmptyLun 22 Juil 2013 - 12:48

Prenez le code suivant :
Code:
print 17/26*100    : rem  --> 0.00653846153846154
print (17/26)*100  : rem  --> 65.3846153846154
(je vous ai mis le résultat en rem)

Moi, je trouve ça bizarre, pas vous ?
J'avais toujours appris que les multiplications
et les divisions étaient commutatives !

scratch scratch alien scratch scratch 
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
Klaus

Klaus


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

Encore un mystère, mais avec les opérations Empty
MessageSujet: Re: Encore un mystère, mais avec les opérations   Encore un mystère, mais avec les opérations EmptyLun 22 Juil 2013 - 14:14

C'est un bug. La multiplication est bien commutative, mais la division ne l'est pas. Or, dans ce cas, on s'attend intuitivement que Panoramic interprète l'expression de gauche à droite, en présence d'opérateurs de même priorité. Mais ce n'est pas le cas. Panoramic semble exécuter de droite à gauche. Mais même ça, ce n'est pas vrai. La preuve:
Code:

print 17/26*100    : rem  --> 0.00653846153846154
print (17/26)*100  : rem  --> 65.3846153846154

print 17/26        : rem  --> 0.653846153846154
print 17/2600      : rem  --> 0.00653846153846154
print 17/2600*10      : rem  --> 0.000653846153846154
print 17/26*100*10    : rem  --> 0.0653846153846154

Je pense que c'est ) Jack de jouer...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Encore un mystère, mais avec les opérations Empty
MessageSujet: Re: Encore un mystère, mais avec les opérations   Encore un mystère, mais avec les opérations EmptyLun 22 Juil 2013 - 18:07

Encore un mystère, mais avec les opérations Text110
D’une manière générale :
1. les calculs contenus entre parenthèses  sont prioritaires sur les calculs situés en dehors de ces parenthèses.
2. les exposants sont prioritaires sur les multiplications, divisions, additions et soustractions;
3. les multiplications et divisions sont prioritaires sur les additions et soustractions.

On commence par les parenthèses; elles indiquent les calculs à effectuer en premier. On commence par les parenthèses les plus internes.
En l'absence de parenthèses, on effectue les calculs dans l'ordre suivant:
    -les puissances
    -les multiplications (et les divisions)
    -les additions (et les soustractions)

Pour les opérateurs de même priorité, on effectue le calcul de gauche à droite (comme on le lit !)

Priorités classées par ordre décroissant; les opérateurs sur une même ligne ayant une priorité égale (on évalue alors de gauche à droite).

()
+ - not unaire
power exponentiation
* / div mod and multiplicatif
+ - or additif
=  <>  <  <=  >=  >  relation



Personnellement comment je m’y prends :

Comme la priorité des opérations  semble varier suivant le langage utilisé, donc, pour ne pas me poser trop de questions, je place  des parenthèses là où il faut pour fixer la priorité telle que je  la souhaite.
Et le code n'en sera que plus lisible !
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jack
Admin
Jack


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

Encore un mystère, mais avec les opérations Empty
MessageSujet: Re: Encore un mystère, mais avec les opérations   Encore un mystère, mais avec les opérations EmptyLun 22 Juil 2013 - 18:49

Dans le doute, il vaut mieux mettre des parenthèses car un calcul entre parenthèses s'effectue en priorité.

Pour évaluer une expression, PANORAMIC fait des cycles jusqu'à ce qu'il n'y ait plus rien à évaluer.
Lors d'un cycle, il évalue dans l'ordre :
la multiplication
la division
l'addition
la soustraction
les fonctions numériques retournant un nombre
les fonctions numérique retournant une chaine
les fonctions sur les chaines de caractères
les variables indicées à 1 dimension
les variables indicées à 2 dimensions
les nombres entre parenthèses
la concaténation

Je préciserai cela dans la documentation.
Revenir en haut Aller en bas
https://panoramic.1fr1.net En ligne
Klaus

Klaus


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

Encore un mystère, mais avec les opérations Empty
MessageSujet: Re: Encore un mystère, mais avec les opérations   Encore un mystère, mais avec les opérations EmptyLun 22 Juil 2013 - 21:17

Ah, ça, c'est une précision intéressante ! En effet, ainsi que l'a si bien dit Papydall, cela diffère un peu de l'ordre "habituel" (si j'ose dire), car cela induit une priorité pus grande à la multiplication qu'à la division, pour ne relever que cela. Il faudra donc prendre l'habitude de placer des parenthèses pour imposer l'ordre d'évaluation.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Encore un mystère, mais avec les opérations Empty
MessageSujet: Re: Encore un mystère, mais avec les opérations   Encore un mystère, mais avec les opérations EmptyMar 23 Juil 2013 - 0:38

En toute rigueur, la division n’est en fait qu’une multiplication, au même titre que la soustraction n’est qu’une addition !
En effet, diviser A par B est équivalent à multiplier A par l’inverse de B : A / B = A * (1/B)
Soustraire B de A est équivalent à additionner A et  l’opposé de B : A - B = A + (-B).
Donc, multiplication et division doivent avoir la même priorité .
De même, addition et soustraction doivent avoir la même priorité .

Panoramic se comporte légèrement différent (comme l’a si bien précisé Jack), alors, comme je l’écrivais ci-haut:
placez des parenthèses là où il faut pour fixer la priorité telle que vous la souhaiter.
Ainsi vous gagnez sur deux coups :
1/ Vous éliminez le doute.
2/ Votre code n’est sera que plus lisible.

Pour conclure : A chacun sa méthode.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jjn4

jjn4


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

Encore un mystère, mais avec les opérations Empty
MessageSujet: +++   Encore un mystère, mais avec les opérations EmptyMer 24 Juil 2013 - 16:44

Ah, voilà !!!
Mathématiques et informatique
sont deux choses différentes !
(qui a dit que c'était les mamelles de la France ?)
Laughing Laughing alien Laughing Laughing 
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
Contenu sponsorisé





Encore un mystère, mais avec les opérations Empty
MessageSujet: Re: Encore un mystère, mais avec les opérations   Encore un mystère, mais avec les opérations Empty

Revenir en haut Aller en bas
 
Encore un mystère, mais avec les opérations
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Bug avec la priorité des opérations arithmétiques ?
» Mystère avec la beauté fractale !
» Un petit début mais un bug avec BUTTON
» RIEN A VOIR AVEC PANORAMIC MAIS Ils arrivent !
» Mystère sur file_find_first$ et compagnie

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: