From 437460afc109226381ba043bd9de6a51bef7e67f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=94=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9=20=D0=9A=D0=BE?= =?UTF-8?q?=D0=B7=D0=BB=D1=8E=D0=BA?= Date: Sun, 31 Aug 2025 18:59:10 +0300 Subject: [PATCH] =?UTF-8?q?doc:=20=D1=80=D0=B5=D0=B3=D0=BB=D0=B0=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D1=82=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D1=8B,=20?= =?UTF-8?q?=D0=BE=D0=B1=D1=80=D0=B0=D0=B7=D0=B5=D1=86=20=D0=BE=D1=84=D0=BE?= =?UTF-8?q?=D1=80=D0=BC=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 + README.md | 133 +++++++++++++++++++++++++++++++++++++++++++ TEMA0/README.md | 6 ++ TEMA0/figure0.png | Bin 0 -> 15208 bytes TEMA0/report.md | 18 ++++++ TEMA0/task.md | 15 +++++ TEMA0/test.md | 24 ++++++++ TEMA1/prb1.py | 2 + TEMA1/tdemo_chaos.py | 59 +++++++++++++++++++ TEMA2/.gitkeep | 0 TEMA3/.gitkeep | 0 TEMA4/.gitkeep | 0 TEMA5/.gitkeep | 0 TEMA6/.gitkeep | 0 TEMA7/.gitkeep | 0 TEMA8/Mod0.py | 9 +++ TEMA8/Mod1.py | 2 + TEMA8/Mod2.py | 11 ++++ TEMA9/.gitkeep | 0 19 files changed, 282 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 TEMA0/README.md create mode 100644 TEMA0/figure0.png create mode 100644 TEMA0/report.md create mode 100644 TEMA0/task.md create mode 100644 TEMA0/test.md create mode 100644 TEMA1/prb1.py create mode 100644 TEMA1/tdemo_chaos.py create mode 100644 TEMA2/.gitkeep create mode 100644 TEMA3/.gitkeep create mode 100644 TEMA4/.gitkeep create mode 100644 TEMA5/.gitkeep create mode 100644 TEMA6/.gitkeep create mode 100644 TEMA7/.gitkeep create mode 100644 TEMA8/Mod0.py create mode 100644 TEMA8/Mod1.py create mode 100644 TEMA8/Mod2.py create mode 100644 TEMA9/.gitkeep diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b7bb2a0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +__pycache__ +.* +!.gitignore diff --git a/README.md b/README.md new file mode 100644 index 0000000..88792ff --- /dev/null +++ b/README.md @@ -0,0 +1,133 @@ +# Программное обеспечение автоматизированных систем: лабораторные работы + +[Репозиторий с методическими указаниями и заданиями.](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 Настройка текущего каталога + + ``` + >>> import os + >>> os.chdir(r"C:\users\u111-19\Desktop\python\TEMA1") + >>> os.getcwd() + 'C:\\Users\\u111-19\\Desktop\\python\\TEMA1' + ``` + + Нажал *Файл / Открыть*, диалог оказался сразу нацелен на установленную папку: + + ![Скриншот диалога открытия файла](figure0.png) + +Заголовки пунктов должны отражать их суть в нескольких словах, +то есть просто скопировать текст пункта в заголовок не подойдет. +Вы должны сами придумать осмысленные заголовки, прочитав пункт задания. + +В отчет копируется код, введенный в оболочку (строки, начинающиеся с `>>>`), +и вывод соответствующих команд (`'C:\\Users...` в примере). + +Если в пункте задания требуется сделать вывод или объяснить что-то, +к коду и выводу добавляется письменный ответ или пояснение. + +### Оформление решений + +Решение всех заданий оформляется по образцу: + + # Общее контрольное задание по теме 2 + + Иванов Иван, А-01-25 + + ## Задание + + Создать переменную `name`, содержащую ваше имя. Определить тип этой переменной. + + ## Решение + + ```py + >>> name = 'Иван' + >>> type(name) + 'str' + ``` + +Для темы 1 вместо «Задания» — «Вопрос», вместо «Решения» — «Ответ». + +Для тем 8 и 9 раздела «Решение» не нужно, +вместо этого решение размещается в отдельных файлах `*.py`. diff --git a/TEMA0/README.md b/TEMA0/README.md new file mode 100644 index 0000000..e9de7f2 --- /dev/null +++ b/TEMA0/README.md @@ -0,0 +1,6 @@ +# Тема 0: образец оформления материалов + +* `README.md` — этот документ, в своих темах создавать не нужно; +* [`report.md`](report.md) — отчет; +* [`task.md`](task.md) — общее контрольное задание; +* [`test.md`](test.md) — индивидуальное контрольное задание. diff --git a/TEMA0/figure0.png b/TEMA0/figure0.png new file mode 100644 index 0000000000000000000000000000000000000000..dee24259b03fdd841d3810ec2d7b8f9d45c8444a GIT binary patch literal 15208 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 import os +>>> os.chdir(r"C:\users\u111-19\Desktop\python\TEMA1") +>>> os.getcwd() +'C:\\Users\\u111-19\\Desktop\\python\\TEMA1' +``` + +Нажал *Файл / Открыть*, диалог оказался сразу нацелен на установленную папку: + +![Скриншот диалога открытия файла](figure0.png) diff --git a/TEMA0/task.md b/TEMA0/task.md new file mode 100644 index 0000000..05657aa --- /dev/null +++ b/TEMA0/task.md @@ -0,0 +1,15 @@ +# Общее контрольное задание по теме 0 + +Иванов Иван, А-01-25 + +## Задание + +Создать переменную `name`, содержащую ваше имя. Определить тип этой переменной. + +## Решение + +```py +>>> name = 'Иван' +>>> type(name) +'str' +``` diff --git a/TEMA0/test.md b/TEMA0/test.md new file mode 100644 index 0000000..5d231d9 --- /dev/null +++ b/TEMA0/test.md @@ -0,0 +1,24 @@ +# Индивидуальное контрольное задание по теме 0 + +Иванов Иван, А-01-25 + +## Задание + +Создать переменную `name`, содержащую ваше имя, +и `surname`, содержащую вашу фамилию. +Как из них можно создать переменную, содержащую ваше полное имя? + +## Решение + +```py +>>> name = 'Иван' +>>> surname = 'Иванов' +``` + +Создать требуемую переменную `full_name` можно так: + +```py +>>> full_name = name + ' ' + surname +>>> full_name +'Иван Иванов' +``` diff --git a/TEMA1/prb1.py b/TEMA1/prb1.py new file mode 100644 index 0000000..587b019 --- /dev/null +++ b/TEMA1/prb1.py @@ -0,0 +1,2 @@ +name = input("Как Вас зовут? ") +print("Привет,", name) diff --git a/TEMA1/tdemo_chaos.py b/TEMA1/tdemo_chaos.py new file mode 100644 index 0000000..6a45d0d --- /dev/null +++ b/TEMA1/tdemo_chaos.py @@ -0,0 +1,59 @@ +# 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() diff --git a/TEMA2/.gitkeep b/TEMA2/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/TEMA3/.gitkeep b/TEMA3/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/TEMA4/.gitkeep b/TEMA4/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/TEMA5/.gitkeep b/TEMA5/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/TEMA6/.gitkeep b/TEMA6/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/TEMA7/.gitkeep b/TEMA7/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/TEMA8/Mod0.py b/TEMA8/Mod0.py new file mode 100644 index 0000000..6337fc3 --- /dev/null +++ b/TEMA8/Mod0.py @@ -0,0 +1,9 @@ +#Модуль 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) diff --git a/TEMA8/Mod1.py b/TEMA8/Mod1.py new file mode 100644 index 0000000..cf05b61 --- /dev/null +++ b/TEMA8/Mod1.py @@ -0,0 +1,2 @@ +perm1=input('Mod1:Введите значение = ') +print('Mod1:Значение perm1=',perm1) diff --git a/TEMA8/Mod2.py b/TEMA8/Mod2.py new file mode 100644 index 0000000..88c5b37 --- /dev/null +++ b/TEMA8/Mod2.py @@ -0,0 +1,11 @@ +def alpha(): + print('****ALPHA****') + t=input('Значение t=') + return t + +def beta(q): + print('****BETA****') + import math + expi=q*math.pi + return math.exp(expi) + diff --git a/TEMA9/.gitkeep b/TEMA9/.gitkeep new file mode 100644 index 0000000..e69de29