форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
96 строки
2.6 KiB
Markdown
96 строки
2.6 KiB
Markdown
# Тест по модулю 2
|
|
|
|
Мамакин Ярослав Романович, вариант 19
|
|
|
|
## Задание
|
|
|
|
1) Запросите у пользователя целое число N со значением из диапазона от 10 до 70 (проверить и при необходимости переспросить).
|
|
|
|
2) Создайте список SPS1 с N значениями от -25 с шагом 3. Рассчитайте сумму его элементов. Отобразите список и сумму на экране.
|
|
|
|
3) Устраните из списка каждый 4-й элемент, переписав их в отдельный список SPS2. Проверьте, что сумма элементов SPS1 и SPS2 равна ранее рассчитанной сумме.
|
|
|
|
4) Запросите у пользователя имя текстового файла для вывода результатов.
|
|
|
|
5) Запишите в текстовый файл с указанным именем данные из SPS1 по 3 элемента на строке, разделенные пробелом. Затем в этот же файл допишите данные из SPS2 с новой строки также по 3 элемента на строке.
|
|
|
|
## Решение
|
|
|
|
```py
|
|
import os
|
|
os.chdir(r'C:\Users\uprkt\Desktop\ПО\python-labs\TEMA6')
|
|
got_n = False
|
|
while not got_n:
|
|
n = int(input('Введите целое число от 10 до 70'))
|
|
if n < 70 and n > 9:
|
|
got_n = True
|
|
else:
|
|
print('Число не лежит в нужном диапазоне')
|
|
|
|
Введите целое число от 10 до 703
|
|
Число не лежит в нужном диапазоне
|
|
Введите целое число от 10 до 7033
|
|
sps1 = [i*3 - 25 for i in range(n)]
|
|
sps1
|
|
[-25, -22, -19, -16, -13, -10, -7, -4, -1, 2, 5, 8, 11, 14, 17, 20, 23, 26, 29, 32, 35, 38, 41, 44, 47, 50, 53, 56, 59, 62, 65, 68, 71]
|
|
print(sum(sps1))
|
|
759
|
|
sps2 = sps1[::4];sps2
|
|
[-25, -13, -1, 11, 23, 35, 47, 59, 71]
|
|
del sps1[::4]
|
|
print(sum(sps1) + sum(sps2))
|
|
759
|
|
filename = input('Введите имя файла для записи')
|
|
Введите имя файла для записиspiski.txt
|
|
f = open(filename, 'w')
|
|
for i in range(len(sps1)):
|
|
if i % 3 == 2:
|
|
f.write(str(sps1[i]) + '\n')
|
|
else:
|
|
f.write(str(sps1[i]) + ' ')
|
|
|
|
4
|
|
4
|
|
4
|
|
4
|
|
3
|
|
3
|
|
2
|
|
2
|
|
2
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
>>> for i in range(len(sps2)):
|
|
... if i % 3 == 2:
|
|
... f.write(str(sps2[i]) + '\n')
|
|
... else:
|
|
... f.write(str(sps2[i]) + ' ')
|
|
...
|
|
4
|
|
4
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
3
|
|
>>> f.close()
|
|
```
|
|
|
|

|
|
|