Hallo Leute,
ich muss in einer Aufgabenstellung von der Konsole eine Eingabe einlesen, diese Eingabe wird dann in eine Ganzzahl konvertiert. Beim Konvertieren soll man eventuelle Exceptions abfangen falls sie nicht in eine Ganzzahl konvertierbar ist. Ansonsten wird die Eingabe in einer Liste abgespeichert. Das muss sich dann solange wiederholen bis die Liste 10 Elemente hat. Bis jetzt habe ich das hier aufgeschrieben jedoch scheint dies nicht ganz zu stimmen.
import numpy as np
try:
liste = []
for i in range(10):
liste.append(int(input()))
except ValueError:
print("Keine Ganzzahl")
arr = np.array(liste)
x = arr[1:10:2]
erg = 2*np.cos(x)
summe = print(np.sum(erg))
wenn ich im Programm eine nicht Ganzzahl eingebe bricht er automatisch ab, jedoch sollte er glaube ich weiter nach der Eingabe fragen dies klappt bei mir jedoch nicht.
Kann mir in diesem Fall evtl. jemand helfen?
Exceptions bei einer Eingabe
Du solltest mit Funktionen arbeiten. Schreib dir eine Funktion, welche dir eine Zahl einliest. Und die benutzt du dann 10 mal, und baust deine Liste auf.
Die Funktion muss dann auch mit einer Endlosschleife arbeiten, denn eine Ausnahme abfangen alleine sagt ja nicht magisch "oh, dann mach das alles doch nochmal" - das musst du schon programmieren.
Die Funktion muss dann auch mit einer Endlosschleife arbeiten, denn eine Ausnahme abfangen alleine sagt ja nicht magisch "oh, dann mach das alles doch nochmal" - das musst du schon programmieren.
-
- User
- Beiträge: 5
- Registriert: Freitag 22. Oktober 2021, 10:11
wie meinst du mit einer Endlosschleife? Als Funktion habe ich nun das hier:__deets__ hat geschrieben: Montag 22. November 2021, 17:51 Du solltest mit Funktionen arbeiten. Schreib dir eine Funktion, welche dir eine Zahl einliest. Und die benutzt du dann 10 mal, und baust deine Liste auf.
Die Funktion muss dann auch mit einer Endlosschleife arbeiten, denn eine Ausnahme abfangen alleine sagt ja nicht magisch "oh, dann mach das alles doch nochmal" - das musst du schon programmieren.
def eingabe_einlesen(zahl):
int(input())
return zahl
Na wenn du so lange einlesen sollst, bist der Benutzer eine gueltige Zahl eingegeben hat - dann musst du nunnmal endlos of probieren, eine Eingabe zu bekommen. Denn der kann sich ja endlos oft (ok, nur bis zum Ende des Universums, aber das ist recht lang) verschreiben.