keskorian
Goto Top

Batch potenzieren

Hallo,

ich habe letztens versucht ein batch programm zum potenzieren von bestimmten basen zu schreiben und dazu folgenden Code verwendet:

@echo off
set a=1
set /p p=Exponent eingeben:
:a
if %a%==%p% goto 1
set /a e=75*%e%
set /a a=%a%+1
goto a

:1
echo %e%
pause

aus irgendeinem grund kommt aber ab p=20 eine negatives Ergebniss!
Kann mir hier jemand den Grund nennen (verzweifel langsam)

Danke im Vorraus

Content-Key: 221808

Url: https://administrator.de/contentid/221808

Printed on: April 25, 2024 at 22:04 o'clock

Member: bastla
bastla Nov 12, 2013 updated at 21:53:15 (UTC)
Goto Top
Hallo Keskorian und willkommen im Forum!

Abgesehen davon, dass in Deinem Beispiel die Variable %e% keinen Startwert erhält und sich die Schleife auch als Zählschleife der Art
for /L %%i in (1,1,%p%) do set /a e*=75
formulieren ließe, sind Berechnungen in Batch nur ganzzahlig im Bereich -2^31 bis 2^31-1 möglich (thematisiert zB auch hier) - was sich aber natürlich nicht erst bei 75 ^ 20 auswirkt ...

Grüße
bastla