Задачи №15 из ОГЭ по информатике.

Пользователь
Статус
Оффлайн
Регистрация
5 Июл 2022
Сообщения
1,001
Реакции[?]
86
Поинты[?]
23K
Это что то на уровне:
"Вот тебе фича крутая, помогает решать 99% твоих проблем, но ты не юзай ее, ибо ты че, долбоеб что ли? Решай сам, думай как я сделал эту фичу и вообще иди нахуй"
братан, тебе проспаться надо
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,595
Реакции[?]
603
Поинты[?]
44K
А куда проще то? Ты сразу три функции не можешь у себя в голове обработать или как дела обстоят?
Ну на тебе попроще, две функции объединил в одну. Надеюсь с записью динамического количества машин у тебя проблем не возникнет

Python:
_total_cars = 4
_input = [ 74, 69, 63, 96 ]

def get_difference(speeds):
    _max = speeds[0]
    _min = speeds[0]
    for i in range(0, len(speeds)):
        if _max < speeds[i]:
            _max = speeds[i]
      
        if _min > speeds[i]:
            _min = speeds[i]
          
    return _max - _min

def get_speeding_cars(speeds, limit):
    speeding_cars = 0
    for i in range(0, len(speeds)):
        if speeds[i] > limit:
            speeding_cars = speeding_cars + 1
        
    return speeding_cars

def main():
    difference = get_difference(_input)
    speeding_cars = get_speeding_cars(_input, 30)

    print("Difference between max and min speed: ", difference)
    print("Total cars that speeded more 30 than kmph: ", speeding_cars)

main()
А если уж и такие проблемы возникнут, то вот тебе решение

Python:
total_cars = int(input("Ввеедите количество машин: "))
speeds = []
for i in range(0, total_cars):
    speeds.append(int(input()))


def get_difference(speeds):
    _max = speeds[0]
    _min = speeds[0]
    for i in range(0, len(speeds)):
        if _max < speeds[i]:
            _max = speeds[i]
      
        if _min > speeds[i]:
            _min = speeds[i]
          
    return _max - _min

def get_speeding_cars(speeds, limit):
    speeding_cars = 0
    for i in range(0, len(speeds)):
        if speeds[i] > limit:
            speeding_cars = speeding_cars + 1
        
    return speeding_cars

def main():
    difference = get_difference(speeds)
    speeding_cars = get_speeding_cars(speeds, 30)

    print("Difference between max and min speed: ", difference)
    print("Total cars that speeded more 30 than kmph: ", speeding_cars)

main()
speeds[i] можно заменить на speed если делать for speed in speeds:
 
Nike.lua
Олдфаг
Статус
Оффлайн
Регистрация
13 Окт 2020
Сообщения
2,747
Реакции[?]
1,465
Поинты[?]
2K
speeds[i] можно заменить на speed если делать for speed in speeds:
Я не вникал особо в пайтон, прочитал только как итерировать по числам, остальное не было нужно. Просто синтаксический сахар
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,595
Реакции[?]
603
Поинты[?]
44K
Я не вникал особо в пайтон, прочитал только как итерировать по числам, остальное не было нужно. Просто синтаксический сахар
твоя правда мою правду не делает менее правдивой, брат

а вообще,
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Начинающий
Статус
Оффлайн
Регистрация
7 Июл 2021
Сообщения
3
Реакции[?]
0
Поинты[?]
0
Python:
n = int(input())
imax_auto = 1
imin_auto = 300
speed_violators = 0
difference = 0

for i in range(n):
    a = int(input())
    if a > 30:
        speed_violators += 1
    if a < imin_auto:
        imin_auto = a
    if a > imax_auto:
        imax_auto = a

difference = imax_auto - imin_auto

print(difference)
print(speed_violators)
 
Начинающий
Статус
Оффлайн
Регистрация
4 Ноя 2022
Сообщения
11
Реакции[?]
0
Поинты[?]
0
Python:
n = int(input("кол-во машин: "))

min_speed = float('inf')
max_speed = float('-inf')
count = 0

for i in range(n):
    speed = int(input("скорости машин: ".format(i+1)))
    if speed < 1 or speed > 300:
        print("-")
        continue
    if speed < min_speed:
        min_speed = speed
    if speed > max_speed:
        max_speed = speed
    if speed <= 30:
        count += 1
d = max_speed - min_speed

print(d)
print(count)
 
Начинающий
Статус
Оффлайн
Регистрация
27 Янв 2023
Сообщения
2
Реакции[?]
0
Поинты[?]
0
чета коды какие та большие у вас

Python:
n = int(input())
scn = 0
asd = []
for i in range(n):
    sd = int(input())
    asd.append(sd)
    if sd < 30:
        scn = scn + 1
print(max(asd)-min(asd))
print(scn)
 
Сверху Снизу