### 2. Ветвление по условию – управляющая инструкция if.
### 2. Ветвление по условию – управляющая инструкция if.
- Операции определения значения dohod:
- Операции определения значения dohod:
```
``` python
>>>porog = 5
>>>porog = 5
>>>rashod1 = 8
>>>rashod1 = 8
>>>rashod2 = 6
>>>rashod2 = 6
@ -37,7 +37,7 @@ else:
4 # Выполнились оба условия
4 # Выполнились оба условия
```
```
- Операция с множественным ветвлением линий потока:
- Операция с множественным ветвлением линий потока:
```
``` python
>>>if porog == 3: # Не подходит
>>>if porog == 3: # Не подходит
dohod = 1
dohod = 1
elif porog == 4: # Подходит
elif porog == 4: # Подходит
@ -53,7 +53,7 @@ else: # Игнорируется
- Инструкции, записывающиеся в одну строку в операторе присваивания.
- Инструкции, записывающиеся в одну строку в операторе присваивания.
<Объект>=<значение 1> if <условие> else <значение 2>
<Объект>=<значение 1> if <условие> else <значение 2>
```
``` python
>>>dohod = 2 if porog >- 4 else 0
>>>dohod = 2 if porog >- 4 else 0
>>>print(dohod)
>>>print(dohod)
2
2
@ -81,7 +81,7 @@ for <Объект-переменная цикла> in <объект>:
#### 3.1. Простой цикл.
#### 3.1. Простой цикл.
Выполняем цикл, который проходится по значениям от 3 до 18(не включительно) с шагом 3 и суммирует их в переменную temperatura.
Выполняем цикл, который проходится по значениям от 3 до 18(не включительно) с шагом 3 и суммирует их в переменную temperatura.
```
``` python
>>>temperatura = 5
>>>temperatura = 5
>>>for i in range(3, 18, 3):
>>>for i in range(3, 18, 3):
temperatura += i
temperatura += i
@ -91,7 +91,7 @@ for <Объект-переменная цикла> in <объект>:
```
```
#### 3.2. Более сложный цикл.
#### 3.2. Более сложный цикл.
```
``` python
>>>sps = [2, 15, 14, 18]
>>>sps = [2, 15, 14, 18]
>>>for k in sps:
>>>for k in sps:
if len(sps) <= 10: sps.append(sps[0])
if len(sps) <= 10: sps.append(sps[0])
@ -107,7 +107,7 @@ for <Объект-переменная цикла> in <объект>:
(При этом else в данном случае относится к if, а не к for (это можно понять не только по
(При этом else в данном случае относится к if, а не к for (это можно понять не только по
смыслу, но и по табуляции)
смыслу, но и по табуляции)
```
``` python
>>>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])
@ -123,7 +123,7 @@ for k in sps[:]:
#### 3.3. : Cоздание списка с 10 целыми случайными числами из диапазона от 1 до 100. При этом, если сумма чисел не превышает 500, эта сумма должна быть отображена на экране.
#### 3.3. : Cоздание списка с 10 целыми случайными числами из диапазона от 1 до 100. При этом, если сумма чисел не превышает 500, эта сумма должна быть отображена на экране.
```
``` python
>>>import random as rn
>>>import random as rn
>>>sps5 = []
>>>sps5 = []
>>>for i in range(10):
>>>for i in range(10):
@ -142,7 +142,7 @@ else:
цикл закончился из-за if, а не из-за окончания диапазона range(10).
цикл закончился из-за if, а не из-за окончания диапазона range(10).
Попробуем обнулить список и выполнить ту же программу еще раз:
Попробуем обнулить список и выполнить ту же программу еще раз:
```
``` python
>>>sps5 = []
>>>sps5 = []
>>>for i in range(10):
>>>for i in range(10):
sps5.append(rn.randint(1, 100))
sps5.append(rn.randint(1, 100))
@ -155,7 +155,7 @@ else:
В этот раз программа вывела ответ, следовательно сработал else и break не сработал.
В этот раз программа вывела ответ, следовательно сработал else и break не сработал.
#### 3.4. Пример с символьной строкой
#### 3.4. Пример с символьной строкой
```
``` python
>>>stroka='Это – автоматизированная система'
>>>stroka='Это – автоматизированная система'
>>>stroka1 = " "
>>>stroka1 = " "
>>>for ss in stroka:
>>>for ss in stroka:
@ -172,7 +172,7 @@ else:
#### 3.5. Конструкция list comprehension.
#### 3.5. Конструкция list comprehension.
Пример: создание списка с синусоидальным сигналом.(Внутри квадратных скобок записано выражение-генератор)
Пример: создание списка с синусоидальным сигналом.(Внутри квадратных скобок записано выражение-генератор)
```
``` python
>>>import math
>>>import math
>>>sps2 = [math.sin(i * math.pi / 5 + 2) for i in range(100)]
>>>sps2 = [math.sin(i * math.pi / 5 + 2) for i in range(100)]
>>>sps2
>>>sps2
@ -192,7 +192,7 @@ else:
<отступы><Блок инструкций 2 – если в цикле не сработал break>]
<отступы><Блок инструкций 2 – если в цикле не сработал break>]
#### 4.1. Цикл со счетчиком.
#### 4.1. Цикл со счетчиком.
```
``` python
>>>rashod = 300
>>>rashod = 300
>>>while rashod:
>>>while rashod:
print("Расход=", rashod)
print("Расход=", rashod)
@ -208,7 +208,7 @@ else:
#### 4.2. Пример с символьной строкой.
#### 4.2. Пример с символьной строкой.
```
``` python
>>>import math
>>>import math
>>>stroka = 'Расчет процесса в объекте регулирования'
>>>stroka = 'Расчет процесса в объекте регулирования'
>>>i = 0
>>>i = 0
@ -264,7 +264,7 @@ else:
![[Figure_1.png]]
![[Figure_1.png]]
#### 4.3. Определение, является ли число простым (делится только на самого себя или 1).
#### 4.3. Определение, является ли число простым (делится только на самого себя или 1).
```
``` python
>>>chislo=267 #Проверяемое число
>>>chislo=267 #Проверяемое число
>>>kandidat =chislo // 2 # Для значений chislo > 1
>>>kandidat =chislo // 2 # Для значений chislo > 1
>>>while kandidat > 1:
>>>while kandidat > 1:
@ -284,7 +284,7 @@ else:
прервавшись, то число простое.
прервавшись, то число простое.
Дополним программу так, чтобы выявить все простые числа в диапазоне от 250 до 300.
Дополним программу так, чтобы выявить все простые числа в диапазоне от 250 до 300.
```
``` python
>>>for i in range(250, 301):
>>>for i in range(250, 301):
chislo = i
chislo = i
kandidat = chislo // 2
kandidat = chislo // 2
@ -351,7 +351,7 @@ else:
#### 4.4. Инструкция continue
#### 4.4. Инструкция continue
Инструкция continue, которая не вызывает завершения цикла, но завершает его текущий виток и обеспечивает переход к следующему витку.
Инструкция continue, которая не вызывает завершения цикла, но завершает его текущий виток и обеспечивает переход к следующему витку.