Ursprungsmitteilung
Thema repeat scheint Probleme mit long int zu haben 
Autor Stefan Müller 
Eingangsdatum 2018-03-05 17:47:47.0 
Mitteilung Folgendes Programm produziert einen
OverflowError: long int too large to convert to int
wenn für z bspw. eine elfstellige Zahl eingegeben wird:

z = inputInt()
repeat z :
pass

Traceback (most recent call last):
File "/owncloud/stefan/_PUBLIC/KSZ_r/inf/tigerjython/tobiasKohn/2017 skript1/kapitel 3/TEST.py", line 2, in <module>
repeat z - 1 :
OverflowError: long int too large to convert to int

Gruss!
St. Müller 
 
      
Antworten
Thema repeat mit long ints 
Autor Aegidius Plüss 
Eingangsdatum 2018-03-05 21:14:21.0 
Mitteilung Danke für die Forumanfrage. Das Problem ist uns bekannt.

Leider ist es ein Problem von Jython selbst, das wir nicht einfach umgehen können. Schliesslich wird ja "repeat" in ein "for i in xrange()" übersetzt, und das "xrange" akzeptiert nur Integer-(32-Bit)-Werte. Das kann man auch wie folgt nachprüfen:

x = int(2**31-1)
print len(xrange(x))

Es tut mir leid, dass wir mit dieser Einschränkung leben müssen. Es bleibt immerhin die Möglichkeit, eine while-Schleife zu verwenden.
MfG

A.P
TJ Group