[V5.00 x64 Linux] i % (1 << N) ergibt falsches Ergebnis

Hier werden, insbesondere in den Beta-Phasen, Bugmeldungen gepostet. Das offizielle BugForum ist allerdings hier.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

[V5.00 x64 Linux] i % (1 << N) ergibt falsches Ergebnis

Beitrag von NicTheQuick »

Hallo,

ich habe gerade einen merkwürdigen Bug gefunden und würde darum bitten ihn mir unter anderen Plattformen zu bestätigen.
Hier der Code

Code: Alles auswählen

N = 1
i = 3
Debug i % (1 << N)
Als Ergebnis liefert er 0, obwohl 3 % (1 << 1) = 3 % 2 = 1 sein sollte.

Folgende Variationen des Codes ergeben den Fehler nicht:

Code: Alles auswählen

N = 1
Debug 3 % (1 << N)

Code: Alles auswählen

i = 3
Debug i % (1 << 1)

Code: Alles auswählen

N = 1
i = 3
t = (1 << N)
Debug i % t
Danke!
c4s
Beiträge: 1235
Registriert: 19.09.2007 22:18

Re: [V5.00 x64 Linux] i % (1 << N) ergibt falsches Ergebnis

Beitrag von c4s »

Auf Windows XP x86, PB5.00 kann ich alle vier Fälle bestätigen: Der erste liefter "0", die anderen drei "1".

Interessanterweise funktioniert folgendes aber auch korrekt:

Code: Alles auswählen

N = 1
i = 3
Debug Str(i % (1 << N))
"Menschenskinder, das Niveau dieses Forums singt schon wieder!" — GronkhLP ||| "ich hogffe ihr könnt den fehle endecken" — Marvin133 ||| "Ideoten gibts ..." — computerfreak ||| "Jup, danke. Gruss" — funkheld
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: [V5.00 x64 Linux] i % (1 << N) ergibt falsches Ergebnis

Beitrag von mk-soft »

Auch bei PB v4.61 x86
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: [V5.00 x64 Linux] i % (1 << N) ergibt falsches Ergebnis

Beitrag von STARGÅTE »

kann den Bug bestätigen, PB 5.0 (32 und 64 bit)
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Antworten