Изменил(а) на 'TEMA5/report5.md'

main
EfimovaLA 2 дней назад
Родитель 9a8c741f38
Сommit 9eca795eb1

@ -1,288 +1,289 @@
# Отчет по теме 5 # Отчет по теме 5
Ефимова Людмила, А-03-23 Ефимова Людмила, А-03-23
## 1. Открыла интерактивуню оболочку IDLE и создала файл отчета. ## 1. Открыла интерактивуню оболочку IDLE и создала файл отчета.
## 2. Ветвление по условию - управляющая конструкция if else ## 2. Ветвление по условию - управляющая конструкция if else
Задали некоторые числовые значения объектам porog, rashod1, rashod2. Выполнили операцию Задали некоторые числовые значения объектам porog, rashod1, rashod2. Выполнили операцию
для определения значения dohod: для определения значения dohod:
```py ```py
porog = 3 porog = 3
rashod1 = 5 rashod1 = 5
rashod2 = 4 rashod2 = 4
if rashod1>=porog: if rashod1>=porog:
dohod=12 dohod=12
elif rashod2==porog: elif rashod2==porog:
dohod=0 dohod=0
else: else:
dohod=-8 dohod=-8
dohod dohod
12 12
if rashod1>=3 and rashod2==4: if rashod1>=3 and rashod2==4:
dohod=rashod1 dohod=rashod1
if rashod2==porog or rashod1<rashod2: if rashod2==porog or rashod1<rashod2:
dohod=porog dohod=porog
dohod dohod
5 5
if porog==3: if porog==3:
dohod=1 dohod=1
elif porog==4: elif porog==4:
dohod=2 dohod=2
elif porog==5: elif porog==5:
dohod=3 dohod=3
else: else:
dohod=0 dohod=0
dohod dohod
1 1
``` ```
Условные инструкции могут записываться также в одну строку в операторе присваивания по Условные инструкции могут записываться также в одну строку в операторе присваивания по
следующей схеме: следующей схеме:
<Объект>=<значение 1> if <условие> else <значение 2> <Объект>=<значение 1> if <условие> else <значение 2>
или или
if <условие>: <инструкция1>[;<инструкция2>….] if <условие>: <инструкция1>[;<инструкция2>….]
```py ```py
dohod=2 if porog>=4 else 0 dohod=2 if porog>=4 else 0
dohod dohod
0 0
if porog>=5 : rashod1=6; rashod2=0 if porog>=5 : rashod1=6; rashod2=0
rashod1, rashod2 rashod1, rashod2
(5, 4) (5, 4)
``` ```
## 3. Цикл по перечислению - управляющая констркуция for ## 3. Цикл по перечислению - управляющая констркуция for
### 3.1. Простой цикл ### 3.1. Простой цикл
```py ```py
temperatura=5 temperatura=5
for i in range(3,18,3): # цикл от 3 до 18 с шагом 3 for i in range(3,18,3): # цикл от 3 до 18 с шагом 3
temperatura+=i temperatura+=i
temperatura temperatura
50 50
``` ```
### 3.2. Более сложный цикл ### 3.2. Более сложный цикл
```py ```py
sps=[2,15,14,8] sps=[2,15,14,8]
for k in sps: for k in sps:
if len(sps)<=10:sps.append(sps[0]) if len(sps)<=10:sps.append(sps[0])
else:break else:break
sps sps
[2, 15, 14, 8, 2, 2, 2, 2, 2, 2, 2] [2, 15, 14, 8, 2, 2, 2, 2, 2, 2, 2]
``` ```
### 3.3. Пример создания списка с 10 целыми случайнми числами ### 3.3. Пример создания списка с 10 целыми случайнми числами
```py ```py
for i in range(10): for i in range(10):
sps5.append(rn.randint(1,100)) sps5.append(rn.randint(1,100))
ss=sum(sps5) ss=sum(sps5)
if ss>500: break if ss>500: break
else: else:
print(ss) print(ss)
sps5 sps5
[27, 84, 92, 90, 10, 39, 46, 63, 88] [27, 84, 92, 90, 10, 39, 46, 63, 88]
ss ss
539 539
# Вывод ss происходит только в случае если цикл for завершается самостоятельно без break т.е. ss < 500 # Вывод ss происходит только в случае если цикл for завершается самостоятельно без break т.е. ss < 500
for i in range(3): for i in range(3):
sps5.append(rn.randint(1,100)) sps5.append(rn.randint(1,100))
ss=sum(sps5) ss=sum(sps5)
if ss>500: break if ss>500: break
else: else:
print(ss) print(ss)
186 186
``` ```
### 3.4. Пример с символьной строкой ### 3.4. Пример с символьной строкой
```py ```py
# цикл идет по каждому символу и сохраняет их в ss # цикл идет по каждому символу и сохраняет их в ss
stroka='Это – автоматизированная система'stroka1="" stroka='Это – автоматизированная система'
for ss in stroka: stroka1=""
stroka1+=" "+ss for ss in stroka:
stroka1+=" "+ss
stroka1
' Э т о – а в т о м а т и з и р о в а н н а я с и с т е м а' stroka1
``` ' Э т о – а в т о м а т и з и р о в а н н а я с и с т е м а'
### 3.5. Запись цикла в строке. ```
### 3.5. Запись цикла в строке.
```py
import math ```py
sps2=[math.sin(i*math.pi/5+2) for i in range(100)] import math
pylab.title('График синусоидального сигнала') sps2=[math.sin(i*math.pi/5+2) for i in range(100)]
pylab.plot(sps2) pylab.title('График синусоидального сигнала')
pylab.show() pylab.plot(sps2)
``` pylab.show()
![Скриншот графика](Ris1.png) ```
![Скриншот графика](Ris1.png)
## 4. Цикл "пока истинно условие" - управляющая конструкция While
### 4.1 Цикл со счетчиком ## 4. Цикл "пока истинно условие" - управляющая конструкция While
### 4.1 Цикл со счетчиком
```py
rashod=300 ```py
while rashod: # Цикл закончится когда rashod = 0 rashod=300
print("Расход=",rashod) while rashod: # Цикл закончится когда rashod = 0
rashod-=50 print("Расход=",rashod)
rashod-=50
Расход= 300
Расход= 250 Расход= 300
Расход= 200 Расход= 250
Расход= 150 Расход= 200
Расход= 100 Расход= 150
Расход= 50 Расход= 100
``` Расход= 50
### 4.2. Пример с символьной строкой ```
### 4.2. Пример с символьной строкой
```py
import math ```py
stroka='Расчет процесса в объекте регулирования' import math
i=0sps2=[] stroka='Расчет процесса в объекте регулирования'
while i<len(stroka): i=0sps2=[]
r=1-2/(1+math.exp(0.1*i)) while i<len(stroka):
sps2.append(r) r=1-2/(1+math.exp(0.1*i))
print('Значение в момент',i,"=",r) sps2.append(r)
i+=1 print('Значение в момент',i,"=",r)
Значение в момент 0 = 0.0 i+=1
Значение в момент 1 = 0.049958374957880025 Значение в момент 0 = 0.0
Значение в момент 2 = 0.09966799462495568 Значение в момент 1 = 0.049958374957880025
Значение в момент 3 = 0.14888503362331795 Значение в момент 2 = 0.09966799462495568
Значение в момент 4 = 0.197375320224904 Значение в момент 3 = 0.14888503362331795
Значение в момент 5 = 0.2449186624037092 Значение в момент 4 = 0.197375320224904
Значение в момент 6 = 0.2913126124515909 Значение в момент 5 = 0.2449186624037092
Значение в момент 7 = 0.3363755443363322 Значение в момент 6 = 0.2913126124515909
Значение в момент 8 = 0.3799489622552249 Значение в момент 7 = 0.3363755443363322
Значение в момент 9 = 0.421899005250008 Значение в момент 8 = 0.3799489622552249
Значение в момент 10 = 0.4621171572600098 Значение в момент 9 = 0.421899005250008
Значение в момент 11 = 0.5005202111902354 Значение в момент 10 = 0.4621171572600098
Значение в момент 12 = 0.5370495669980353 Значение в момент 11 = 0.5005202111902354
Значение в момент 13 = 0.5716699660851172 Значение в момент 12 = 0.5370495669980353
Значение в момент 14 = 0.6043677771171636 Значение в момент 13 = 0.5716699660851172
Значение в момент 15 = 0.6351489523872873 Значение в момент 14 = 0.6043677771171636
Значение в момент 16 = 0.6640367702678489 Значение в момент 15 = 0.6351489523872873
Значение в момент 17 = 0.6910694698329307 Значение в момент 16 = 0.6640367702678489
Значение в момент 18 = 0.7162978701990245 Значение в момент 17 = 0.6910694698329307
Значение в момент 19 = 0.7397830512740043 Значение в момент 18 = 0.7162978701990245
Значение в момент 20 = 0.7615941559557649 Значение в момент 19 = 0.7397830512740043
Значение в момент 21 = 0.7818063576087741 Значение в момент 20 = 0.7615941559557649
Значение в момент 22 = 0.8004990217606297 Значение в момент 21 = 0.7818063576087741
Значение в момент 23 = 0.8177540779702878 Значение в момент 22 = 0.8004990217606297
Значение в момент 24 = 0.8336546070121553 Значение в момент 23 = 0.8177540779702878
Значение в момент 25 = 0.8482836399575129 Значение в момент 24 = 0.8336546070121553
Значение в момент 26 = 0.8617231593133063 Значение в момент 25 = 0.8482836399575129
Значение в момент 27 = 0.874053287886007 Значение в момент 26 = 0.8617231593133063
Значение в момент 28 = 0.8853516482022625 Значение в момент 27 = 0.874053287886007
Значение в момент 29 = 0.8956928738431645 Значение в момент 28 = 0.8853516482022625
Значение в момент 30 = 0.9051482536448664 Значение в момент 29 = 0.8956928738431645
Значение в момент 31 = 0.9137854901178277 Значение в момент 30 = 0.9051482536448664
Значение в момент 32 = 0.9216685544064713 Значение в момент 31 = 0.9137854901178277
Значение в момент 33 = 0.9288576214547277 Значение в момент 32 = 0.9216685544064713
Значение в момент 34 = 0.935409070603099 Значение в момент 33 = 0.9288576214547277
Значение в момент 35 = 0.9413755384972874 Значение в момент 34 = 0.935409070603099
Значение в момент 36 = 0.9468060128462683 Значение в момент 35 = 0.9413755384972874
Значение в момент 37 = 0.9517459571646616 Значение в момент 36 = 0.9468060128462683
Значение в момент 38 = 0.9562374581277391 Значение в момент 37 = 0.9517459571646616
``` Значение в момент 38 = 0.9562374581277391
```
Представим в виде графика
Представим в виде графика
```py
pylab.title('Сигнал на выходе инерционного звена') ```py
pylab.plot(sps2, color='violet') pylab.title('Сигнал на выходе инерционного звена')
pylab.show() pylab.plot(sps2, color='violet')
``` pylab.show()
```
![Скриншот графика](Ris2.png)
![Скриншот графика](Ris2.png)
### 4.3. Определение является ли число простым
### 4.3. Определение является ли число простым
```py
chislo=267 #Проверяемое число ```py
kandidat =chislo // 2 # Для значений chislo > 1 chislo=267 #Проверяемое число
while kandidat > 1: kandidat =chislo // 2 # Для значений chislo > 1
if chislo%kandidat == 0: # Остаток от деления while kandidat > 1:
print(chislo, ' имеет множитель ', kandidat) if chislo%kandidat == 0: # Остаток от деления
break # else выполняться не будет print(chislo, ' имеет множитель ', kandidat)
kandidat -= 1 break # else выполняться не будет
else: # При завершении цикла без break kandidat -= 1
print(chislo, ' является простым!') else: # При завершении цикла без break
print(chislo, ' является простым!')
267 имеет множитель 89
``` 267 имеет множитель 89
```
Выявим все простые числа от 250 до 300
Выявим все простые числа от 250 до 300
```py
for chislo in range(250,301): ```py
kandidat = chislo // 2 for chislo in range(250,301):
while kandidat > 1: kandidat = chislo // 2
if chislo%kandidat == 0: # Остаток от деления while kandidat > 1:
print(chislo, ' имеет множитель ', kandidat) if chislo%kandidat == 0: # Остаток от деления
break # else выполняться не будет print(chislo, ' имеет множитель ', kandidat)
kandidat -= 1 break # else выполняться не будет
else: # При завершении цикла без break kandidat -= 1
print(chislo, ' является простым!') else: # При завершении цикла без break
print(chislo, ' является простым!')
250 имеет множитель 125
251 является простым! 250 имеет множитель 125
252 имеет множитель 126 251 является простым!
253 имеет множитель 23 252 имеет множитель 126
254 имеет множитель 127 253 имеет множитель 23
255 имеет множитель 85 254 имеет множитель 127
256 имеет множитель 128 255 имеет множитель 85
257 является простым! 256 имеет множитель 128
258 имеет множитель 129 257 является простым!
259 имеет множитель 37 258 имеет множитель 129
260 имеет множитель 130 259 имеет множитель 37
261 имеет множитель 87 260 имеет множитель 130
262 имеет множитель 131 261 имеет множитель 87
263 является простым! 262 имеет множитель 131
264 имеет множитель 132 263 является простым!
265 имеет множитель 53 264 имеет множитель 132
266 имеет множитель 133 265 имеет множитель 53
267 имеет множитель 89 266 имеет множитель 133
268 имеет множитель 134 267 имеет множитель 89
269 является простым! 268 имеет множитель 134
270 имеет множитель 135 269 является простым!
271 является простым! 270 имеет множитель 135
272 имеет множитель 136 271 является простым!
273 имеет множитель 91 272 имеет множитель 136
274 имеет множитель 137 273 имеет множитель 91
275 имеет множитель 55 274 имеет множитель 137
276 имеет множитель 138 275 имеет множитель 55
277 является простым! 276 имеет множитель 138
278 имеет множитель 139 277 является простым!
279 имеет множитель 93 278 имеет множитель 139
280 имеет множитель 140 279 имеет множитель 93
281 является простым! 280 имеет множитель 140
282 имеет множитель 141 281 является простым!
283 является простым! 282 имеет множитель 141
284 имеет множитель 142 283 является простым!
285 имеет множитель 95 284 имеет множитель 142
286 имеет множитель 143 285 имеет множитель 95
287 имеет множитель 41 286 имеет множитель 143
288 имеет множитель 144 287 имеет множитель 41
289 имеет множитель 17 288 имеет множитель 144
290 имеет множитель 145 289 имеет множитель 17
291 имеет множитель 97 290 имеет множитель 145
292 имеет множитель 146 291 имеет множитель 97
293 является простым! 292 имеет множитель 146
294 имеет множитель 147 293 является простым!
295 имеет множитель 59 294 имеет множитель 147
296 имеет множитель 148 295 имеет множитель 59
297 имеет множитель 99 296 имеет множитель 148
298 имеет множитель 149 297 имеет множитель 99
299 имеет множитель 23 298 имеет множитель 149
300 имеет множитель 150 299 имеет множитель 23
``` 300 имеет множитель 150
## 5. Завершила работу со средой и сохранила файл отчета. ```
## 5. Завершила работу со средой и сохранила файл отчета.

Загрузка…
Отмена
Сохранить