a = [58, 64, 2, 79, 92, 46, 80, 54, 50, 86, 72, 50, 84, 37, 76, 84, 14, 60, 99, 65, 66, 47, 28, 48, 38, 51, 17, 51, 6, 73, 20, 5, 83, 15, 43, 76, 93, 53, 65, 15, 91, 64, 86, 1, 63, 82, 96, 96, 35, 62, 37, 55, 51, 39, 96, 5, 24, 31, 23, 45, 75, 100, 81, 57, 67, 1, 55, 21, 80, 77, 89, 13, 75, 7, 49, 28, 31, 30, 41, 1, 57, 58, 75, 42, 14, 47, 64, 59, 9, 95, 59, 68, 74, 60, 99, 93, 39, 38, 65, 24] minimum = a[0] # Kleinster Wert minpos=0 # Index vom kleinstem Wert maximum = a[0] # Grösster Wert maxpos=0 # Index vom grössten Wert maxlen = 1 # Maximale Länge aufsteigender Sequenz inclen = 1 # Aktuelle Länge der Sequenz incpos = 0 # Startposition der längsten Sequenz oddlen = 0 # Aktuelle Länge ungerader Sequenz oddpos = 0 # Startposition der längsten Sequenz maxodd = 0 # Maximale Länge der Sequenz, die bis jetzt gefunden wurde. for i in range(len(a)): if a[i]maximum: # grösseres Element? maximum=a[i] maxpos = i if i>0 and a[i]>a[i-1]: # Aufsteigend? inclen+=1 if (inclen>maxlen): # Besser als bereits gefunden? maxlen=inclen incpos = i-maxlen+1 else: inclen=1 # Nicht aufsteigend, Beginn neuer Sequenz if a[i]%2==1: # Ungerade? oddlen+=1 if oddlen>maxodd: maxodd=oddlen oddpos = i-maxodd+1 else: # Gerade oddlen=0 print("Minimum %d bei Index %d" % (minimum, minpos)) print("Maximum %d bei Index %d" % (maximum, maxpos)) print("Aufsteigende Sequenz mit Länge %d, Start bei %d, Sequenz %s" % (maxlen, incpos, str(a[incpos:(incpos+maxlen)]))) print("Ungerade Sequenz mit Länge %d, Start bei %d, Sequenz %s" % (maxodd, oddpos, str(a[oddpos:(oddpos+maxodd)])))