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
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
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 221808
Url: https://administrator.de/forum/batch-potenzieren-221808.html
Ausgedruckt am: 12.05.2025 um 09:05 Uhr
1 Kommentar
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
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
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
Grüße
bastla