Programmering 1 med Python, begränsa antalet i en vektor till 25!
Hej läser programmering 1 och har fastnat på en uppgift!
Vill begränsa antalet passagerare som stiger på bussen till 25, blir antalet över 25 så ska det stå bussen är full! Har försökt med flera olika metoder men får inte till det! Hur kan jag göra? Tacksam för svar
Uppgiften besrkivs såhär:
I objektet minbuss ska det finns en vektor som håller reda på 25 stycken passagerare. Varje element i vektorn är en ålder.
Man ska inte kunna stoppa in fler passagerare än vad som får plats.
Är bussen full ska man få meddelande om detta och passageraren kan inte stiga på.
MIN KOD:
import replit
from getkey import getkey, keys
#class for the passenger list
class Buss:
passengers = []
number_of_passengers = 0
def run(self):
menuOptions = ["Lägg till passagerare\t", "Visa ålder på alla passagerare\t", "Se total åldern på alla passagerare \t", "Avsluta program...\t"]
menuSelected = 0
while(True):
replit.clear()
print("Välkommen till västtrafik, ange vilken menyval du vill se:")
print("\x1b[?25l")
if menuSelected == 0:
print(menuOptions[0] + "<--")
print(menuOptions[1])
print(menuOptions[2])
print(menuOptions[3])
elif menuSelected == 1:
print(menuOptions[0])
print(menuOptions[1] + "<--")
print(menuOptions[2])
print(menuOptions[3])
elif menuSelected == 2:
print(menuOptions[0])
print(menuOptions[1])
print(menuOptions[2] + "<--")
print(menuOptions[3])
elif menuSelected == 3:
print(menuOptions[0])
print(menuOptions[1])
print(menuOptions[2])
print(menuOptions[3] + "<--")
keyPressed = getkey()
if keyPressed == keys.DOWN and menuSelected + 1 != len(menuOptions):
menuSelected += 1
elif keyPressed == keys.UP and menuSelected >= 1:
menuSelected -=1
elif keyPressed == keys.ENTER:
if menuSelected == 0:
add_passenger(self.passengers)
elif menuSelected == 1:
print_bus(self.passengers)
elif menuSelected == 2:
calc_total_age(self.passengers)
elif menuSelected == 3:
print("\x1b[?25h")
break
#Meny funktioner:
#menuOptions 0
def add_passenger(passengers):
replit.clear()
passenger_age = int(input("Ange åldern på passageraren som ska stiga på Västrafik bussen: "))
print(passenger_age)
passengers.append(passenger_age)
input("Tryck enter för att gå tillbaka till menyval")
#menuOptions 1
def print_bus(passengers):
replit.clear()
print("Ålder på passagerarna som är på bussen :")
print(*passengers, sep = ", ")
input("Tryck enter för att gå tillbaka till menyval")
#menuOptions 2
def calc_total_age(passengers):
replit.clear()
total_age = sum(passengers)
print("Den totala åldern på alla passagerare är " + str(total_age) + " år")
input("Tryck enter för att gå tillbaka till menyval")
class Program:
def __init__(self, *args):
minbuss = Buss()
minbuss.run()
replit.clear()
input("Tack för att ni reste med västtrafik,\n Tryck enter för att avsluta..")
replit.clear()
if __name__ == "__main__":
my_program = Program()