Advertisement
tiom4eg

Solution2

Nov 17th, 2021
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.32 KB | None | 0 0
  1. 2. Во входном файле заданы случайные числа от 1 до 999. Для того, чтобы найти сумму всех чисел в диапазоне (f, s), пройдёмся по всем числам во входном файле и проверим каждое число на принадлежность диапазону.
  2. openfname = "input.txt" # имя входного файла
  3. f = 100
  4. s = 199 # границы диапазона, можно изменять
  5. ofile = open(openfname, "r") # открываем файл с именем openfname при помощи функции open(), открываем ТОЛЬКО ДЛЯ ЧТЕНИЯ (параметр "r")
  6. data = ofile.read().split("\n") # метод read() позволяет представить содержимое в виде строки (текста), метод split("\n") позволяет убрать все переносы строк из файла, чтобы остались только числа
  7. data = list(map(int, data)) # map - метод трансформации контейнеров, который принимает в себя два аргумента - первый аргумент отвечает за трансформацию (в данном случае каждый элемент превращаем в целое число (int), второй аргумент отвечает за трансформируемый объект (в данном случае data). Поскольку map возвращает итератор, а не контейнер (итератор неудобно использовать), превращаем его в контейнер методом list()
  8. # ура, мы превратили данные из входного файла в удобный вид!
  9. summ = 0 # сумма всех чисел, подходящих под условие
  10. for x in data: # в этот раз пройдёмся не по диапазону, а по контейнеру
  11. if x >= f and x <= s: # x - текущее число, проверяем его на принадлежность диапазону
  12. summ += x # если проверка успешна, прибавляем число к сумме
  13. print(summ) # выводим результат в консоль
  14.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement