s = 0
i = 0
while s < 8000:
a = int(input('Введите вес пассажира: '))
if s + a <= 8000: # Если вес пассажира вместе с весом остальных
i += 1 # пассажиров больше 8000, то считать его не надо
s += a
print(i)
А ваша программа зацикливалась потому, что сумма всех пассажиров может быть не равна 8000, а быть больше.