Page 1 sur 1

L’opérateur « ^ » ?

Publié : sam. 09/avr./2005 20:08
par Dräc
Dans la section « Variables et Types » de l’aide PB, on y trouve le tableau suivant :
Priorité des opérateurs
Niveau de priorité | Opérateurs
--------------------+---------------------
7 (maximum) | ~
6 | <<, >>, %, ^
5 | |, &
4 | *, /
3 | +, -
2 | >, >=, <, <=, =, <>
1 (minimum) | And, Or
Que représente l’opérateur « ^ » ?

Publié : sam. 09/avr./2005 20:22
par cha0s
c'est pas la puissance?

Publié : sam. 09/avr./2005 20:29
par flaith
C'est tout ce qui reste, donc ca doit surement être çà !

Publié : sam. 09/avr./2005 20:41
par Dr. Dri
C'est peut etre le xor
jr le vois pas dans la liste là

normalement c'st le ! mais... y'a k'à tester...

Dri

Publié : ven. 15/avr./2005 14:29
par KarLKoX
C'est bien le xor.

Publié : ven. 15/avr./2005 15:41
par Dräc
Je suis amusé par vos réponses ! :)
L’opération XOR est réalisée en Pure via l’opérateur « ! »
Pour s’en convaincre :

Code : Tout sélectionner

Debug 1 !1
Mais la même chose avec l’opérateur « ^ » ne donne rien : cela provoque meme une erreur.
Je vous invite donc à faire le test.

Si vous me dite que l’opérateur « ^ » est le OU exclusif en C/C++, soit, c’est vrai!
Mais l’opérateur « ^ » n’a visiblement pas d’existence en PureBasic.

Mon premier post soulignait qu’il y avait probablement une coquille dans la doc, à moins que l'on me démontre le contraire!
Ca sent le copier-coller :D

A+ :wink:

Publié : ven. 15/avr./2005 16:04
par Anonyme2
Tu as contolé avec la doc anglaise pour voir ?

Publié : ven. 15/avr./2005 17:21
par Dräc
Je viens de télécharger la doc anglais.
Si on part sur le raisonnement que la version anglaise est la version officielle, il semble qu’elle ne comporte pas plus de réponse: on retrouve la même page que la version francaise.
D’autre part, il est impossible de recherche du symbole « ^ » autant sur l'une que sur l'autre (d’ailleurs ca plante sur la version anglaise) et mon expérience sur le langage, autant coté doc qu’applicative, ne m’a jamais amené à trouver un « ^ » ailleurs.

Publié : ven. 15/avr./2005 17:39
par Dräc
Ah! J’ai trouvé quelque chose:
La doc anglais comporte un chapitre supplémentaire « Additional Informations »
Et l’on trouve notamment:

Code : Tout sélectionner

  2) Multiply each symbol by the weight for that column (the weight being
     calculated by 'B' raised to the power of the column number):
       a * B^4 = a * B * B * B * B
       b * B^3 = b * B * B * B
       c * B^2 = c * B * B
       d * B^1 = d * B
       e * B^0 = e
L’opérateur "^" serait donc bien l'operateur puissance, mais cela ne fonctionne malheureusement pas chez moi! :?

Publié : ven. 15/avr./2005 17:40
par Le Soldat Inconnu
idem chez moi

Publié : ven. 15/avr./2005 17:45
par Dräc
En fait j’ai bien peur que « ^ » ne soit mentionné dans la doc anglais que par commodité de notation car on y lit aussi:

Code : Tout sélectionner

 In this example, ^ means raised to the power of, so 10^2 means 10 raised to the power of 2.
  Column number              3     2     1     0
  Weight (index type)     10^3  10^2  10^1  10^0
  Weight (actual value)   1000   100    10     1
  Example number (1234)      1     2     3     4
Donc, l’opérateur n’existe pas encore en tant que tel dans Pure…

Publié : ven. 15/avr./2005 17:50
par Dräc
Plus explicite (en début de chapitre en plus):

Code : Tout sélectionner

 (Note: These examples use the ^ symbol to mean 'raised to the power of' - this is only for convenience in this document, PureBasic does not currently have a power-of operator! Use the PureBasic command Pow() from the "Math" Library instead.)
Bon j’arrête là !...: (vous noterez le ^ ds cette derniere phrase :) )