diff --git a/TEMA5/Figure_1.png b/TEMA5/Figure_1.png new file mode 100644 index 0000000..5094286 Binary files /dev/null and b/TEMA5/Figure_1.png differ diff --git a/TEMA5/Figure_2.png b/TEMA5/Figure_2.png new file mode 100644 index 0000000..acca508 Binary files /dev/null and b/TEMA5/Figure_2.png differ diff --git a/TEMA5/report.md b/TEMA5/report.md new file mode 100644 index 0000000..3c9be53 --- /dev/null +++ b/TEMA5/report.md @@ -0,0 +1,237 @@ +# Отчет по теме 5 + +Корнеев Максим, А-03-23 + +## 1 Управляющая инструкция if + +```py +>>> porog, rashod1, rashod2 = 5, 7, 4 +>>> if rashod1>=porog: +>>> dohod=12 +>>> elif rashod2==porog: +>>> dohod=0 +>>> else: +>>> dohod=-8 +>>> dohod +12 +>>> if rashod1>=3 and rashod2==4: +>>> dohod=rashod1 +>>> if rashod2==porog or rashod1>> dohod=porog +>>> dohod +7 +>>> if porog==3: +>>> dohod=1 +>>> elif porog==4: +>>> dohod=2 +>>> elif porog==5: +>>> dohod=3 +>>> else: +>>> dohod=0 +>>> dohod +3 +>>> dohod=2 if porog>=4 else 0 +>>> dohod +2 +>>> if porog>=5 : rashod1=6; rashod2=0 +>>> rashod1 +6 +>>> rashod2 +0 +``` + +## 2 Управляющая инструкция for + +```py +>>> temperatura=5 +>>> for i in range(3,18,3): +>>> temperatura+=i +>>> temperatura +50 +>>> sps=[2,15,14,8] +>>> for k in sps: +>>> if len(sps)<=10:sps.append(sps[0]) +>>> else:break +>>> sps +[2, 15, 14, 8, 2, 2, 2, 2, 2, 2, 2] +>>> sps=[2,15,14,8] +>>> for k in sps[:]: +>>> if len(sps)<=10:sps.append(sps[0]) +>>> else:break +>>> sps +[2, 15, 14, 8, 2, 2, 2, 2] +>>> import random as rn +>>> sps5=[] +>>> for i in range(10): +>>> sps5.append(rn.randint(1,100)) +>>> ss=sum(sps5) +>>> if ss>500: break +>>> else: +>>> print(ss) +451 +>>> sps5 +[53, 33, 67, 78, 25, 68, 20, 29, 42, 36] +>>> for i in range(10): +>>> sps5.append(rn.randint(1,100)) +>>> ss=sum(sps5) +>>> if ss>500: break +>>> else: +>>> print(ss) +>>> sps5 +[53, 33, 67, 78, 25, 68, 20, 29, 42, 36, 10, 78] +>>> stroka='Это – автоматизированная система' +>>> stroka1="" +>>> for ss in stroka: +>>> stroka1+=" "+ss +>>> stroka1 +' Э т о – а в т о м а т и з и р о в а н н а я с и с т е м а' +>>> import math +>>> sps2=[math.sin(i*math.pi/5+2) for i in range(100)] +>>> import pylab +>>> t=list(range(100)) +>>> pylab.plot(t, sps2) +[] +>>> pylab.show() +``` +График для spis2: + +![график](Figure_1.png) + +## 3 Управляющая инструкция while + +### 3.1 Цикл со счетчиком +```py +>>> rashod=300 +>>> while rashod: +>>> print("Расход=",rashod) +>>> rashod-=50 +Расход= 300 +Расход= 250 +Расход= 200 +Расход= 150 +Расход= 100 +Расход= 50 +``` + +### 3.2 Пример с символьной строкой +```py +>>> stroka='Расчет процесса в объекте регулирования' +>>> i=0 +>>> sps2=[] +>>> while i>> r=1-2/(1+math.exp(0.1*i)) +>>> sps2.append(r) +>>> print('Значение в момент',i,"=",r) +>>> i+=1 +Значение в момент 0 = 0.0 +Значение в момент 1 = 0.049958374957880025 +Значение в момент 2 = 0.09966799462495568 +Значение в момент 3 = 0.14888503362331795 +Значение в момент 4 = 0.197375320224904 +Значение в момент 5 = 0.2449186624037092 +Значение в момент 6 = 0.2913126124515909 +Значение в момент 7 = 0.3363755443363322 +Значение в момент 8 = 0.3799489622552249 +Значение в момент 9 = 0.421899005250008 +Значение в момент 10 = 0.4621171572600098 +Значение в момент 11 = 0.5005202111902354 +Значение в момент 12 = 0.5370495669980353 +Значение в момент 13 = 0.5716699660851172 +Значение в момент 14 = 0.6043677771171636 +Значение в момент 15 = 0.6351489523872873 +Значение в момент 16 = 0.6640367702678489 +Значение в момент 17 = 0.6910694698329307 +Значение в момент 18 = 0.7162978701990245 +Значение в момент 19 = 0.7397830512740043 +Значение в момент 20 = 0.7615941559557649 +Значение в момент 21 = 0.7818063576087741 +Значение в момент 22 = 0.8004990217606297 +Значение в момент 23 = 0.8177540779702878 +Значение в момент 24 = 0.8336546070121553 +Значение в момент 25 = 0.8482836399575129 +Значение в момент 26 = 0.8617231593133063 +Значение в момент 27 = 0.874053287886007 +Значение в момент 28 = 0.8853516482022625 +Значение в момент 29 = 0.8956928738431645 +Значение в момент 30 = 0.9051482536448664 +Значение в момент 31 = 0.9137854901178277 +Значение в момент 32 = 0.9216685544064713 +Значение в момент 33 = 0.9288576214547277 +Значение в момент 34 = 0.935409070603099 +Значение в момент 35 = 0.9413755384972874 +Значение в момент 36 = 0.9468060128462683 +Значение в момент 37 = 0.9517459571646616 +Значение в момент 38 = 0.9562374581277391 +>>> t=list(range(len(sps2))) +>>> pylab.plot(t, sps2) +[] +>>> pylab.show() +``` +График значений r: + +![график](Figure_2.png) + +### 3.3 Определение, является ли число простым +```py +>>> chislo=list(range(250,301)) +>>> for i in chislo: +>>> kandidat =i // 2 +>>> while kandidat > 1: +>>> if i%kandidat == 0: +>>> print(i, ' имеет множитель ', kandidat) +>>> break +>>> kandidat -= 1 +>>> else: +>>> print(i, ' является простым!') +250 имеет множитель 125 +251 является простым! +252 имеет множитель 126 +253 имеет множитель 23 +254 имеет множитель 127 +255 имеет множитель 85 +256 имеет множитель 128 +257 является простым! +258 имеет множитель 129 +259 имеет множитель 37 +260 имеет множитель 130 +261 имеет множитель 87 +262 имеет множитель 131 +263 является простым! +264 имеет множитель 132 +265 имеет множитель 53 +266 имеет множитель 133 +267 имеет множитель 89 +268 имеет множитель 134 +269 является простым! +270 имеет множитель 135 +271 является простым! +272 имеет множитель 136 +273 имеет множитель 91 +274 имеет множитель 137 +275 имеет множитель 55 +276 имеет множитель 138 +277 является простым! +278 имеет множитель 139 +279 имеет множитель 93 +280 имеет множитель 140 +281 является простым! +282 имеет множитель 141 +283 является простым! +284 имеет множитель 142 +285 имеет множитель 95 +286 имеет множитель 143 +287 имеет множитель 41 +288 имеет множитель 144 +289 имеет множитель 17 +290 имеет множитель 145 +291 имеет множитель 97 +292 имеет множитель 146 +293 является простым! +294 имеет множитель 147 +295 имеет множитель 59 +296 имеет множитель 148 +297 имеет множитель 99 +298 имеет множитель 149 +299 имеет множитель 23 +300 имеет множитель 150 +``` \ No newline at end of file diff --git a/TEMA5/task.md b/TEMA5/task.md new file mode 100644 index 0000000..33cb240 --- /dev/null +++ b/TEMA5/task.md @@ -0,0 +1,89 @@ +# Общее контрольное задание по теме 5 + +Корнеев Максим, А-03-23 + +## Задание + +Реализовать, записать в текстовый файл программы и результаты их выполнения при решении следующих задач: +* Для заданной символьной строки с англоязычным текстом (его можно заимствовать из помощи) определите порядковый номер каждой буквы в английском алфавите. +* Создайте список со словами из задания данного пункта. Для этого списка – определите, есть ли в нем некоторое заданное значение, и выведите соответствующее сообщение: либо о нахождении элемента, либо о его отсутствии в списке (проверить как с имеющимся, так и с отсутствующим словом). +* Создайте список студентов вашей группы (3-4 фамилии) и список их средних баллов в летней сессии – в порядке перечисления студентов в первом списке. Создайте еще 2 аналогичных списка для тех же студентов, но в другом порядке, по зимней сессии. Напишите инструкции, позволяющие по указанной (запрошенной и введенной) фамилии студента вывести его средние баллы по двум сессиям. + +## Решение + +1) +```py +>>> import string +>>> stroka='Help on built-in function print in module builtin' +>>> for i in stroka.lower(): +>>> num = string.ascii_lowercase.find(i) +>>> if num >= 0: +>>> print(f'Порядковый номер буквы {i} в англйском алфавите: {num+1}') +Порядковый номер буквы h в англйском алфавите: 8 +Порядковый номер буквы e в англйском алфавите: 5 +Порядковый номер буквы l в англйском алфавите: 12 +Порядковый номер буквы p в англйском алфавите: 16 +Порядковый номер буквы o в англйском алфавите: 15 +Порядковый номер буквы n в англйском алфавите: 14 +Порядковый номер буквы b в англйском алфавите: 2 +Порядковый номер буквы u в англйском алфавите: 21 +Порядковый номер буквы i в англйском алфавите: 9 +Порядковый номер буквы l в англйском алфавите: 12 +Порядковый номер буквы t в англйском алфавите: 20 +Порядковый номер буквы i в англйском алфавите: 9 +Порядковый номер буквы n в англйском алфавите: 14 +Порядковый номер буквы f в англйском алфавите: 6 +Порядковый номер буквы u в англйском алфавите: 21 +Порядковый номер буквы n в англйском алфавите: 14 +Порядковый номер буквы c в англйском алфавите: 3 +Порядковый номер буквы t в англйском алфавите: 20 +Порядковый номер буквы i в англйском алфавите: 9 +Порядковый номер буквы o в англйском алфавите: 15 +Порядковый номер буквы n в англйском алфавите: 14 +Порядковый номер буквы p в англйском алфавите: 16 +Порядковый номер буквы r в англйском алфавите: 18 +Порядковый номер буквы i в англйском алфавите: 9 +Порядковый номер буквы n в англйском алфавите: 14 +Порядковый номер буквы t в англйском алфавите: 20 +Порядковый номер буквы i в англйском алфавите: 9 +Порядковый номер буквы n в англйском алфавите: 14 +Порядковый номер буквы m в англйском алфавите: 13 +Порядковый номер буквы o в англйском алфавите: 15 +Порядковый номер буквы d в англйском алфавите: 4 +Порядковый номер буквы u в англйском алфавите: 21 +Порядковый номер буквы l в англйском алфавите: 12 +Порядковый номер буквы e в англйском алфавите: 5 +Порядковый номер буквы b в англйском алфавите: 2 +Порядковый номер буквы u в англйском алфавите: 21 +Порядковый номер буквы i в англйском алфавите: 9 +Порядковый номер буквы l в англйском алфавите: 12 +Порядковый номер буквы t в англйском алфавите: 20 +Порядковый номер буквы i в англйском алфавите: 9 +Порядковый номер буквы n в англйском алфавите: 14 +``` + +2) +```py +>>> value = 'Для' +>>> if value in words: print(f'{value} is in the list') +>>> else: print(f'{value} is not in the list') +Для is in the list +>>> value = 'Hello' +>>> if value in words: print(f'{value} is in the list') +>>> else: print(f'{value} is not in the list') +Hello is not in the list +``` + +3) +```py +>>> stud_summer = ['Корнеев', 'Гордевских', 'Немецкий'] +>>> marks_summer = [3.5, 4.9, 3.1] +>>> stud_winter = ['Гордевских', 'Немецкий', 'Корнеев'] +>>> marks_winter = [3.0, 4.3, 5.0] +>>> name = input('Введите фамилию студента: ') +>>> print(f'Средний балл за летнюю сессию {name}: ', marks_summer[stud_summer.index(name)]) +>>> print(f'Средний балл за зимнюю сессию {name}: ', marks_winter[stud_winter.index(name)]) +Введите фамилию студента: Корнеев +Средний балл за летнюю сессию Корнеев: 3.5 +Средний балл за зимнюю сессию Корнеев: 5.0 +``` \ No newline at end of file