Page 1 sur 1
multiplication entier par bool
Posté : 25 mai 2021, 15:52
par insat07
Bonjour
je veux faire l operation suivante y=val1*n1+val2*n2 avec n1 et n2 de type BOOL
Comment je peux multilplier un entier avec booleen. J utilise rslogix5000 (strutured text)
Merci
Re: multiplication entier par bool
Posté : 25 mai 2021, 16:39
par Vicnnet
Pas possible à mon avis
Il faudrait passer par une variable intermédiaire (Entier)

Re: multiplication entier par bool
Posté : 25 mai 2021, 16:46
par insat07
Vicnnet a écrit : ↑25 mai 2021, 16:39
Pas possible à mon avis
Il faudrait passer par une variable intermédiaire (Entier)
merci comment on peut le faire
Re: multiplication entier par bool
Posté : 25 mai 2021, 17:01
par Vicnnet
Avec un bout de code de ce style par exemple :
IF n1 THEN
n1temp :=1;
ELSE
n1temp :=0;
END_IF;
//SIMILAIRE POUR n2...
y=val1*n1temp +val2*n2temp
Re: multiplication entier par bool
Posté : 25 mai 2021, 17:14
par DurandO
Bonjour,
Code : Tout sélectionner
y:=0;
IF n1 THEN
y := y + val1;
END_IF;
IF n2 THEN
y := y + val2;
END_IF;
Etc...
Re: multiplication entier par bool
Posté : 09 août 2021, 13:34
par AC23
Bonjour,
il ya aussi la solution suivante:
Code : Tout sélectionner
IF n1 AND n2 THEN
y := val1+val2;
ELSIF n1 THEN
y := val1;
ELSIF n2 THEN
y := val2;
ELSE
y := 0;
END_IF
Re: multiplication entier par bool
Posté : 09 août 2021, 16:19
par itasoft
slts,
par équation booléenne:
n1_INT.0:=n1;
n2_INT.0:=n2;
------------
ça veut dire que si n1 et n2 sont false y=0 c'est bien ça que tu veux ?
Re: multiplication entier par bool
Posté : 09 août 2021, 19:41
par Lorent2
insat07 a écrit : ↑25 mai 2021, 15:52
Bonjour
je veux faire l operation suivante y=val1*n1+val2*n2 avec n1 et n2 de type BOOL
Comment je peux multilplier un entier avec booleen. J utilise rslogix5000 (strutured text)
Merci
Tests :
Si n1 = 0 & n2 =0 : y = 0
Si n1 = 0 & n2 =1 : y = val2
Si n1 = 1 & n2 =0 : y = val1
Si n1 = 1 & n2 =1 : y = val1 + val2