Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

4.3 KiB

# Тест по Тест по модулю 2

Володин Денис, А-02-23

## Задание (Вариант 9)

1) Создайте список с 40 элементами - случайными вещественными числами, равномерно распределенными на интервале от -10 до +25. Числа должны быть округлены до трех знаков после точки.

2) Запросите у пользователя и введите два целых числа: N1 и N2 (оба в диапазоне от 1 до 40 и должно быть N1 меньше N2). Проверьте выполнение этих условий и при невыполнении - сообщите об ошибке и повторите ввод.

3) Рассчитайте по элементам списка, начиная с N1 и до N2 среднее значение и вывести его на экран по шаблону: Для элементов с N1 по N2 среднее равно рассчитанное среднее значение. Значение среднего округлите до двух знаков после точки.

4) Выведите элементы списка с N1 и до N2 в текстовый файл с некоторым именем и с размещением по два элемента на строке с разделителем запятая.

## Решение




>>> import random



>>> import statistics as s



### Задача 1




>>> ls = \[round(random.uniform(-10,25), 3) for i in range(40)]



>>> ls



\[5.593, 11.646, 21.831, 16.838, 7.196, -3.278, 13.094, 10.889, 3.748, -1.791, -8.37, 11.543, 6.465, 14.959, 19.224, 4.497, 18.171, 1.949, 18.913, 10.893, -5.047, 14.986, -0.171, 24.507, 12.176, -0.913, 12.096, -6.397, 2.606, 22.988, 2.624, 3.735, 22.156, -8.006, 2.271, -2.078, 15.368, 7.756, 3.344, 3.355]



### Задача 2


>> while True:



 	print("Введите через пробел два целых числа от 1 до 40, так чтобы первое было меньше второго")



 	N1, N2 = map(int, input("Ввод: ").split())



 	if N1 > N2:



 		print("Первое должно быть меньше второго. Повторите попытку.")



 	elif N1<1:



 		print("Условия ввода не выполнены. Повотрите попытку")



 	elif N1>40:



 		print("Условия ввода не выполнены. Повотрите попытку")



 	elif N2<1:



 		print("Условия ввода не выполнены. Повотрите попытку")



 	elif N2>40:



 		print("Условия ввода не выполнены. Повотрите попытку")



 	else: break





Введите через пробел два целых числа от 1 до 40, так чтобы первое было меньше второго



Ввод: 40 15



Первое должно быть меньше второго. Повторите попытку.



Введите через пробел два целых числа от 1 до 40, так чтобы первое было меньше второго



Ввод: -2 50



Условия ввода не выполнены. Повотрите попытку



Введите через пробел два целых числа от 1 до 40, так чтобы первое было меньше второго



Ввод: 23 35



>>> N1; N2



23



35



### Задача 3




>>> m = s.mean(ls\\\\\\\[N1:N2+1])



>>> print("Для элементов с ", N1, "по", N2, "среднее = ", round(m, 2))



Для элементов с  23 по 35 среднее =  6.75



### Задача 4




>>> import os



>>> os.chdir(r"C:\\\\\\\\Users\\\\\\\\denvo\\\\\\\\OneDrive\\\\\\\\Рабочий стол\\\\\\\\python-labs\\\\\\\\TEMA6")



>>> st=ls\\\\\\\[N1:N2+1]



>>> with open('test1.txt', 'w') as fp:



 	for i in range(len(st)//2+1):



 		fp.write(str(ls\[N1:N2+1]\[2\*i:2\*i+2]) + "\\n")







\[24.507, 12.176]



\[-0.913, 12.096]



\[-6.397, 2.606]



\[22.988, 2.624]



\[3.735, 22.156]



\[-8.006, 2.271]



\[-2.078]