Сравнить коммиты
Ничего общего в коммитах. 'main' и 'master' имеют совершенно разные истории.
@ -1,3 +0,0 @@
|
|||||||
__pycache__
|
|
||||||
.*
|
|
||||||
!.gitignore
|
|
@ -0,0 +1,138 @@
|
|||||||
|
#Отчет по ЛР 1 ПО АС Выполнил: Тимошенко А.А. Проверил: Козлюк Д.А.
|
||||||
|
|
||||||
|
#Пункт 1 В папку L:\\III курс\\А-1-23\\TimoshenkoAA\\Tema1\\ПО АС 2025
|
||||||
|
перенесены материалы и распакован архив Tema1.rar
|
||||||
|
|
||||||
|
#Пункт 2 Запущен интепретатор Phyton
|
||||||
|
|
||||||
|
#Пункт 3 \>\>\> print(\"hello\") hello
|
||||||
|
|
||||||
|
#Пункт 4 \>\>\> h=input(\'Your name= \') Your name= Alexander \>\>\> h
|
||||||
|
\'Alexander\'
|
||||||
|
|
||||||
|
#Пункт 5 \>\>\> exit()
|
||||||
|
|
||||||
|
#Пункты 6-7 Запущена IDLE Python 3.11, изучено устройство главного
|
||||||
|
командного окна среды
|
||||||
|
|
||||||
|
#Пункт 8 import os os.chdir(\'L:\\III
|
||||||
|
курс\\А-1-23\\TimoshenkoAA\\Tema1\\ПО АС 2025\')
|
||||||
|
|
||||||
|
#Пункт 9 Шрифт изменен на Arial CYR, кегль 11, размер начального окна
|
||||||
|
50\*100 символов, комментарии подсвечиваются коричневым
|
||||||
|
|
||||||
|
#В текстовом редакторе IDLE создана программа следующего содержания:
|
||||||
|
|
||||||
|
#Программа по теме 1 Тимошенко Александр Анатольевич
|
||||||
|
|
||||||
|
import os
|
||||||
|
|
||||||
|
print(\"hello\") h = input(\'Your name = \')
|
||||||
|
|
||||||
|
os.chdir(\'L:\\III курс\\А-1-23\\TimoshenkoAA\\Tema1\\ПО АС 2025\') Она
|
||||||
|
делает следующий вывод: = RESTART: L:/III
|
||||||
|
курс/А-1-23/TimoshenkoAA/Tema1/ПО АС 2025/Pr0.py Hello Your
|
||||||
|
name=Alexander
|
||||||
|
|
||||||
|
import Pr0 Hello Your name=Alexander
|
||||||
|
|
||||||
|
При нажатии f5 в активном окне редактора:
|
||||||
|
|
||||||
|
= RESTART: L:/III курс/А-1-23/TimoshenkoAA/Tema1/ПО АС 2025/Pr0.py Hello
|
||||||
|
Your name=
|
||||||
|
|
||||||
|
#Пункт 11
|
||||||
|
|
||||||
|
Из консоли вызван файл prb1.py
|
||||||
|
|
||||||
|
\>\>\> import prb1 Как Вас зовут? Александр Привет, Александр
|
||||||
|
|
||||||
|
#Пункт 12
|
||||||
|
|
||||||
|
Файл Pr0.cpython-34.pyc открыт в NotePad ++. Видно, что разультат
|
||||||
|
компиляции тяжел для восприятия человеком, вероятно, из-за
|
||||||
|
несоответствия кодировок. Комплиляция программ необходима, чтобы
|
||||||
|
перевести команды из человекопонятной формы в машинный код, который
|
||||||
|
может быть обработан процессором. При выполнении скрипта Python сначала
|
||||||
|
преобразовывает его в байт-код (.рус), а затем уже он компилируется с
|
||||||
|
помощью виртуальный машины. Это ускорит повторную загрузку программы.
|
||||||
|
|
||||||
|
#Пункт 13
|
||||||
|
|
||||||
|
Все верные команды из командного окна IDLE скопированы в отдельный файл
|
||||||
|
|
||||||
|
#Пункт 14
|
||||||
|
|
||||||
|
В разделе помощи help можно найти следующие опции:
|
||||||
|
|
||||||
|
About IDLE - описание характеристик текущей среды (версия, путь и пр.)
|
||||||
|
|
||||||
|
IDLE Help - помощь по работе со средой
|
||||||
|
|
||||||
|
Python Docs - документация по языку
|
||||||
|
|
||||||
|
Turtle Demo - окно работы и помощь модуля для работы с графикой turtle
|
||||||
|
|
||||||
|
\>\>\> help (print)
|
||||||
|
|
||||||
|
Help on built-in function print in module builtins:
|
||||||
|
|
||||||
|
print(\...) print(value, \..., sep=\' \', end=\'\\n\', file=sys.stdout,
|
||||||
|
flush=False)
|
||||||
|
|
||||||
|
Prints the values to a stream, or to sys.stdout by default. Optional
|
||||||
|
keyword arguments: file: a file-like object (stream); defaults to the
|
||||||
|
current sys.stdout. sep: string inserted between values, default a
|
||||||
|
space. end: string appended after the last value, default a newline.
|
||||||
|
flush: whether to forcibly flush the stream.
|
||||||
|
|
||||||
|
\>\>\> help(print), help(input)
|
||||||
|
|
||||||
|
Help on built-in function print in module builtins:
|
||||||
|
|
||||||
|
print(\...) print(value, \..., sep=\' \', end=\'\\n\', file=sys.stdout,
|
||||||
|
flush=False)
|
||||||
|
|
||||||
|
Prints the values to a stream, or to sys.stdout by default. Optional
|
||||||
|
keyword arguments: file: a file-like object (stream); defaults to the
|
||||||
|
current sys.stdout. sep: string inserted between values, default a
|
||||||
|
space. end: string appended after the last value, default a newline.
|
||||||
|
flush: whether to forcibly flush the stream.
|
||||||
|
|
||||||
|
Help on built-in function input in module builtins:
|
||||||
|
|
||||||
|
input(prompt=None, /) Read a string from standard input. The trailing
|
||||||
|
newline is stripped.
|
||||||
|
|
||||||
|
The prompt string, if given, is printed to standard output without a
|
||||||
|
trailing newline before reading input.
|
||||||
|
|
||||||
|
If the user hits EOF (\*nix: Ctrl-D, Windows: Ctrl-Z+Return), raise
|
||||||
|
EOFError. On \*nix systems, readline is used if available.
|
||||||
|
|
||||||
|
(None, None)
|
||||||
|
|
||||||
|
F1 -\> Указатель -\> print() (built-in function) выводит справку по этой
|
||||||
|
функции
|
||||||
|
|
||||||
|
То же диалоговое окно появляется при help - Python Docs
|
||||||
|
|
||||||
|
#Пункт 15
|
||||||
|
|
||||||
|
File - Open - prb1.py
|
||||||
|
|
||||||
|
С помощью Window можно переключаться между всеми открытыми окнами
|
||||||
|
|
||||||
|
prb1.py - Run
|
||||||
|
|
||||||
|
======= RESTART: L:\\III курс\\А-1-23\\TimoshenkoAA\\Tema1\\ПО АС
|
||||||
|
2025\\prb1.py ====== Как Вас зовут? Александр Привет, Александр
|
||||||
|
|
||||||
|
\>\>\> import tdemo_chaos
|
||||||
|
|
||||||
|
Help - Turtle Demo - clock - Start выводит на экран графическое
|
||||||
|
представление программы - циферблат с часами. Есть и другие примеры
|
||||||
|
программ модуля turtle, которые можно брать за основу собственных
|
||||||
|
программ.
|
||||||
|
|
||||||
|
16\. Завершена работа со средой: File - exit
|
@ -1,133 +0,0 @@
|
|||||||
# Программное обеспечение автоматизированных систем: лабораторные работы
|
|
||||||
|
|
||||||
[Репозиторий с методическими указаниями и заданиями.](http://uit.mpei.ru/git/main/python)
|
|
||||||
|
|
||||||
## Работа с Git
|
|
||||||
|
|
||||||
**Работы проверяются только после того, как закоммичены по правилам ниже.**
|
|
||||||
|
|
||||||
[Лабораторная работа про Git второго семестра][gitlab]
|
|
||||||
поможет вспомнить, как работать с Git.
|
|
||||||
|
|
||||||
[gitlab]: http://uit.mpei.ru/git/main/cs/src/branch/main/labs/lab02
|
|
||||||
|
|
||||||
1. В начале семестра
|
|
||||||
создать на сервере копию этого репозитория («форкнуть» его), нажав *Fork*.
|
|
||||||
Получится репозиторий-форк `http://uit.mpei.ru/git/IvanovII/python-labs`,
|
|
||||||
где `IvanovII` — ваше имя пользователя.
|
|
||||||
|
|
||||||
1. В начале каждого занятия:
|
|
||||||
|
|
||||||
Клонировать свой форк на рабочий стол
|
|
||||||
(`IvanovII` заменить на свое имя пользователя):
|
|
||||||
|
|
||||||
```sh
|
|
||||||
git clone http://uit.mpei.ru/git/IvanovII/python-labs.git
|
|
||||||
```
|
|
||||||
|
|
||||||
Перебазировать свой форк на исходный репозиторий ("апстрим"):
|
|
||||||
|
|
||||||
```sh
|
|
||||||
# Первую команду нужно запускать только один раз,
|
|
||||||
# иначе будет ошибка "error: remote upstream already exists".
|
|
||||||
git remote add upstream http://uit.mpei.ru/git/main/python-labs.git
|
|
||||||
git fetch upstream
|
|
||||||
git stash push
|
|
||||||
git rebase upstream/main
|
|
||||||
git stash pop
|
|
||||||
```
|
|
||||||
|
|
||||||
Перебазировать нужно, чтобы подтянуть из исходного репозитория обновления.
|
|
||||||
|
|
||||||
1. После того, как отчет написан, закоммитить его как `TEMAn/report.md`.
|
|
||||||
|
|
||||||
**Здесь и далее «закоммитить» для краткости означает:
|
|
||||||
сделать коммит и запушить его на сервер.**
|
|
||||||
|
|
||||||
Здесь и далее `TEMAn` означают каталоги конкретных тем:
|
|
||||||
`TEMA1`, `TEMA2` и т. д.
|
|
||||||
Можно также коммитить по частям в процессе работы.
|
|
||||||
Если для отчета нужны рисунки, то их закоммитить в `TEMAn`,
|
|
||||||
назвав `figure0.png`, `figure1.png` и т. д.
|
|
||||||
|
|
||||||
1. Решение общего контрольного задания (ОКЗ) закоммитить как `TEMAn/task.md`.
|
|
||||||
Исключения:
|
|
||||||
|
|
||||||
* Тема 1 не содержит общего контрольного задания — ничего не делать.
|
|
||||||
* Тема 8 требует нескольких файлов — закоммитить их в каталог `TEMA8/task`.
|
|
||||||
|
|
||||||
1. Решение индивидуального контрольного задания (ИКЗ) по темам 2, 4, 5, 7, 8
|
|
||||||
или решение теста по модуля после тем 3, 6, 9
|
|
||||||
закоммитить как `TEMAn/test.md`.
|
|
||||||
Исключения:
|
|
||||||
|
|
||||||
* Тема 1 вместо ИКЗ содержит контрольный вопрос —
|
|
||||||
закоммитить также в `TEMA1/test.md`.
|
|
||||||
* Тема 8 и тест по модулю 3 (после темы 9) требуют нескольких файлов —
|
|
||||||
закоммитить в каталог `TEMAn/test`.
|
|
||||||
|
|
||||||
## Оформление материалов
|
|
||||||
|
|
||||||
Тексты оформляются в формате [Markdown](https://commonmark.org/help/).
|
|
||||||
Для этого текст со специальной разметкой пишется в файле с расширением `*.md`,
|
|
||||||
а в web-интерфейсе будет отображаться оформленным, подобно этому.
|
|
||||||
|
|
||||||
Образец оформления материалов по каждой теме: [`TEMA0`](TEMA0).
|
|
||||||
|
|
||||||
### Оформление отчетов
|
|
||||||
|
|
||||||
Отчет `TEMAn/report.md` оформляется в формате Markdown по следующему образцу:
|
|
||||||
|
|
||||||
# Отчет по теме 1
|
|
||||||
|
|
||||||
Иванов Иван, А-01-25
|
|
||||||
|
|
||||||
## 1 Изучение среды IDLE
|
|
||||||
|
|
||||||
## 1.1 Настройка текущего каталога
|
|
||||||
|
|
||||||
```py
|
|
||||||
>>> import os
|
|
||||||
>>> os.chdir(r"C:\users\u111-19\Desktop\python\TEMA1")
|
|
||||||
>>> os.getcwd()
|
|
||||||
'C:\\Users\\u111-19\\Desktop\\python\\TEMA1'
|
|
||||||
```
|
|
||||||
|
|
||||||
Нажал *Файл / Открыть*, диалог оказался сразу нацелен на установленную папку:
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
Заголовки пунктов должны отражать их суть в нескольких словах,
|
|
||||||
то есть просто скопировать текст пункта в заголовок не подойдет.
|
|
||||||
Вы должны сами придумать осмысленные заголовки, прочитав пункт задания.
|
|
||||||
|
|
||||||
В отчет копируется код, введенный в оболочку (строки, начинающиеся с `>>>`),
|
|
||||||
и вывод соответствующих команд (`'C:\\Users...` в примере).
|
|
||||||
|
|
||||||
Если в пункте задания требуется сделать вывод или объяснить что-то,
|
|
||||||
к коду и выводу добавляется письменный ответ или пояснение.
|
|
||||||
|
|
||||||
### Оформление решений
|
|
||||||
|
|
||||||
Решение всех заданий оформляется по образцу:
|
|
||||||
|
|
||||||
# Общее контрольное задание по теме 2
|
|
||||||
|
|
||||||
Иванов Иван, А-01-25
|
|
||||||
|
|
||||||
## Задание
|
|
||||||
|
|
||||||
Создать переменную `name`, содержащую ваше имя. Определить тип этой переменной.
|
|
||||||
|
|
||||||
## Решение
|
|
||||||
|
|
||||||
```py
|
|
||||||
>>> name = 'Иван'
|
|
||||||
>>> type(name)
|
|
||||||
'str'
|
|
||||||
```
|
|
||||||
|
|
||||||
Для темы 1 вместо «Задания» — «Вопрос», вместо «Решения» — «Ответ».
|
|
||||||
|
|
||||||
Для тем 8 и 9 раздела «Решение» не нужно,
|
|
||||||
вместо этого решение размещается в отдельных файлах `*.py`.
|
|
@ -1,6 +0,0 @@
|
|||||||
# Тема 0: образец оформления материалов
|
|
||||||
|
|
||||||
* `README.md` — этот документ, в своих темах создавать не нужно;
|
|
||||||
* [`report.md`](report.md) — отчет;
|
|
||||||
* [`task.md`](task.md) — общее контрольное задание;
|
|
||||||
* [`test.md`](test.md) — индивидуальное контрольное задание.
|
|
До Ширина: | Высота: | Размер: 15 KiB |
@ -1,18 +0,0 @@
|
|||||||
# Отчет по теме 0
|
|
||||||
|
|
||||||
Иванов Иван, А-01-25
|
|
||||||
|
|
||||||
## 1 Изучение среды IDLE
|
|
||||||
|
|
||||||
## 1.1 Настройка текущего каталога
|
|
||||||
|
|
||||||
```py
|
|
||||||
>>> import os
|
|
||||||
>>> os.chdir(r"C:\users\u111-19\Desktop\python\TEMA1")
|
|
||||||
>>> os.getcwd()
|
|
||||||
'C:\\Users\\u111-19\\Desktop\\python\\TEMA1'
|
|
||||||
```
|
|
||||||
|
|
||||||
Нажал *Файл / Открыть*, диалог оказался сразу нацелен на установленную папку:
|
|
||||||
|
|
||||||

|
|
@ -1,15 +0,0 @@
|
|||||||
# Общее контрольное задание по теме 0
|
|
||||||
|
|
||||||
Иванов Иван, А-01-25
|
|
||||||
|
|
||||||
## Задание
|
|
||||||
|
|
||||||
Создать переменную `name`, содержащую ваше имя. Определить тип этой переменной.
|
|
||||||
|
|
||||||
## Решение
|
|
||||||
|
|
||||||
```py
|
|
||||||
>>> name = 'Иван'
|
|
||||||
>>> type(name)
|
|
||||||
'str'
|
|
||||||
```
|
|
@ -1,24 +0,0 @@
|
|||||||
# Индивидуальное контрольное задание по теме 0
|
|
||||||
|
|
||||||
Иванов Иван, А-01-25
|
|
||||||
|
|
||||||
## Задание
|
|
||||||
|
|
||||||
Создать переменную `name`, содержащую ваше имя,
|
|
||||||
и `surname`, содержащую вашу фамилию.
|
|
||||||
Как из них можно создать переменную, содержащую ваше полное имя?
|
|
||||||
|
|
||||||
## Решение
|
|
||||||
|
|
||||||
```py
|
|
||||||
>>> name = 'Иван'
|
|
||||||
>>> surname = 'Иванов'
|
|
||||||
```
|
|
||||||
|
|
||||||
Создать требуемую переменную `full_name` можно так:
|
|
||||||
|
|
||||||
```py
|
|
||||||
>>> full_name = name + ' ' + surname
|
|
||||||
>>> full_name
|
|
||||||
'Иван Иванов'
|
|
||||||
```
|
|
@ -1,2 +0,0 @@
|
|||||||
name = input("Как Вас зовут? ")
|
|
||||||
print("Привет,", name)
|
|
@ -1,59 +0,0 @@
|
|||||||
# File: tdemo_chaos.py
|
|
||||||
# Author: Gregor Lingl
|
|
||||||
# Date: 2009-06-24
|
|
||||||
|
|
||||||
# A demonstration of chaos
|
|
||||||
|
|
||||||
from turtle import *
|
|
||||||
|
|
||||||
N = 80
|
|
||||||
|
|
||||||
def f(x):
|
|
||||||
return 3.9*x*(1-x)
|
|
||||||
|
|
||||||
def g(x):
|
|
||||||
return 3.9*(x-x**2)
|
|
||||||
|
|
||||||
def h(x):
|
|
||||||
return 3.9*x-3.9*x*x
|
|
||||||
|
|
||||||
def jumpto(x, y):
|
|
||||||
penup(); goto(x,y)
|
|
||||||
|
|
||||||
def line(x1, y1, x2, y2):
|
|
||||||
jumpto(x1, y1)
|
|
||||||
pendown()
|
|
||||||
goto(x2, y2)
|
|
||||||
|
|
||||||
def coosys():
|
|
||||||
line(-1, 0, N+1, 0)
|
|
||||||
line(0, -0.1, 0, 1.1)
|
|
||||||
|
|
||||||
def plot(fun, start, color):
|
|
||||||
pencolor(color)
|
|
||||||
x = start
|
|
||||||
jumpto(0, x)
|
|
||||||
pendown()
|
|
||||||
dot(5)
|
|
||||||
for i in range(N):
|
|
||||||
x=fun(x)
|
|
||||||
goto(i+1,x)
|
|
||||||
dot(5)
|
|
||||||
|
|
||||||
def main():
|
|
||||||
reset()
|
|
||||||
setworldcoordinates(-1.0,-0.1, N+1, 1.1)
|
|
||||||
speed(0)
|
|
||||||
hideturtle()
|
|
||||||
coosys()
|
|
||||||
plot(f, 0.35, "blue")
|
|
||||||
plot(g, 0.35, "green")
|
|
||||||
plot(h, 0.35, "red")
|
|
||||||
# Now zoom in:
|
|
||||||
for s in range(100):
|
|
||||||
setworldcoordinates(0.5*s,-0.1, N+1, 1.1)
|
|
||||||
return "Done!"
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
main()
|
|
||||||
mainloop()
|
|
@ -1,9 +0,0 @@
|
|||||||
#Модуль Mod0
|
|
||||||
import Mod1
|
|
||||||
print('perm1=',Mod1.perm1)
|
|
||||||
from Mod2 import alpha as al
|
|
||||||
tt=al()
|
|
||||||
print('tt=',tt)
|
|
||||||
from Mod2 import beta
|
|
||||||
qq=beta(float(tt))
|
|
||||||
print('qq=',qq)
|
|
@ -1,2 +0,0 @@
|
|||||||
perm1=input('Mod1:Введите значение = ')
|
|
||||||
print('Mod1:Значение perm1=',perm1)
|
|
@ -1,11 +0,0 @@
|
|||||||
def alpha():
|
|
||||||
print('****ALPHA****')
|
|
||||||
t=input('Значение t=')
|
|
||||||
return t
|
|
||||||
|
|
||||||
def beta(q):
|
|
||||||
print('****BETA****')
|
|
||||||
import math
|
|
||||||
expi=q*math.pi
|
|
||||||
return math.exp(expi)
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче