update
Первый коммит репозитория — родителя у него нет.
637 файлов
-
.gitignore +2
Показать разницуСкрыть разницу
1 +./vscode 2 +.vscode -
Показать разницуСкрыть разницу
1 +#include <iostream> 2 +using namespace std; 3 + 4 +int main() { 5 + int a; // мы говорим о том что инициализуем переменную с именем a и то что 6 + // там будет хранится целочисленное значение 7 + cin >> a; // cin это функция которая позволяет запросить у пользователя ввод 8 + // данных в консоль и сохранить в значение a 9 + 10 + int result = a + 5; // вводоим дополнительную переменную с именем result 11 + // которой присваваем значение равное N зачение 12 + 13 + cout << result << endl; // вводим значение result в коноль; 14 + 15 + return 0; // выход из функциия 16 +} -
Показать разницуСкрыть разницу
1 +# Задача 1. Пятизначное число 2 + 3 +Условие. В пятизначном числе не меньше трёх цифр, которые меньше 5, и не меньше трёх 4 +нечётных цифр. _Найдите самое большое из таких чисел._ 5 + 6 +# Задача 2. Логическая задача про друзей 7 + 8 +Условие. В 6А классе учится три друга: Андрей, Василий, Пётр. Фамилии: Журавлёв, 9 +Лисицын, Соколов. Один участвовал в олимпиаде по математике, другой — по 10 +информатике, третий — по русскому языку. Известно: 11 + 12 +1. Андрей пошёл на олимпиаду по русскому языку. 13 +2. Пётр не любит математику и не участвовал в олимпиаде по математике. 14 +3. Фамилия соседа Василия по парте — Соколов. 15 +4. Лисицын участвовал в олимпиаде по информатике. 16 + _Определите, кого из школьников как зовут и кто в какой олимпиаде участвовал._ 17 + 18 +# Задача 3. Квиддич 19 + 20 +Условие. В игре квиддич каждый гол приносит 10 очков. Снитч приносит 150 очков, после 21 +чего игра заканчивается. В финале встретились Когтевран и Пуффендуй. Разница в счёте 22 +никогда не превышала 10 очков. В конце матча лидировал Когтевран, но благодаря снитчу 23 +победил Пуффендуй. Известны голы игроков: 24 + 25 +- Алиса: 1 гол (27 мин) 26 +- Боб: 1 гол (30 мин) 27 +- Виктория: 2 гола (5, 21 мин) 28 +- Глория: 4 гола (10, 12, 34, 53 мин) 29 +- Дональд: 2 гола (14, 42 мин) 30 +- Эдвард: 3 гола (15, 23, 56 мин) 31 + 32 +_Определите итоговый счёт матча._ -
Показать разницуСкрыть разницу
1 +# Задача 1. Сумма двух чисел 2 + 3 +Условие. Напишите программу, которая считывает два целых числа и выводит их сумму. 4 +Пример: 5 +Ввод: 6 +5 7 +7 8 +Вывод: 9 +12 10 + 11 +# Задача 2. Приветствие по имени 12 + 13 +Условие. Напишите программу, которая просит пользователя ввести своё имя и затем 14 +выводит приветствие в формате: Привет, [имя]! 15 +Пример: 16 +Ввод: 17 +Иван 18 +Вывод: 19 +Привет, Иван! 20 + 21 +# Задача 3. Объём шара 22 + 23 +Условие. Формула: V = (4/3) _ π _ r³, где V — объём шара, r — радиус шара, π — число пи 24 +(приблизительно 3,14). 25 +Формат входных данных: радиус шара (double). 26 +Формат выходных данных: объём шара (double). 27 +Пример: 28 +Ввод: 29 +3 30 +Вывод: 31 +113.04 32 + 33 +# Задача 4. Блюдце Константина 34 + 35 +Условие. Клетчатое поле N × N раскололось на квадраты K × K. N делится на K без 36 +остатка. Чтобы склеить все соприкасающиеся кусочки, нужно посчитать количество банок 37 +клея. Для проклейки границы между двумя соприкасающимися клетками длины 1 нужна 38 +одна банка клея. Если блюдце не разбилось, выведите 0. 39 +Формат входных данных: N — размер блюдца; K — размер осколка. 40 +Формат выходных данных: количество банок клея. Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +# 🍏 C++ на macOS — установка и первый запуск 2 + 3 +> Время: ~15 минут. Нужен интернет и пароль от Mac. 4 +> ⬅️ [Назад к оглавлению](README.md) 5 + 6 +--- 7 + 8 +## Шаг 1. Установи компилятор 🔨 9 + 10 +Открой приложение **Терминал** (`Cmd + Пробел` → набери «Терминал» → `Enter`) и выполни: 11 + 12 +```bash 13 +xcode-select --install 14 +``` 15 + 16 +Появится окно — нажми **«Установить»** и дождись окончания. 17 + 18 +> [!NOTE] 19 +> Если пишет `command line tools are already installed` — отлично, всё уже есть. 20 +> Скачать вручную: [developer.apple.com/download](https://developer.apple.com/download/all/?q=command%20line%20tools) 21 + 22 +✅ **Проверка:** 23 + 24 +```bash 25 +clang++ --version 26 +``` 27 + 28 +Должно вывести что-то вроде `Apple clang version 17...`. Значит, компилятор работает. 29 + 30 +--- 31 + 32 +## Шаг 2. Установи VS Code 💻 33 + 34 +1. Скачай: **[code.visualstudio.com/download](https://code.visualstudio.com/download)** → кнопка **Mac**. 35 +2. Открой скачанный файл и перетащи **Visual Studio Code** в папку **Программы**. 36 +3. Запусти VS Code. 37 +4. Слева нажми на иконку кубиков **Extensions** (`Cmd + Shift + X`) → найди **C/C++ Extension Pack** (от Microsoft) → **Install**. 38 + Ссылка: [C/C++ Extension Pack](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools-extension-pack) 39 + 40 +> [!TIP] Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +# 🪟 C++ на Windows — установка и первый запуск 2 + 3 +> Время: ~20 минут. Нужен интернет и права администратора. 4 +> ⬅️ [Назад к оглавлению](README.md) 5 + 6 +--- 7 + 8 +## Шаг 1. Установи MSYS2 📦 9 + 10 +**MSYS2** — набор инструментов, внутри которого есть компилятор **`g++`** и отладчик **`gdb`**. 11 + 12 +1. Скачай установщик: **[msys2.org](https://www.msys2.org)** → кнопка `msys2-x86_64-....exe`. 13 +2. Запусти и нажимай **Next**. 14 + 15 +> [!IMPORTANT] 16 +> Папку установки **не меняй** — оставь **`C:\msys64`**. 17 +> На неё рассчитаны настройки VS Code в папке курса. 18 + 19 +--- 20 + 21 +## Шаг 2. Установи компилятор 🔨 22 + 23 +1. Открой меню **Пуск** → найди **«MSYS2 UCRT64»** (именно **UCRT64**!) → запусти. 24 +2. В открывшемся окне вставь (правая кнопка мыши → Paste) и нажми `Enter`: 25 + 26 +```bash 27 +pacman -S --needed mingw-w64-ucrt-x86_64-gcc mingw-w64-ucrt-x86_64-gdb 28 +``` 29 + 30 +3. На вопрос `Proceed with installation? [Y/n]` нажми `Enter`. 31 + 32 +--- 33 + 34 +## Шаг 3. Добавь компилятор в PATH 🧭 35 + 36 +Чтобы Windows находила `g++` из любой папки: 37 + 38 +1. **Пуск** → набери **«Изменение системных переменных среды»** → открой. 39 +2. Кнопка **«Переменные среды…»**. 40 +3. В верхнем списке (для пользователя) выбери **`Path`** → **«Изменить»**. Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +# 📋 Шпаргалка по запуску C++ 2 + 3 +> Всё самое нужное на одной странице. Распечатай или держи открытой рядом. 4 +> ⬅️ [Назад к оглавлению](README.md) 5 + 6 +--- 7 + 8 +## ⭐ Три главных правила 9 + 10 +| | Правило | 11 +|:---:|---| 12 +| 1️⃣ | Компилятор C++ — это **`clang++`** (Mac) или **`g++`** (Windows). Не `clang` и не `gcc`! | 13 +| 2️⃣ | **Сборка ≠ запуск.** Сначала собираем, потом запускаем. | 14 +| 3️⃣ | Программа с `cin` **молча ждёт ввода**. Кликни в терминал, введи значение и нажми `Enter`. | 15 + 16 +--- 17 + 18 +## ⚡ Собрать и запустить 19 + 20 +| | 🍏 macOS | 🪟 Windows | 21 +|---|---|---| 22 +| **VS Code** | `Cmd + Shift + B` | `Ctrl + Shift + B` | 23 +| **Отладка** | `F5` | `F5` | 24 +| **Собрать** | `clang++ -std=c++20 -Wall -g main.cpp -o main` | `g++ -std=c++20 -Wall -g main.cpp -o main.exe` | 25 +| **Запустить** | `./main` | `.\main.exe` | 26 +| **Всё сразу** | `clang++ -std=c++20 -Wall main.cpp -o main && ./main` | `g++ -std=c++20 -Wall main.cpp -o main.exe; if ($?) { .\main.exe }` | 27 +| **Несколько файлов** | `clang++ -std=c++20 *.cpp -o app && ./app` | `g++ -std=c++20 *.cpp -o app.exe; if ($?) { .\app.exe }` | 28 + 29 +### 🏷️ Что значат флаги 30 + 31 +| Флаг | Значение | 32 +|---|---| 33 +| `-std=c++20` | версия языка C++20 | 34 +| `-Wall` | показывать предупреждения (они помогают находить ошибки!) | 35 +| `-g` | добавить данные для отладчика | 36 +| `-o main` | как назвать готовую программу | 37 + 38 +--- 39 + 40 +## 🧭 Терминал: перемещение по папкам Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +# 🛠️ Выбор и настройка IDE для C++ 2 + 3 +> **IDE** — программа, в которой ты пишешь код. Она подсвечивает ошибки, подсказывает и запускает программу. 4 +> ⬅️ [Назад к оглавлению](README.md) 5 + 6 +> [!IMPORTANT] 7 +> Сначала установи **компилятор**: [🍏 macOS](01_macOS.md#шаг-1-установи-компилятор-) · [🪟 Windows](02_Windows.md#шаг-1-установи-msys2-). 8 +> Без компилятора ни одна IDE (кроме Visual Studio и Xcode) не сможет собрать C++. 9 + 10 +--- 11 + 12 +## 🤔 Какую выбрать? 13 + 14 +| IDE | Сложность | macOS | Windows | Цена | Кому подойдёт | 15 +|---|:---:|:---:|:---:|---|---| 16 +| ⭐ **[VS Code](#-vs-code--рекомендуем)** | 🟢 легко | ✅ | ✅ | бесплатно | **Всем новичкам. Используем на занятиях** | 17 +| **[CLion](#-clion)** | 🟢 легко | ✅ | ✅ | бесплатно для учёбы | Тем, кто хочет «всё из коробки» | 18 +| **[Visual Studio](#-visual-studio-только-windows)** | 🟡 средне | ❌ | ✅ | бесплатно (Community) | Windows, если не хочешь ставить MSYS2 | 19 +| **[Xcode](#-xcode-только-macos)** | 🟡 средне | ✅ | ❌ | бесплатно | Mac, большая среда от Apple | 20 +| **[Zed](#-zed)** | 🟡 средне | ✅ | ✅ | бесплатно | Любителям быстрых и минималистичных редакторов | 21 +| **[Neovim](#-neovim-для-продвинутых)** | 🔴 сложно | ✅ | ✅ | бесплатно | Тем, кто любит клавиатуру и терминал | 22 + 23 +> [!TIP] 24 +> Не знаешь, что выбрать — бери **VS Code**. Под него в папке курса уже всё настроено. 25 + 26 +--- 27 + 28 +## ⭐ VS Code — рекомендуем 29 + 30 +Лёгкий и популярный редактор от Microsoft. 31 + 32 +### 📥 Скачать 33 + 34 +| | Ссылка | 35 +|---|---| 36 +| 🍏 macOS | [code.visualstudio.com/download](https://code.visualstudio.com/download) → **Mac** (или `brew install --cask visual-studio-code`) | 37 +| 🪟 Windows | [code.visualstudio.com/download](https://code.visualstudio.com/download) → **Windows** (или `winget install Microsoft.VisualStudioCode`) | 38 + 39 +### 🧩 Расширения 40 + Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +# 🚀 C++ — с чего начать 2 + 3 +> Ты только начинаешь писать на C++? Отлично, ты в нужном месте. 4 +> Здесь пошагово: **что установить → как написать первую программу → как её запустить**. 5 + 6 +--- 7 + 8 +## 🗺️ Куда идти 9 + 10 +| Шаг | Файл | Что внутри | 11 +|:---:|---|---| 12 +| **1** | 🍏 [**macOS — установка и первый запуск**](01_macOS.md) | Если у тебя MacBook / iMac | 13 +| **1** | 🪟 [**Windows — установка и первый запуск**](02_Windows.md) | Если у тебя Windows 10 / 11 | 14 +| **2** | 📋 [**Шпаргалка**](03_шпаргалка.md) | Все команды и горячие клавиши на одной странице | 15 +| **3** | 🛠️ [**Выбор и настройка IDE**](04_настройка_IDE.md) | VS Code, CLion, Zed, Visual Studio, Neovim | 16 + 17 +> [!TIP] 18 +> Выбери **один** файл под свою систему (шаг 1) и пройди его сверху вниз. 19 +> Остальное — когда понадобится. 20 + 21 +--- 22 + 23 +## 🧠 Как это вообще работает (за 1 минуту) 24 + 25 +Компьютер не понимает C++ напрямую. Твой код нужно **собрать** (скомпилировать) в программу, а потом **запустить**. 26 + 27 +```text 28 + example.cpp ──► 🔨 компилятор ──► example (.exe) ──► ▶️ запуск 29 + (твой код) clang++ / g++ (готовая программа) (результат) 30 +``` 31 + 32 +| Слово | Что значит простыми словами | 33 +|---|---| 34 +| **Компилятор** | Переводчик с C++ на язык компьютера. На Mac — `clang++`, на Windows — `g++` | 35 +| **Сборка** | Превращение `.cpp` файла в программу. *Ещё не запуск!* | 36 +| **Запуск** | Выполнение готовой программы | 37 +| **IDE / редактор** | Программа, где ты пишешь код (VS Code, CLion…). Сама по себе C++ не собирает — она вызывает компилятор | 38 +| **Отладчик** | Позволяет выполнять программу по шагам и смотреть значения переменных | 39 + 40 +> [!IMPORTANT] Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +""" 2 +Вопрос: "Как нейрости принмает решение ? Пример, определяет письо спам или нет ?" 3 + 4 +Объяснение: Нейроная сеть получает набор чисел - признаков объекта. 5 +К примеру: 6 +- Кол-во ссылко в письме 7 +- кол-во подозрительных слов 8 +- кол-во заглавных букв 9 + 10 +Каждый признает имеет ВАЖНОСТЬ или по другому (ВЕС) 11 + 12 +Чтобы быстро обработать тысячи и миллионы таких признаков, используются матрицы 13 +Разберем: 14 +- Что такое матрица 15 +- Как выпонляется умножение матриц 16 +- Применение в ИИ 17 +- Как писать на Python 18 + 19 + 20 +Что такое матрица ? 21 +Матрица это таблица чисел 22 + 23 +Пример: 24 + 25 +| 3 | 5 | 2 | - это матрица размером 1x3 26 + 27 +другой пример: 28 +| 4 29 +| 1 30 +| 2 31 + 32 +это матрица 3x1 33 + 34 +ЗАЧЕМ МАТРИЦА В ИИ 35 + 36 +допустим, письмо описывается тремя признаками: 37 +x = [3, 5, 2] 38 +где: 39 +3 - кол-во ссылок 40 +5 - кол-во подозрительных слов Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +# Документация по Уроку 2 + 3 +## 1. Скачать Python 4 +Официальный сайт Python: 5 +- [Python.org](https://www.python.org/) 6 + 7 +Рекомендуется скачивать последнюю стабильную версию Python 3.x. 8 + 9 +## 2. Онлайн-IDE для тестирования кода 10 +- [OnlineGDB Python Debugger](https://www.onlinegdb.com/online_python_debugger) – быстрый способ тестировать Python-код без установки. 11 + 12 +## 3. Правила написания кода 13 +- Использовать стандарт [PEP 8](https://peps.python.org/pep-0008/) (PEP 8 — Style Guide for Python Code). 14 +- Чистый и читаемый код. 15 +- Именование переменных в стиле snake_case. 16 +- Ограничение длины строк 79–99 символов. 17 +- Комментарии для сложной логики. 18 + 19 +## 4. Установка Python и важные особенности 20 + 21 +### Windows: 22 +- Скачайте установщик с [Python.org](https://www.python.org/). 23 +- Выберите опцию Add Python to [PATH](https://education.launchcode.org/lchs/_images/win-python-installer.png). 24 +- Следуйте инструкциям установки. 25 + 26 +### macOS: 27 +- Установите через Homebrew: 28 +```bash 29 +brew install python 30 +``` 31 +- Проверка версии: 32 +```bash 33 +python3 --version 34 +``` 35 + 36 +### Linux: 37 +- Установите через пакетный менеджер: 38 +```bash 39 +sudo apt update 40 +sudo apt install python3 python3-pip Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +[ 2 + { 3 + "username": "Yury", 4 + "password": "test2026" 5 + } 6 +] \ No newline at end of file -
Показать разницуСкрыть разницу
1 +import json 2 + 3 +class User: 4 + def __init__(self, username: str, password: str) -> None: 5 + self.username = username 6 + self.password = password 7 + 8 + def get_dict(self) -> dict[str, str]: 9 + return {"username": self.username, "password": self.password} 10 + 11 +def get_user(username: str) -> User | None: 12 + with open("data.json", "r", encoding="utf-8") as file: 13 + data: list[dict[str, str]] = json.load(fp=file) 14 + for account in data: 15 + if account.get(username): 16 + return User(account["username"], account["password"]) 17 + 18 +def create_user(new_user: User) -> User | None: 19 + user = get_user(username=new_user.username) 20 + if user is None: 21 + with open("data.json", "w", encoding="utf-8") as file: 22 + json.dump(obj=new_user.get_dict(), fp=file) 23 + return new_user 24 + 25 +new_account = User(username="Yury", password="test2026") 26 +create_user(new_user=new_account) -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +# 1.2. Ввод и вывод данных. Типы данных. Понятие переменной 2 + 3 +- `lecture/` — примеры с урока 4 +- `practices/` — задачи и решения (`anketa/` — задача «Анкета», `tasks_gpt.md` — дополнительные задачи) -
Показать разницуСкрыть разницу
1 +print("Hello", "World!", sep="<><><><>", end="") 2 +print("Кто ты воин?", end="") 3 +print("Я Алихес") 4 +print() -
Показать разницуСкрыть разницу
1 +from _typeshed import StrPath 2 + 3 + 4 +print("Моё имя Юрий") 5 + 6 +# print() <- это функция/команда, которая позволяет выводить переданную в него информацию в консоль 7 + 8 +list_names: list[str] = ["Николай", "Стас", "Тимур", "Максим"] 9 +for name in list_names: 10 + print(name) 11 + 12 +print(type(print)) # type() <- type() это функция, которая позволяет выводить типо обьекта 13 +print(type(type)) 14 + 15 +print("Hello", "User", "Как твои дела?", sep="<->") 16 + 17 +# Символы \n это символы которые в комбинации говорят о том что надо резделить строку 18 +print("Who", "you", "man?", sep="\n", end="\n") # -> "Who\nyou\nman?\n" 19 +print("Новое сообщение") 20 + 21 +user: str = input("Ваше имя ? ") 22 +age: int = int(input("Сколько лет")) 23 +print("Моё имя:", user) 24 + 25 +price: float = 19.99999 26 +print("Price: {} USD".format(price)) 27 +print(f"Price: {price:.2f} USD") 28 + 29 +user_age: int = input() 30 +print("Через 5 лет вам будет:", user_age + 5) 31 +print(f"Через 5 лет вам будет: {user_age + 5}") 32 +print("Через 5 лет вам будет: {}".format(user_age + 5)) 33 + 34 +""" 35 +Traceback (most recent call last): 36 + File "/Volumes/MacSSD/Projects/Develop/KB/Github/kb-group-base/lesson 2/practices/tasks.py", line 91, in <module> 37 + print("Через 5 лет вам будет:", user_age + 5) 38 + ~~~~~~~~~^~~ 39 +TypeError: can only concatenate str (not "int") to str 40 +urijanciferov@Ancdev lesson 2 % Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Python 2025-2026/1.2. Ввод и вывод данных. Типы данных. Понятие переменной/practices/anketa/data.txt +21
Показать разницуСкрыть разницу
1 + 2 +========================= 3 +АНКЕТА ПОЛЬЗОВАТЕЛЯ 4 +========================= 5 +Имя: Юрий 6 +Фамилия: Анциферов 7 +Город: Москва 8 + 9 +Возраст: 28 лет 10 +Через 5 лет: 33 лет 11 + 12 +Любимый предмет: Физра 13 +Оценка: 5 14 + 15 +Рост: 168 см (1.68 м) 16 +Вес: 67 кг 17 + 18 +Индекс массы тела: 23.738662131519277 19 + 20 +========================= 21 + -
Python 2025-2026/1.2. Ввод и вывод данных. Типы данных. Понятие переменной/practices/anketa/main.py +44
Показать разницуСкрыть разницу
1 +print("Введите запрашиваемые данные для анкеты: ") 2 +first_name: str = input("Имя: ") 3 +last_name: str = input("Фамилия: ") 4 +age: int = int(input("Возраст: ")) 5 +live_city: str = input("Город проживания: ") 6 +favorite_subject_school: str = input("Любимый предмет в школе: ") 7 +grade_favorite_subject: int = int(input("Оценка по любимому предмету в школе: ")) 8 +height: int = int(input("Рост(СМ): ")) 9 +weight: int = int(input("Вес(КГ): ")) 10 + 11 + 12 +# Вариант, которые мне не нравятся 13 +# anketa: str = "=====================\nАНТЕТА ПОЛЬЗОВАТЕЛЯ\n=================\nИмя" 14 + 15 +# Варианты, которые мне не нравятся 16 +# print("=" * 25, "АНКЕТА ПОЛЬЗОВАТЕЛЯ", "=" * 25, "Имя: {}".format(first_name), sep="\n") 17 + 18 +# Вариант, который нравится 19 +anketa: str = f""" 20 +{"=" * 25} 21 +АНКЕТА ПОЛЬЗОВАТЕЛЯ 22 +{"=" * 25} 23 +Имя: {first_name} 24 +Фамилия: {last_name} 25 +Город: {live_city} 26 + 27 +Возраст: {age} лет 28 +Через 5 лет: {age + 5} лет 29 + 30 +Любимый предмет: {favorite_subject_school} 31 +Оценка: {grade_favorite_subject} 32 + 33 +Рост: {height} см ({height / 100} м) 34 +Вес: {weight} кг 35 + 36 +Индекс массы тела: {weight / ((height / 100) ** 2)} 37 + 38 +{"=" * 25} 39 +""" 40 +print(anketa) Разница обрезана: показаны первые 40 строк. -
Python 2025-2026/1.2. Ввод и вывод данных. Типы данных. Понятие переменной/practices/anketa/task.md +83
Показать разницуСкрыть разницу
1 +Большая задача на input / print / базовые вычисления 2 + 3 +Задача: Анкета пользователя 4 + 5 +Написать программу, которая собирает данные о пользователе и выводит оформленную анкету. 6 + 7 +⸻ 8 + 9 +Требования 10 + 11 +Программа должна запросить у пользователя: 12 + 1. Имя 13 + 2. Фамилию 14 + 3. Возраст 15 + 4. Город проживания 16 + 5. Любимый предмет 17 + 6. Оценку по любимому предмету 18 + 7. Рост (в сантиметрах) 19 + 8. Вес (в килограммах) 20 + 21 +Все данные вводятся через input(). 22 + 23 +Возраст, рост и вес должны быть преобразованы в int. 24 + 25 +⸻ 26 + 27 +Дополнительные вычисления 28 + 29 +Программа должна: 30 + 1. Посчитать возраст через 5 лет 31 + 2. Посчитать рост в метрах 32 +(разделить сантиметры на 100) 33 + 3. Вывести примерный индекс массы тела (ИМТ): 34 + 35 +ИМТ = вес / (рост_в_метрах ** 2) 36 + 37 + 38 +⸻ 39 + 40 +Формат вывода Разница обрезана: показаны первые 40 строк. -
Python 2025-2026/1.2. Ввод и вывод данных. Типы данных. Понятие переменной/practices/gpt/tasks.py +125
Показать разницуСкрыть разницу
1 +""" 2 +Задачи на input / print (Python). Без условий, только ввод и вывод. 3 + 4 +Уровень 1 — базовые 5 + 1. Ввести имя пользователя. Вывести строку: 6 +Привет, <имя> 7 + 2. Ввести город. Вывести строку: 8 +Я живу в <город> 9 + 3. Ввести число. Вывести это же число. 10 + 4. Ввести два числа. Вывести их через пробел в одной строке. 11 + 5. Ввести строку. Вывести строку: 12 +Вы ввели: <строка> 13 +""" 14 + 15 +# Level 1 | 1 16 +""" 17 +username: str = input("Введите ваше имя: ") 18 +print("Привет,", username) 19 +print(f"Привет, {username}") 20 +print("Привет, {}".format(username)) 21 +""" 22 +# Level 1 | 2 23 +""" 24 +my_city: str = input("Введите ваш город: ") 25 +print("Я живу в", my_city) 26 +print(f"Я живу в {my_city}") 27 +print("Я живу в {}".format(my_city)) 28 +""" 29 +# Level 1 | 3 30 +""" 31 +my_number: str = input("Введите число: ") 32 +print(my_number) 33 +""" 34 +# Level 1 | 4 35 +""" 36 +number_one: str = input("Введите первое число: ") 37 +number_two: str = input("Введите второе число: ") 38 +print(number_one, number_two) 39 +print(number_one, end=" ") 40 +print(number_two) Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +""" 2 +Task::1 3 +Выведите на экран строку Hello, World! С помощью 4 +функции print(). 5 +Формат входных данных: 6 +Выввода нет 7 + 8 +Формат выходных данных: 9 +Одна строка с текстом 10 +""" 11 + 12 +# Task::1 13 +print("Hello, World!") 14 + 15 +""" 16 +Task::2 17 +Создайтеайте переменную name = "Alice" и age = 25. Выведите на одной строке: 18 +Name: Alice Age: 25 19 + 20 +example JS print() -----> 21 +console.log("Hello world") 22 +const name = "Alice"; 23 +console.log(`Name: ${name}`) 24 +""" 25 +# Task::2 26 +name: str = "Alice" 27 +age: int = 25 28 +print("Name:", name, "Age:", age) 29 +print(f"Name: {name} Age: {age}") 30 +print("Name: {} Age: {}".format(name, age)) 31 + 32 +# example вычисление f-строке 33 +print(f"Мне сколько то лет: {15 - 40 + age}, age: {age}") 34 +print("Мне сколько то лет: {}, Возраст: {}".format(15 - 40 + age, age)) 35 + 36 +""" 37 +Task::3 38 +Выведите двумя строками текст: 39 +First line 40 +Second line Разница обрезана: показаны первые 40 строк. -
Python 2025-2026/1.2. Ввод и вывод данных. Типы данных. Понятие переменной/practices/tasks_gpt.md +63
Показать разницуСкрыть разницу
1 +Задачи на input / print (Python). Без условий, только ввод и вывод. 2 + 3 +Уровень 1 — базовые 4 + 1. Ввести имя пользователя. Вывести строку: 5 +Привет, <имя> 6 + 2. Ввести город. Вывести строку: 7 +Я живу в <город> 8 + 3. Ввести число. Вывести это же число. 9 + 4. Ввести два числа. Вывести их через пробел в одной строке. 10 + 5. Ввести строку. Вывести строку: 11 +Вы ввели: <строка> 12 + 13 +⸻ 14 + 15 +Уровень 2 — несколько input 16 + 6. Ввести имя и возраст. Вывести: 17 +Имя: <имя>, Возраст: <возраст> 18 + 7. Ввести три слова по одному на строке. Вывести их в одну строку через пробел. 19 + 8. Ввести фамилию и имя. Вывести: 20 +<имя> <фамилия> 21 + 9. Ввести страну и столицу. Вывести: 22 +Столица страны <страна> — <столица> 23 + 10. Ввести название предмета и оценку. Вывести: 24 +По предмету <предмет> получена оценка <оценка> 25 + 26 +⸻ 27 + 28 +Уровень 3 — форматированный вывод 29 + 11. Ввести имя. Вывести: 30 + 31 +********** 32 +Привет, <имя> 33 +********** 34 + 35 + 12. Ввести два слова. Вывести каждое слово с новой строки. 36 + 13. Ввести логин. Вывести: 37 +Ваш логин: [<логин>] 38 + 14. Ввести три числа. Вывести: 39 +Числа: <число1>, <число2>, <число3> 40 + 15. Ввести имя и профессию. Вывести: Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +{ 2 + "type": "excalidraw", 3 + "version": 2, 4 + "source": "https://excalidraw.com", 5 + "elements": [ 6 + { 7 + "id": "QOzKBvl5ONFO6dEk_3Vmu", 8 + "type": "image", 9 + "x": 318.59117997616204, 10 + "y": 313.61301084236857, 11 + "width": 792.817640047676, 12 + "height": 554.7739783152629, 13 + "angle": 0, 14 + "strokeColor": "transparent", 15 + "backgroundColor": "#ffc9c9", 16 + "fillStyle": "solid", 17 + "strokeWidth": 2, 18 + "strokeStyle": "solid", 19 + "roughness": 1, 20 + "opacity": 100, 21 + "groupIds": [], 22 + "frameId": null, 23 + "index": "bEP", 24 + "roundness": null, 25 + "seed": 1789235194, 26 + "version": 75, 27 + "versionNonce": 1263327590, 28 + "isDeleted": false, 29 + "boundElements": [], 30 + "updated": 1774249702663, 31 + "link": null, 32 + "locked": false, 33 + "status": "saved", 34 + "fileId": "9c39acc22615d7bb56c481d7e28324e6fccf1f08", 35 + "scale": [ 36 + 1, 37 + 1 38 + ], 39 + "crop": null 40 + }, Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +""" 2 +Task::1 3 +Напиши программу, которая 4 +проверяет, может ли человек 5 +получить водительские права 6 +""" 7 + 8 +age: int = int(input("Сколько полных лет: ")) 9 +if age >= 18: 10 + print("Вы можете получить права") 11 +else: 12 + print("Вы не можите получить права\nТы ещё мал") 13 + 14 +""" 15 +age = Преобразоваем_данную_строку_в_число(Запрашиваем_данные_из_консоли_ввода("Сколько полных лет: ")) 16 +Если подставляем_значение_переменой_age >= 18 то: 17 + распечатай_сообщение("Вы можете получить права") 18 +Иначе_выполни вот это действие: 19 + распечатай_сообщение("Вы не можете получить права\nТы ещё мал") 20 +""" 21 + 22 +""" 23 +Task::2 24 +Напиши программу, которая определяет размер скидки в зависимости от суммы 25 +покупки: 26 +- если суммка покупки меньше 1000 р = 0% 27 + от 1000 до 5000 = 5% 28 + Выше 5000 = 10% 29 +""" 30 +""" 31 +purchase_amount: float = float(input("Сумма вашей покупки ?: ")) 32 +message: str = "За покупку на сумму: {} руб, вы получайте скидку в размере {}%\nИтого сумма к оплате: {} руб." 33 +if purchase_amount < 1000: 34 + print(message.format(purchase_amount, 0, purchase_amount * 1)) 35 +elif 1000 <= purchase_amount <= 5000: 36 + print(message.format(purchase_amount, 5, purchase_amount * 0.95)) 37 +else: 38 + print(message.format(purchase_amount, 10, purchase_amount * 0.90)) 39 +""" 40 +""" Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +""" 2 +Task::1 3 +Напиши программу, которая проверяет, может ли 4 +человек получить водительские права 5 +""" 6 + 7 +""" 8 +age_user: int = int(input("Сколько вам лет?: ")) 9 + 10 +# 1 Версия 11 +if age_user >= 18: # if 15 >= 18: => if False !!! следовательно мы переходим на ветку else 12 + print("Можно получить права") 13 +else: 14 + print("Ещё рано получать права") 15 + 16 +# 2 Версия 17 +check: bool = age_user > 18 18 +if check: 19 + print("Можно получить права") 20 +else: 21 + print("Ещё рано получать права") 22 +""" 23 + 24 +""" 25 +Task::2 26 +Напиши программу, которая определяет размер скидки в 27 +зависимости от суммы покупки: 28 +""" 29 +""" 30 +purchase_amount: float = float(input("Введите сумму покупки: ")) 31 +message: str = "Сумма покупки {}\n% сидки: {}\nИтоговая сумма к оплате: {}" 32 +if purchase_amount < 1000: 33 + print(message.format(purchase_amount, 0, purchase_amount * 1)) 34 + # 1. purchase_amount = 1500.0 35 + # 2. print(...) => Сумма покупки 1500.0\n% скидки: 0\nИтоговая сумму к оплате: 1500.0\n 36 +elif 1000 < purchase_amount < 5000: 37 + print(message.format(purchase_amount, 5, purchase_amount * 0.95)) 38 +else: 39 + print(message.format(purchase_amount, 10, purchase_amount * 0.90)) 40 +""" Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +""" 2 +Task::1 3 +Напиши программу, которая определяет 4 +попадает ли введенное пользователем число 5 +в диапозон от 10 до 20 включительно 6 +""" 7 + 8 +""" 9 +# CODE 10 +user_number: int = int(input("Введите число для проверки диапозона: ")) # "15" => int("15") => 15 11 +result: bool = 10 <= user_number <= 20 # 10 <= 15 <= 20 => True 12 +# result: bool = 9 < user_number < 21 13 +print( 14 + "Резульат проверки, входит ли число {} в диапозон от 10 до 20 включительно равен {}".format( 15 + user_number, result 16 + ) 17 +) 18 +""" 19 + 20 +""" 21 +Task::2 22 +Напиши программу, которая определяет, является ли введенный пользователем 23 +год високосный 24 + 25 +Год считается високосный, если выполняется одно из условий: 26 +- делится на 4, но не делится на 100 27 +- делится на 400 28 +""" 29 +""" 30 +# CODE 31 +year: int = int(input("Введите год, который надо определить на високосность: ")) # 2024 32 +check_one: bool = (year % 4) == 0 and (year % 100) != 0 # 2024 % 4 == 0 and 2024 % 100 != 0 => 0 == 0 and "ЧИСЛО" != 0 => True and True => True 33 +check_two: bool = year % 400 == 0 # 2024 % 400 == 0 => "ЧИСЛО" == 0 => False 34 +result: bool = check_one or check_two # True or False => True 35 + 36 +# result = ((year % 4) == 0 and (year % 100) != 0) or year % 400 == 0 37 +print( 38 + "Результат проверки является ли год {} високосным равен = {}".format(year, result) 39 +) 40 + Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +""" 2 +Task::1 3 +Напиши программу, которая определяет, попадает ли введенное 4 +пользователем число в диапазон от 10 до 20 включительно. 5 +""" 6 + 7 +""" 8 +user_number: int = int( 9 + input("Введите число для проверки находится ли оно в диапазоне: ") 10 +) 11 +result: bool = 10 <= user_number <= 20 12 +# result: bool = 9 < user_number < 21 13 +message: str = "Проверка на то, что число <{}> входит в диапазон показало результат: {}" 14 +print(message.format(user_number, result)) 15 +""" 16 + 17 +""" 18 +Task::2 19 +Напиши программу, которая определяет, является ли введенный 20 +пользоваталем год високосным. 21 +Год считается високосным, если выполняется ОДНО ИЗ УСЛОВИЙ: 22 +- делится на 4, но не делится на 100 23 +- делится на 400 24 +""" 25 + 26 +year: int = int(input("Введите год: ")) 27 +# yaer = 2024 28 +check_one: bool = year % 4 == 0 and year % 100 != 0 29 +# 1. check_one = 2024 % 4 == 0 and 2024 % 100 != 0 30 +# 2. check_one = 0 == 0 and "какой то остаток" != 0 31 +# 3. check_one = True and True 32 +# 4. check_one = True 33 +check_two: bool = year % 400 == 0 34 +# 1. check_two = 2024 % 400 == 0 35 +# 2. check_two = "какой то остаток" == 0 36 +# 3. check_two = False 37 +result: bool = check_one or check_two 38 +# 1. result = True or False 39 +# 2. result = True 40 +message: str = "Результат проверки на то, что год {} присланый является високосным - {}" Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Python 2025-2026/1.4. Конструкция match case. Исключения и их обработка в Python/lecture/main.py +58
Показать разницуСкрыть разницу
1 +""" 2 +Проверка на возраст и доступ к сайту 3 +""" 4 + 5 +""" 6 +# If else 7 +age: int = int(input("Введите сколько вам лет: ")) 8 + 9 +if age >= 18: # Принцып работы идёт через True | False 10 + print("Доступ на сайт разрешен") 11 +else: 12 + print("Доступ на сайт запрещен") 13 + 14 +match age: 15 + case 18: # age == 18 16 + print("Доступ на сайт разрешен") 17 + case 17: 18 + print("Доступ на сайт запрещен") 19 + case _: 20 + print("Доступ на сайт запрещен") 21 + 22 +""" 23 + 24 +""" 25 + 26 +command: int = int(input("Введите номер комманды:\n1. Меню:\n 2. Настройки:\n 3. Выход")) 27 +if command == 1: 28 + print("Вы зашли в меню") 29 +elif command == 2: 30 + print("Вы зашли в Настройки") 31 +elif command == 3: 32 + print("Вы вышли из программа") 33 +else: 34 + print("Не корректная команда") 35 + 36 +match command: 37 + case 1: 38 + print("Вы зашли в меню") 39 + case 2: 40 + print("Вы зашли в Настройки") Разница обрезана: показаны первые 40 строк. -
Python 2025-2026/1.4. Конструкция match case. Исключения и их обработка в Python/lesson_4.excalidraw +8233
Показать разницуСкрыть разницу
1 +{ 2 + "type": "excalidraw", 3 + "version": 2, 4 + "source": "https://excalidraw.com", 5 + "elements": [ 6 + { 7 + "id": "QOzKBvl5ONFO6dEk_3Vmu", 8 + "type": "image", 9 + "x": 318.59117997616204, 10 + "y": 313.61301084236857, 11 + "width": 792.817640047676, 12 + "height": 554.7739783152629, 13 + "angle": 0, 14 + "strokeColor": "transparent", 15 + "backgroundColor": "#ffc9c9", 16 + "fillStyle": "solid", 17 + "strokeWidth": 2, 18 + "strokeStyle": "solid", 19 + "roughness": 1, 20 + "opacity": 100, 21 + "groupIds": [], 22 + "frameId": null, 23 + "index": "bEP", 24 + "roundness": null, 25 + "seed": 1789235194, 26 + "version": 76, 27 + "versionNonce": 1768664506, 28 + "isDeleted": true, 29 + "boundElements": [], 30 + "updated": 1774594592050, 31 + "link": null, 32 + "locked": false, 33 + "status": "saved", 34 + "fileId": "9c39acc22615d7bb56c481d7e28324e6fccf1f08", 35 + "scale": [ 36 + 1, 37 + 1 38 + ], 39 + "crop": null 40 + }, Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Python 2025-2026/1.4. Конструкция match case. Исключения и их обработка в Python/practices/.DS_StoreДвоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +""" 2 +Task::1 3 + 4 +Напиши программу, которая 5 +1. Спрашивает у пользователя код валюты(USD, EUR, GBP) 6 +2. Спрашивает у пользователя сумму. 7 +3. Конвертирует сумму в рубли по фиксированному курсу: 8 +USD 75.5 руб 9 +EUR 80.2 10 +GBP 90.1 11 +4. Если введена неизсветная валюта, выводите сообщение об ошибке 12 +5. Обязательно используйте match case 13 +""" 14 + 15 +""" 16 +type_message_error: str = "[ERROR]" 17 +type_message_info: str = "[INFO]" 18 + 19 +code_currency: str = input("{} Введите код валюты\n| USD | EUR | GBP |\nВвод: ".format(type_message_info)) 20 +try: 21 + sum_currency: float = float(input("{} Сумму, которую хотите конвертировать\nВвод: ".format(type_message_info))) 22 +except ValueError: 23 + sum_currency = 0.0 24 + print("{} Сумма введена не корректно, сброшенно на ноль".format(type_message_error)) 25 + 26 + 27 +match code_currency: 28 + case "USD": 29 + result: float = sum_currency * 75.5 30 + case "EUR": 31 + result: float = sum_currency * 80.2 32 + case "GBP": 33 + result: float = sum_currency * 90.1 34 + case _: 35 + code_currency = "NULL" 36 + result: float = 0.0 37 + print("{} Ошибка в воде валюты".format(type_message_error)) 38 + 39 + 40 +print( Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +""" 2 +Task::1 3 +Напиши программу калькулятор 4 +которая: 5 +1. Запрашивает у пользователя два числа 6 +2. Запрашивает операцию (+, -, *, /) 7 +3. Вычисляет резульат и выводи его 8 +4. Обрабатывает ошибки: 9 +- Деление на ноль -> ошибка Деление на ноль 10 +- Неверный ввод числа -> Ошибка ввода 11 +-> Незивестая операция -> Ошибка ввоад: Незиветсяа операция 12 +""" 13 + 14 +type_message_error: str = "TYPE MESSAGE: [ERROR]" 15 +type_message_info: str = "TYPE MESSAGE: [INFO]" 16 +line: str = "=" * 15 17 +try: 18 + one_number: float = float( 19 + input("{}\n{}\nВведите первое число\nВвод: ".format(line, type_message_info)) 20 + ) 21 +except ValueError: 22 + print("{}\n{}\nОшибка ввода") 23 + one_number: float = 1.0 24 +try: 25 + two_number: float = float( 26 + input("{}\n{}\nВведите второе число\nВвод: ".format(line, type_message_info)) 27 + ) 28 +except ValueError: 29 + print("{}\n{}\nОшибка ввода") 30 + two_number: float = 1.0 31 + 32 +operation: str = input("Введите необходимую операцию: ") 33 +result: float = 0 34 +match operation: 35 + case "+": 36 + result: float = one_number + two_number 37 + case "-": 38 + result: float = one_number - two_number 39 + case "*": 40 + result: float = one_number * two_number Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +""" 2 +number: int = 0 3 +try: 4 + number = int(input("Введите число: ")) 5 + print("Введеное число: {}".format(number)) 6 +except ValueError: 7 + print("При вводе числа была произвденна ошибка {}".format(number)) 8 +finally: 9 + print("Закрываю программу.") 10 +""" 11 + 12 +# Task::4 13 +""" 14 +role: str = input("Введите вашу роль: ") 15 + 16 +match role: 17 + case "admin": 18 + print("Полный доступ") 19 + case "editor": 20 + print("Редактирование") 21 + case "viewer": 22 + print("Просмотр") 23 + case _: 24 + print("Нет доступа") 25 +""" 26 +# Task::5 27 +try: 28 + temperature: int = int(input("Введите значение температуры: ")) 29 +except ValueError: 30 + temperature: int = 0 31 + print( 32 + "Из за не корретного введенного значения температуры, temperature = {}".format( 33 + temperature 34 + ) 35 + ) 36 + 37 +unit: str = input("Введите единица измерения C | F: ") 38 + 39 +match unit: 40 + case "F": Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +try: 2 + age: int = int(input("Введите ваш возраст")) 3 + 4 + if age < 0: 5 + raise ValueError 6 + elif age < 13: 7 + print("Ты ребёнок") 8 + elif 13 <= age <= 17: 9 + print("Ты подросток") 10 + else: 11 + print("Ты взрослый") 12 +except ValueError: 13 + print("Ошибка ввода") -
Показать разницуСкрыть разницу
1 +# // 04 2 +numbers: list[int] = [3, 7, 2, 9, 4, 5] 3 +numbers.append(10) 4 +numbers.remove(2) 5 +numbers.sort() 6 +print(numbers) 7 + 8 +# // 05 9 +numbers: list[int] = [10, 20, 30, 40, 50] 10 +# // 01 11 +print(numbers[0] + numbers[4]) 12 +print(numbers[0] + numbers[-1]) 13 +# // 02 14 +print(numbers[1] + numbers[3]) 15 +print(numbers[1] + numbers[-2]) 16 +# // 03 17 +numbers[0] = numbers[0] + 5 18 +numbers[-1] = numbers[-1] - 5 19 +print(numbers) 20 + -
Показать разницуСкрыть разницу
1 +{ 2 + "type": "excalidraw", 3 + "version": 2, 4 + "source": "https://excalidraw.com", 5 + "elements": [ 6 + { 7 + "id": "hRFKG1vbhCSgUqPDeF6dh", 8 + "type": "rectangle", 9 + "x": 687, 10 + "y": 167, 11 + "width": 241, 12 + "height": 149, 13 + "angle": 0, 14 + "strokeColor": "#1e1e1e", 15 + "backgroundColor": "transparent", 16 + "fillStyle": "solid", 17 + "strokeWidth": 2, 18 + "strokeStyle": "solid", 19 + "roughness": 1, 20 + "opacity": 100, 21 + "groupIds": [], 22 + "frameId": null, 23 + "index": "bJi", 24 + "roundness": { 25 + "type": 3 26 + }, 27 + "seed": 642895834, 28 + "version": 24, 29 + "versionNonce": 1517644263, 30 + "isDeleted": true, 31 + "boundElements": [ 32 + { 33 + "type": "text", 34 + "id": "-l1NYvcmXDQ71JfJ5nswL" 35 + }, 36 + { 37 + "id": "AFHejvLbx0pFyXkRKeOir", 38 + "type": "arrow" 39 + }, 40 + { Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +{ 2 + "type": "excalidraw", 3 + "version": 2, 4 + "source": "https://excalidraw.com", 5 + "elements": [ 6 + { 7 + "id": "3aClqCY4uoHv8NChFUav7", 8 + "type": "text", 9 + "x": 618, 10 + "y": 196.5, 11 + "width": 554, 12 + "height": 450, 13 + "angle": 0, 14 + "strokeColor": "#1e1e1e", 15 + "backgroundColor": "transparent", 16 + "fillStyle": "solid", 17 + "strokeWidth": 1, 18 + "strokeStyle": "solid", 19 + "roughness": 1, 20 + "opacity": 100, 21 + "groupIds": [], 22 + "frameId": null, 23 + "index": "bN5", 24 + "roundness": null, 25 + "seed": 645392679, 26 + "version": 236, 27 + "versionNonce": 1989264039, 28 + "isDeleted": false, 29 + "boundElements": [], 30 + "updated": 1775030042954, 31 + "link": null, 32 + "locked": false, 33 + "text": "переменная = значение\nимя переменной -> значение\n\ntotal: int = 5\ncount: int = 5\n\nphone: int = 79995553322\nphone_1: int = 79443336633\n\nnumbers_phone = []", 34 + "fontSize": 36, 35 + "fontFamily": 8, 36 + "textAlign": "left", 37 + "verticalAlign": "top", 38 + "containerId": null, 39 + "originalText": "переменная = значение\nимя переменной -> значение\n\ntotal: int = 5\ncount: int = 5\n\nphone: int = 79995553322\nphone_1: int = 79443336633\n\nnumbers_phone = []", 40 + "autoResize": true, Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +""" 2 +// 01 3 +""" 4 + 5 +# x = list(range(5, 16)) 6 + 7 +x: list = [] 8 +for i in range(5, 16): 9 + x.append(i) 10 +print(x) 11 + 12 +""" 13 +// 02 14 +""" 15 +""" 16 +/// Code 17 + 18 +numbers: list[int] = [4, 8, 15, 16, 23, 42] 19 +# print(len(numbers)) -> 6 20 +min_number = min(numbers) 21 +max_number = max(numbers) 22 +average_values: float = (sum(numbers)) / (len(numbers)) 23 +new_numbers: list[int] = [] 24 +if average_values < numbers[0]: 25 + new_numbers.append(numbers[0]) 26 +if average_values < numbers[1]: 27 + new_numbers.append(numbers[1]) 28 +if average_values < numbers[2]: 29 + new_numbers.append(numbers[2]) 30 +if average_values < numbers[3]: 31 + new_numbers.append(numbers[3]) 32 +if average_values < numbers[4]: 33 + new_numbers.append(numbers[4]) 34 +if average_values < numbers[5]: 35 + new_numbers.append(numbers[5]) 36 + 37 +print(f"Минимальное число в списке: {min_number}\nМаксимальное число в списке: {max_number}\nСреднее число в списке: {average_values}\nСписок с элементами, которые больше {average_values} = {new_numbers}") 38 +""" 39 +""" 40 +/// Решение через цикл Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +{ 2 + "type": "excalidraw", 3 + "version": 2, 4 + "source": "https://excalidraw.com", 5 + "elements": [ 6 + { 7 + "id": "u_5Fs1Qp6mM4c7sa7sx_y", 8 + "type": "freedraw", 9 + "x": 643, 10 + "y": 192, 11 + "width": 3, 12 + "height": 112, 13 + "angle": 0, 14 + "strokeColor": "#1e1e1e", 15 + "backgroundColor": "transparent", 16 + "fillStyle": "solid", 17 + "strokeWidth": 2, 18 + "strokeStyle": "solid", 19 + "roughness": 1, 20 + "opacity": 100, 21 + "groupIds": [], 22 + "frameId": null, 23 + "index": "bP6", 24 + "roundness": null, 25 + "seed": 1313996721, 26 + "version": 19, 27 + "versionNonce": 1769084385, 28 + "isDeleted": true, 29 + "boundElements": [], 30 + "updated": 1775115717812, 31 + "link": null, 32 + "locked": false, 33 + "points": [ 34 + [ 35 + 0, 36 + 0 37 + ], 38 + [ 39 + -1, 40 + 2 Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +some_tuple: tuple = ("p", "y", "t", "h", "o", "n") 2 + 3 +# последний элемент кортежа 4 +last_element: str = some_tuple[-1] 5 +print(last_element) 6 + 7 +# срез кортежа с первого элемент по третий элемент 8 +tuple_slice: tuple[str] = some_tuple[0:3] 9 +print(tuple_slice) 10 + 11 +# меняем значение первого элемента 12 +# some_tuple[0] = "C" -> Ошибка, потому что нельзя изменять значение элементов кортежа 13 + 14 + 15 +my_tuple: tuple = ([0], [1], {"username": "Andrei"}) 16 +print(my_tuple) 17 +my_tuple[0][0] = 10 18 +my_tuple[2]["username"] = "Nikita" 19 +print(my_tuple) 20 + 21 + 22 +def data(a: str, b: str, c: str) -> tuple: 23 + return a, b, c 24 + 25 + 26 +print(data(a="Hello", b="User", c="!")) 27 +print(type(data(a="Hello", b="User", c="!"))) -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +Практическая задача: Учёт заказов в интернет-магазине (кортежи) 2 + 3 +⸻ 4 + 5 +Задача: Учёт заказов клиентов 6 + 7 +Описание ситуации 8 + 9 +Есть интернет-магазин. 10 +Каждый заказ хранится как кортеж, содержащий фиксированный набор данных. 11 + 12 +Структура заказа: 13 + 14 +(id_заказа, имя_клиента, сумма_заказа, город) 15 + 16 +Пример одного заказа: 17 + 18 +order = (1001, "Иван", 2500, "Москва") 19 + 20 +Все заказы хранятся внутри общего кортежа orders. 21 + 22 +Пример: 23 + 24 +orders = ( 25 + (1001, "Иван", 2500, "Москва"), 26 + (1002, "Анна", 4200, "Казань"), 27 + (1003, "Петр", 1800, "Москва"), 28 + (1004, "Ольга", 5600, "Самара"), 29 + (1005, "Мария", 3100, "Москва") 30 +) 31 + 32 +⸻ 33 + 34 +Цель работы 35 + 36 +Отработать: 37 + • индексацию кортежей 38 + • вложенные кортежи 39 + • перебор кортежей 40 + • распаковку кортежей Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +GLOBAL_ID: int = 1005 2 + 3 +orders = ( 4 + ( 5 + 1001, 6 + "Иван", 7 + 2500, 8 + "Москва", 9 + ), # index 0 (1001 -> index 0, "Иван" -> index 1, 2500 -> index 2, "Москва" -> index 3) 10 + (1002, "Анна", 4200, "Казань"), # index 1 11 + (1003, "Петр", 1800, "Москва"), # index 2 12 + (1004, "Ольга", 5600, "Самара"), # index 3 13 + (1005, "Мария", 3100, "Москва"), # index 4 14 +) 15 +# orders[0][0] -> 1001 16 +# orders [4][3] -> 3100 17 + 18 +# 001 - ID: 1001 | Клиент: Иван | Сумма: 2500 | Город: Москва 19 +for index in range(len(orders)): 20 + print( 21 + "ID: {} | Клиент: {} | Сумма: {} | Город: {}".format( 22 + orders[index][0], orders[index][1], orders[index][2], orders[index][3] 23 + ) 24 + ) 25 + 26 +# 002 - Задание 2 — Найти общий доход магазина. Найти сумму всех заказов.Ожидаемый результат: Общий доход: 17200 27 +total_income: int | float = 0 28 +for index in range(len(orders)): 29 + total_income = total_income + orders[index][2] 30 + 31 +print("Общй доход: {}".format(total_income)) 32 + 33 +# 003 Найти самый дорогой заказ. Вывести заказ с максимальной суммой. Формат вывода: Самый дорогой заказ: ID: XXXX | Клиент: XXXX | Сумма: XXXX 34 +max_amount: int | float = 0 35 +order_max_amount_index = 0 36 +for index in range(len(orders)): 37 + if orders[index][2] > max_amount: 38 + order_max_amount_index = index 39 +print( 40 + "Самый дорогой заказ: ID: {} | Клиент: {} | Сумма: {} | Город: {}".format( Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +### 01 2 + 3 +my_tuple: tuple = (10, 20, 30, 20, 40) 4 + 5 +if 20 in my_tuple: 6 + print(True) 7 +else: 8 + print(False) 9 +count_number: int = my_tuple.count(20) 10 +my_tuple_slice: tuple[()] = my_tuple[1:4] 11 + 12 +try: 13 + my_tuple[3] = 50 14 + 15 +except TypeError: 16 + print("[ERROR] Нельзя изменять значение кортежа") 17 + 18 +### 02 19 + 20 +numbers: tuple = (5, 2, 8, 1, 9) 21 +max_number: int = max(numbers) 22 +min_number: int = min(numbers) 23 +sum_numbers: int = sum(numbers) 24 +report_02: str = "Кортеж {} имеет такие характеристики\nМаксимальное число: {}\nМинимальное число: {}\nСумма всех чисел {}".format( 25 + numbers, max_number, min_number, sum_numbers 26 +) 27 + 28 +### Альтернативное решение 29 +if len(numbers) > 0: 30 + print(numbers) 31 + alter_max_number: int = numbers[0] 32 + alter_min_number: int = numbers[0] 33 + alter_sum_numbers: int = 0 34 + for index in range(len(numbers)): 35 + if alter_max_number < numbers[index]: 36 + alter_max_number = numbers[index] 37 + if alter_min_number > numbers[index]: 38 + alter_min_number = numbers[index] 39 + alter_sum_numbers = alter_sum_numbers + numbers[index] 40 + print(report_02) Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +# 01 Создайте пустой кортеж и выведите его на экран. 2 +my_first_tuple: tuple = () 3 +altel_create_tuple: tuple = tuple() 4 +print("{}\n{}".format(my_first_tuple, altel_create_tuple)) 5 + 6 +# 02 Создайте кортеж из 5 чисел и выведите первый и последний элементы. 7 +my_two_tuple: tuple = (2000, 2001, 2002, 2003, 2004) 8 +report_two: str = "Первый элемент: {}\nПоследний элемент: {}".format( 9 + my_two_tuple[0], my_two_tuple[-1] 10 +) 11 + 12 +# 03 Сравните кортеж и список по критериям изменяемости, скорости и памяти. 13 +""" 14 +Кортеж обладает такими характеристиками, как: 15 +- неизменяемость 16 +- занимает меньше памяти 17 +- быстрее скорость 18 + 19 +Список обладает такими характеристиками, как: 20 +- изменяемость 21 +- занимает больше памяти, чем кортеж по той причине, что он может расширяется, следовательно надо выделять больше памяти + так же менятся 22 +- медленее чем кортежи, данные в памяти хранятся чем кортежи 23 +""" 24 + 25 +# 04 Объясните, почему кортежи могут использоваться в качестве ключей словарей. 26 +""" 27 +Кортежи могут использоваться в качестве ключей в словоре потому, что для того, что бы быть ключом 28 +в слове главное обладать такой характеристикой - неизменяемость. 29 + 30 +Пример из жизни: 31 +- Есть дом, в доме есть квартиры у квартир есть двери с замками, и чтобы попасть в квартиру надо открыть дверь ключом 32 +ключи у каждой квартиры должно быть уникальны и неизменяемы иначе как можно было бы попасть домой. 33 +""" 34 + 35 +# 06 Как проверить наличие элемента в кортеже? Приведите пример кода. 36 +my_six_tuple: tuple = ("login", "password", "token", "email") 37 +if "login" in my_six_tuple: 38 + print("login есть в кортеже") 39 +else: 40 + print("login нет в кортеже") Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +users: set[str] = {"Alice", "Tom", "Alex", "Alice", "John"} 2 +# {'Tom', 'John', 'Alice', 'Alex'} 3 +print(users) 4 +users.add("Loki") 5 +print(users) 6 +for user in users: 7 + print(user) 8 + 9 +""" 10 +students: set[str] = {f"дима", "даша", "алексей", "Ирина", "Олег", "Дима"} 11 +student: str = "даша" 12 +for student in students: 13 + students.remove(student) 14 +print(students) 15 +""" 16 + 17 +set1: set[int] = {1, 2, 3, 4} 18 +set2: set[int] = {1, 2, 3, 4} 19 +result1 = set1.intersection(set2) 20 +result2 = set1 & set2 21 +print(result1, result2) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +users = {"Олег", "Даша", "Настя", "Стас", "Никита", "Олег"} 2 +print(users) 3 +users.add("Настя") 4 +print(users) 5 +users.add("Кирилл") 6 +print(users) 7 + 8 +list_cart = ["iPhone", "Картошка", "Доширак", "Чипсы", "Печенья", "Картошка", "Огурцы", "Доширак"] 9 +set_cart = set(list_cart) 10 +print(len(list_cart), list_cart) 11 +print(len(set_cart), set_cart) 12 + 13 +new_user: frozenset = frozenset(users) 14 +print(new_user, type(new_user)) 15 +my_frozenset = frozenset((1, 2, 3, 4, 5)) 16 +set1 = {1,2,3,4} 17 +set2 = {3,4,5,6} 18 +print(set1 - set2) 19 +print(set1.difference(set2)) 20 +print(set2 - set1) 21 +print(set2.difference(set1)) 22 + 23 + 24 +""" 25 +Напиши код для проверки, есть ли дубликаты в списке с помощью множеств. 26 +""" 27 +products = ["milk", "egg", "apple", "chocolate", "milk"] 28 +if len(products) == len(set(products)): 29 + print("Дубликатов нет") 30 +else: 31 + print("Есть дубликаты") \ No newline at end of file -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +""" 2 +Задача 1 — Уникальные клиенты за день 3 +Уровень: базовый 4 +Контекст: интернет-магазин 5 +Условие 6 +Интернет-магазин ведёт журнал посещений сайта. 7 +Каждый элемент списка — это ID клиента, посетившего сайт. 8 + 9 +Один клиент может заходить на сайт несколько раз в течение дня. 10 +visits = [ 11 + 101, 102, 103, 101, 12 + 104, 102, 105, 13 + 106, 103, 107 14 +] 15 +Требуется 16 + 1. Получить уникальный список клиентов, посетивших сайт. 17 + 2. Посчитать количество уникальных клиентов. 18 + 3. Проверить, посещал ли сайт клиент с ID 105. 19 + 20 +Бизнес-смысл 21 + 22 +Используется для: 23 + • расчёта реального числа клиентов 24 + • оценки уникального трафика 25 + • формирования ежедневной статистики 26 +""" 27 + 28 +visits = [ 29 + 101, 102, 103, 101, 30 + 104, 102, 105, 31 + 106, 103, 107 32 +] 33 + 34 +unique_visits: list[int] = list(set(visits)) 35 +visit_id: int = 115 36 +status_visit: bool = False 37 +if visit_id in unique_visits: 38 + status_visit = True 39 + 40 +report: str = f"Уникальный список клиентов:\n{unique_visits}\nКол-во уникальный клиентов: {len(unique_visits)}\nСтатус посещение клиента с ID: {visit_id} = {status_visit}" Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +""" 2 +Задача 2 — Общие клиенты двух филиалов 3 + 4 +Уровень: средний 5 +Контекст: сеть магазинов 6 + 7 +Условие 8 + 9 +Компания имеет два филиала. 10 +Каждый филиал ведёт список клиентов, совершивших покупки за месяц. 11 +branch_a_clients = { 12 + "Ivanov", 13 + "Petrov", 14 + "Sidorov", 15 + "Smirnov", 16 + "Kuznetsov" 17 +} 18 + 19 +branch_b_clients = { 20 + "Smirnov", 21 + "Popov", 22 + "Ivanov", 23 + "Volkov", 24 + "Fedorov" 25 +} 26 +Требуется 27 + 1. Найти клиентов, которые покупали в обоих филиалах. 28 + 2. Найти клиентов, которые покупали только в филиале A. 29 + 3. Найти клиентов, которые покупали только в одном из филиалов. 30 + 4. Определить общее количество уникальных клиентов по двум филиалам. 31 + 32 +Бизнес-смысл 33 + 34 +Используется для: 35 + • анализа пересечения клиентских баз 36 + • выявления лояльных клиентов 37 + • планирования маркетинговых акций 38 +""" 39 + 40 +branch_a_clients = { Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +""" 2 +Задача 3 — Контроль доступа сотрудников к системам 3 + 4 +Уровень: выше среднего 5 +Контекст: IT-инфраструктура компании 6 + 7 +Условие 8 + 9 +В компании есть: 10 + • список сотрудников 11 + • список сотрудников, имеющих доступ к финансовой системе 12 + • список сотрудников, имеющих доступ к HR-системе 13 + 14 +employees = { 15 + "Ivanov", 16 + "Petrov", 17 + "Sidorov", 18 + "Smirnov", 19 + "Kuznetsov", 20 + "Popov", 21 + "Volkov" 22 +} 23 + 24 +finance_access = { 25 + "Ivanov", 26 + "Petrov", 27 + "Smirnov" 28 +} 29 + 30 +hr_access = { 31 + "Petrov", 32 + "Volkov", 33 + "Kuznetsov" 34 +} 35 +Требуется 36 + 1. Найти сотрудников, имеющих доступ к обеим системам. 37 + 2. Найти сотрудников, имеющих доступ только к финансовой системе. 38 + 3. Найти сотрудников, которые не имеют доступа ни к одной системе. 39 + 4. Проверить, все ли сотрудники из списков доступа действительно существуют в общем списке сотрудников. 40 + 5. Получить список сотрудников, имеющих доступ хотя бы к одной системе. Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +fruits: set[str] = { 2 + "apple", 3 + "banana", 4 + "orange" 5 +} 6 +numbers: set[int] = {1, 2, 3, 4, 5} 7 +colors_list: list[str] = ["red", "green", "blue", "red"] 8 +colors_set: set[str] = set(colors_list) 9 +print(colors_set) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +fruits: set[str] = {"apple", "banana", "orange"} 2 +fruits.add("mango") 3 +print(fruits) 4 +fruits.update(["kiwi", "pear"]) 5 +print(fruits) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +fruits: set[str] = {'apple', 'banana', 'mango', 'kiwi', 'pear', 'orange'} 2 +fruits.remove("apple") 3 +fruits.discard("apple") 4 +fruit_pop = fruits.pop() 5 +fruits.clear() 6 +print(fruit_pop, fruits) -
Показать разницуСкрыть разницу
1 +a: set[int] = {1, 2, 3, 4} 2 +b: set[int] = {3, 4, 5, 6} 3 +# объединение 4 +set_union = a.union(b) 5 +# пересечение 6 +set_intersection = a.intersection(b) 7 +# разность 8 +set_difference = a.difference(b) 9 +# симметрическая разность 10 +set_symmetric_difference = a.symmetric_difference(b) 11 + 12 +report: str = f"Множество a: {a}\nМножество b: {b}\nОбъединение: {set_union}\nПересечение: {set_intersection}\nРазность: {set_difference}\nСимметрическая разность: {set_symmetric_difference}" 13 +print(report) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +day1_visitors: set[str] = {"user1", "user2", "user3", "user4"} 2 +day2_visitors: set[str] = {"user3", "user4", "user5", "user6"} 3 + 4 +unique_visitors: set[str] = day1_visitors.union(day2_visitors) 5 +print(f"Уникальные посетили за два дня: {unique_visitors}") 6 +visitors_first_day_and_second_day: set[str] = day1_visitors.intersection(day2_visitors) 7 +print(f"Посетители в первый и второй день: {visitors_first_day_and_second_day}") 8 +visitors_only_second_day: set[str] = day2_visitors.difference(day1_visitors) 9 +print(f"Посетили, которые були только во второй дент: {visitors_only_second_day}") -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +my_dict = {"username": "Nikita", "age": 28} 2 +new_dict = my_dict 3 +print(my_dict, new_dict, sep="\n") 4 + 5 +my_dict["age"] = 35 6 +new_dict["username"] = "Stas" 7 +print(my_dict, new_dict, sep="\n") 8 + 9 +print("=" * 15) 10 + 11 +test_my_dict = {"username": "Nikita", "age": 28} 12 +test_new_dict = test_my_dict.copy() 13 +print(test_my_dict, test_new_dict, sep="\n") 14 +test_my_dict["age"] = 14 15 +test_new_dict["username"] = "Stas" 16 +print(test_my_dict, test_new_dict, sep="\n") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +list_one: list[str] = ["one", "two", "three", "four", "five"] 2 +list_two: list[int] = [1, 2, 3, 4, 5] 3 + 4 +the_dict: dict[str, int] = dict(zip(list_one, list_two)) 5 +# {'one': 1, 'two': 2, 'three': 3, 'four': 4, 'five': 5} 6 +new_dict: dict[int, str] = dict(zip(list_two, list_one)) 7 +# {1: 'one', 2: 'two', 3: 'three', 4: 'four', 5: 'five'} 8 +print(the_dict) 9 +print(new_dict) 10 +print(new_dict[4]) 11 +print(the_dict["three"]) 12 + -
Показать разницуСкрыть разницу
1 +{ 2 + "type": "excalidraw", 3 + "version": 2, 4 + "source": "https://excalidraw.com", 5 + "elements": [ 6 + { 7 + "id": "K1CxLZJokFZ8Lf8AuoPeF", 8 + "type": "text", 9 + "x": 537, 10 + "y": 145.5, 11 + "width": 214.8000030517578, 12 + "height": 45, 13 + "angle": 0, 14 + "strokeColor": "#1e1e1e", 15 + "backgroundColor": "transparent", 16 + "fillStyle": "solid", 17 + "strokeWidth": 2, 18 + "strokeStyle": "solid", 19 + "roughness": 1, 20 + "opacity": 100, 21 + "groupIds": [], 22 + "frameId": null, 23 + "index": "b1O", 24 + "roundness": null, 25 + "seed": 1282555379, 26 + "version": 47, 27 + "versionNonce": 1813149574, 28 + "isDeleted": true, 29 + "boundElements": [], 30 + "updated": 1775633951678, 31 + "link": null, 32 + "locked": false, 33 + "text": "Коллекции:", 34 + "fontSize": 36, 35 + "fontFamily": 8, 36 + "textAlign": "left", 37 + "verticalAlign": "top", 38 + "containerId": null, 39 + "originalText": "Коллекции:", 40 + "autoResize": true, Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +Тема: словари (dict) в Python 2 +Контекст: бизнес-задачи (клиенты, продажи, склад, финансы) 3 +Формат: 3 уровня — базовый, средний, продвинутый 4 + 5 +⸻ 6 + 7 +Уровень 1 — Базовый (работа с ключами и значениями) 8 + 9 +Задача 1 — База клиентов 10 + 11 +Описание: 12 +Есть словарь с клиентами и их балансом. Нужно вывести информацию по каждому клиенту. 13 + 14 +clients = { 15 + "Иван": 12000, 16 + "Мария": 8500, 17 + "Олег": 23000 18 +} 19 + 20 +Требуется: 21 + 1. Вывести всех клиентов и их баланс 22 + 2. Найти баланс клиента "Мария" 23 + 3. Добавить нового клиента "Анна" с балансом 15000 24 + 4. Удалить клиента "Олег" 25 + 26 +⸻ 27 + 28 +Задача 2 — Каталог товаров 29 + 30 +Описание: 31 +Есть словарь с товарами и их ценами. 32 + 33 +products = { 34 + "Ноутбук": 75000, 35 + "Мышь": 1200, 36 + "Клавиатура": 3500 37 +} 38 + 39 +Требуется: 40 + 1. Вывести список всех товаров Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +clients = { 2 + "Иван": 12000, 3 + "Мария": 8500, 4 + "Олег": 23000 5 +} 6 + 7 +iteratio: int = 0 8 +keys: list[str] = list(clients.keys()) 9 +while iteratio != len(clients): 10 + print(f"КЛИЕНТ: {keys[iteratio]} | БАЛАНС: {clients[keys[iteratio]]}") 11 + iteratio = iteratio + 1 12 + 13 +print(f"Баланс клиента Мария: {clients['Мария']}") 14 + 15 +clients["Анна"] = 15000 16 +clients.pop("Олег", None) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +products: dict[str, int | float] = { 2 + "Ноутбук": 75000, 3 + "Мышь": 1200, 4 + "Клавиатура": 3500 5 +} 6 + 7 +print(f"Список товаров: {list(products.keys())}") 8 + 9 +keys = list(products.keys()) 10 +values = list(products.values()) 11 +max_price = max(values) 12 +max_index_value = values.index(max_price) 13 +print(f"Товар с максимальной стоимостью: {keys[max_index_value]}, {values[max_index_value]} руб") 14 + 15 +products["Мышь"] = products["Мышь"] * 1.10 16 +print(products) 17 + 18 +if products.get("Монитор"): 19 + print("Монитор есть на складе") 20 +else: 21 + print("Данного товара нет на складе") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +sales = { 2 + "Ноутбук": 5, 3 + "Мышь": 18, 4 + "Клавиатура": 9 5 +} 6 + 7 +values = list(sales.values()) 8 +sum_values = sum(values) 9 +print(f"Кол-во продаж: {sum_values}") 10 + 11 +max_value = max(values) 12 +index_max_value = values.index(max_value) 13 +print(f"Товар - {list(sales.keys())[index_max_value]} с максимальным число продаж") 14 + 15 +sales.update({"Монитор": 7}) 16 +print(sales) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +employees = { 2 + "Иван": { 3 + "position": "Менеджер", 4 + "salary": 70000 5 + }, 6 + "Мария": { 7 + "position": "Аналитик", 8 + "salary": 85000 9 + } 10 +} 11 + 12 +print(f"Должность Марии: {employees["Мария"]["position"]}") 13 + 14 +employees["Иван"]["salary"] = employees["Иван"]["salary"] * 1.15 15 +print(employees) 16 + 17 +employees.update({"Михаил": {"position": "Слоняра", "salary": 66666}}) 18 +print(employees) 19 + 20 +iteratio: int = 0 21 +result: list = [] 22 +keys = list(employees.keys()) 23 +while iteratio != len(employees): 24 + if employees[keys[iteratio]]["salary"] > 80000: 25 + result.append({keys[iteratio]:employees[keys[iteratio]]}) 26 + iteratio = iteratio + 1 27 +print(result) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +warehouse = { 2 + "Ноутбук": { 3 + "price": 75000, 4 + "quantity": 4 5 + }, 6 + "Мышь": { 7 + "price": 1200, 8 + "quantity": 25 9 + } 10 +} 11 + 12 +iteratio: int = 0 13 +keys = list(warehouse.keys()) 14 +sum_warehouse = 0 15 +while iteratio != len(warehouse): 16 + sum_warehouse = sum_warehouse + (warehouse[keys[iteratio]]["price"] * warehouse[keys[iteratio]]["quantity"]) 17 + iteratio += 1 18 + 19 +print(f"Cумма склада: {sum_warehouse}") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +Уровень 1 — Базовый (основа словарей) 2 + 3 +Задача 1 — Балансы счетов компании 4 + 5 +Описание: 6 +В компании ведется учет денежных остатков по банковским счетам. 7 + 8 +accounts = { 9 + "Основной": 250000, 10 + "Резервный": 120000, 11 + "Зарплатный": 98000 12 +} 13 + 14 +Требуется: 15 + 1. Вывести все счета и их остатки 16 + 2. Найти остаток по счету "Резервный" 17 + 3. Добавить новый счет "Инвестиционный" с балансом 50000 18 + 4. Удалить счет "Зарплатный" 19 + 5. Проверить, есть ли счет "Кредитный" 20 + 21 +⸻ 22 + 23 +Задача 2 — Рейтинг менеджеров 24 + 25 +Описание: 26 +В компании оценивают менеджеров по количеству закрытых сделок. 27 + 28 +managers = { 29 + "Сергей": 12, 30 + "Алексей": 7, 31 + "Наталья": 15 32 +} 33 + 34 +Требуется: 35 + 1. Вывести всех менеджеров 36 + 2. Найти менеджера с максимальным количеством сделок 37 + 3. Увеличить показатель "Алексей" на 3 38 + 4. Добавить нового менеджера "Ольга": 9 39 + 5. Посчитать общее количество сделок 40 + Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +accounts = { 2 + "Основной": 250000, 3 + "Резервный": 120000, 4 + "Зарплатный": 98000 5 +} 6 +accounts_copy = accounts.copy() 7 +print(accounts) 8 +print(accounts["Резервный"]) 9 +accounts["Инвестиционный"] = 50000 10 +del accounts["Зарплатный"] 11 + 12 +if accounts.get("Кредитный"): 13 + print("Такого типа счет нет") 14 +else: 15 + print("Такой счет есть") 16 + 17 +# /// Через цикл 18 + 19 +iteratio: int = 0 20 +keys: list[str] = list(accounts_copy.keys()) 21 +while iteratio != len(accounts_copy): 22 + print(f"СЧЕТ: {keys[iteratio]} имеет ОСТАТОК - {accounts_copy[keys[iteratio]]}") 23 + iteratio = iteratio + 1 -
Показать разницуСкрыть разницу
1 +managers = { 2 + "Сергей": 12, 3 + "Алексей": 7, 4 + "Наталья": 15 5 +} 6 + 7 +print(f"Список менеджеров: {list(managers.keys())}") 8 + 9 +keys: list[str] = list(managers.keys()) # ["Сергей", "Алексей", "Наталья"] 10 +values: list[int] = list(managers.values()) # [12, 7, 15] 11 +max_value: int = max(values) # 15 12 +max_index_value: int = values.index(max_value) # 2 13 +print(f"Менеджер с максимальным кол-во продаж: {keys[max_index_value]}") 14 + 15 +managers["Алексей"] = managers["Алексей"] + 3 16 +managers["Ольга"] = 9 17 + 18 +values = list(managers.values()) 19 +print(f"Сумма продаж за месяц: {sum(values)}") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +expenses = { 2 + "Аренда": 80000, 3 + "Реклама": 35000, 4 + "Зарплаты": 240000 5 +} 6 + 7 +values: list[int] = list(expenses.values()) 8 +print(f"Сумма расходов: {sum(values)}") 9 + 10 +keys: list[str] = list(expenses.keys()) 11 +max_value: int = max(values) 12 +max_index_value: int = values.index(max_value) 13 +print(f"Категория с самым большим расходом: {keys[max_index_value]}") 14 + 15 +expenses["Реклама"] = expenses["Реклама"] - 5000 16 +expenses["Логистика"] = 27000 \ No newline at end of file -
Показать разницуСкрыть разницу
1 +projects = { 2 + "Сайт компании": { 3 + "budget": 150000, 4 + "status": "В работе" 5 + }, 6 + "Мобильное приложение": { 7 + "budget": 300000, 8 + "status": "Планирование" 9 + } 10 +} 11 + 12 +print(f"СТАТУС преокта 'Сайт компании': {projects["Сайт компании"]["status"]}") 13 +# project["Сайт компании"] -> {"budget": 150000, "status": "В работе"} 14 +# project["Сайт компании"]["status"] -> "В работе" 15 +projects["Мобильное приложение"]["budget"] += 50000 16 + 17 +projects.update({"Телеграм Бот": {"budget": 30000, "status": "Планирование"}}) 18 +print(projects) 19 + 20 +iteratio: int = 0 21 +keys: list[str] = list(projects.keys()) 22 +while iteratio != len(keys): 23 + # projects[keys[iteratio]]["budget"] -> projects["Сайт компании"]["budget"] 24 + # keys[iteratio]] -> iteratio = 0 -> keys[0] -> "Сайт компании" 25 + if projects[keys[iteratio]]["budget"] > 300000: 26 + print(f"Данный проект больше 300000: {keys[iteratio]}") 27 + iteratio += 1 \ No newline at end of file -
Показать разницуСкрыть разницу
1 +equipment = { 2 + "Принтер": { 3 + "count": 4, 4 + "price": 15000 5 + }, 6 + "Сканер": { 7 + "count": 2, 8 + "price": 22000 9 + } 10 +} 11 + 12 +keys: list[str] = list(equipment.keys()) # ["Принтер", "Сканер"] 13 +index: int = 0 14 +result: int = 0 15 +while index != len(keys): 16 + result = result + (equipment[keys[index]]["count"] * equipment[keys[index]]["price"]) 17 + # result = 0 + (equipment[keys[0]]["count"] * equipment[keys[0]]["price"]) -> 18 + # result = 0 + (equipment["Принтер"]["count"] * equipment["Принтер"]["price"]) -> 19 + # result = 0 + (4 * 15000) 20 + index = index + 1 21 +print(result) 22 + 23 + 24 +if len(keys) > 0: 25 + min_item = equipment[keys[0]]["count"] 26 + now_index: int = 0 27 + now_result: str = "" 28 + while now_index != len(keys): 29 + if equipment[keys[now_index]]["count"] < min_item: 30 + min_item = equipment[keys[now_index]]["count"] 31 + now_result = keys[now_index] 32 + now_index += 1 33 + print(f"Минимальное кол-во: {now_result}") 34 +else: 35 + print("Товаров нету") 36 + 37 +equipment.update({"Телевизор": {"count": 10, "price": 15000}}) 38 +equipment["Принтер"]["count"] += 1 \ No newline at end of file -
Показать разницуСкрыть разницу
1 +from typing import Optional 2 + 3 + 4 +client_orders = { 5 + "Иван": { 6 + "Ноутбук": 1, 7 + "Мышь": 2 8 + }, 9 + "Мария": { 10 + "Клавиатура": 1, 11 + "Монитор": 2 12 + } 13 +} 14 + 15 +keys: list[str] = list(client_orders.keys()) # ["Иван", "Мария"] 16 +index: int = 0 17 +count_item: int = 0 18 +while index != len(keys): 19 + nested: Optional[dict[str, int]] = client_orders.get(keys[index]) 20 + # nested = client_orders.get("Иван") 21 + # nested = {"Ноутбук": 1, "Мышь": 2} 22 + if nested: 23 + count_item = count_item + sum(list(nested.values())) 24 + # count_item = 0 + sum([1, 2]) 25 + # count_item = 3 26 + index += 1 27 + else: 28 + break 29 +print(count_item) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +empty_dict: dict = {} 2 +student: dict[str, str | int] = {"name": "Никита", "age": 28} 3 +dict_func: dict = dict() 4 +ids: tuple = (0, 1, 2, 3, 4, 5, 6, 7) 5 +username: tuple = ("Stas","Dmitry", "Kirill", "Oleg", "Vadim") 6 +users: dict = dict(zip(ids, username)) 7 +print(dict_func) 8 +print(users) -
Показать разницуСкрыть разницу
1 +student: dict[str, str | int] = { 2 + "name": "Ivan", 3 + "age": 20, 4 + "city": "Moscow" 5 +} 6 + 7 +student["group"] = "К643" 8 +student["age"] = 21 9 +student.update({"email": "IvanJob@yandex.ru", "phone": "79995554433"}) 10 + 11 +print(student) 12 +if student.get("group"): 13 + print(student["group"]) 14 +else: 15 + print("Такого ключа нет") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +student: dict[str, str | int] = { 2 + "name": "Ivan", 3 + "age": 21, 4 + "city": "Moscow", 5 + "email": "ivan@example.com", 6 + "phone": "123-456-789" 7 +} 8 +profile: dict[str, str | int] = { 9 + "username": "ivan123", 10 + "status": "active", 11 + "points": 250 12 +} 13 + 14 +phone = student.pop("phone") 15 +print(f"Телефон студент: {phone}") 16 + 17 +if student.get("adress"): 18 + del student["adress"] 19 + 20 +last_item = student.popitem() 21 +profile.clear() 22 + 23 +print(student, profile) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +student: dict[str, str | int] = { 2 + "name": "Ivan", 3 + "age": 20 4 +} 5 + 6 +dict1 = {"a": 1, "b": 2} 7 +dict2 = {"b": 3, "c": 4} 8 + 9 +if student.get("name"): 10 + print("Данный ключ существует") 11 +else: 12 + print("Данный ключ не существует") 13 + 14 +print(f"Все ключи: {student.keys()}\nВсе значения: {student.values()}\nВсе пары ключ-значение: {student}") 15 + -
Показать разницуСкрыть разницу
1 +inventory = { 2 + "яблоки": 50, 3 + "бананы": 30, 4 +} 5 + 6 +inventory["апельсины"] = 40 7 +inventory["яблоки"] = inventory["яблоки"] - 10 8 +print(f"ИНВЕНТАРЬ: {inventory}") 9 + -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +{ 2 + "type": "excalidraw", 3 + "version": 2, 4 + "source": "https://excalidraw.com", 5 + "elements": [ 6 + { 7 + "id": "Hgxrva3MqPaIe2hKY_f6Q", 8 + "type": "text", 9 + "x": 985, 10 + "y": 100.5, 11 + "width": 288.3999938964844, 12 + "height": 45, 13 + "angle": 0, 14 + "strokeColor": "#1e1e1e", 15 + "backgroundColor": "transparent", 16 + "fillStyle": "solid", 17 + "strokeWidth": 2, 18 + "strokeStyle": "solid", 19 + "roughness": 1, 20 + "opacity": 100, 21 + "groupIds": [], 22 + "frameId": null, 23 + "index": "b2F", 24 + "roundness": null, 25 + "seed": 1396430918, 26 + "version": 94, 27 + "versionNonce": 360234571, 28 + "isDeleted": true, 29 + "boundElements": [ 30 + { 31 + "id": "HSSZ74FDg_ewqFjAh7YC4", 32 + "type": "arrow" 33 + } 34 + ], 35 + "updated": 1775711405577, 36 + "link": null, 37 + "locked": false, 38 + "text": "Dict / Cловарь", 39 + "fontSize": 36, 40 + "fontFamily": 8, Разница обрезана: показаны первые 40 строк. -
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +Уровень 1 — Базовый (счетчики, простые циклы) 2 + 3 +Задача 1 — Подсчет клиентов в очереди 4 + 5 +Описание: 6 +В офисе клиенты обслуживаются по одному. Нужно обработать всех клиентов. 7 + 8 +Дано: 9 + 10 +clients = 7 11 + 12 +Требуется: 13 + 1. Использовать while, чтобы обслужить всех клиентов 14 + 2. На каждой итерации выводить: 15 + Клиент обслужен 16 + 3. После завершения вывести: 17 + Все клиенты обслужены 18 + 19 +⸻ 20 + 21 +Задача 2 — Пополнение бюджета 22 + 23 +Описание: 24 +Компания каждый день получает фиксированный доход. Нужно накопить сумму до нужного бюджета. 25 + 26 +Дано: 27 + 28 +target = 100000 29 +daily_income = 15000 30 +current = 0 31 + 32 +Требуется: 33 + 1. Использовать while, чтобы накапливать доход 34 + 2. Каждый день прибавлять daily_income 35 + 3. Посчитать количество дней 36 + 4. Вывести: 37 + 38 + • итоговую сумму 39 + • количество дней 40 + Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +clients: int = 7 2 + 3 +while clients != 0: 4 + clients = clients - 1 5 + print("Клиент обслужен") 6 +print("Все клиенты обслужены") -
Показать разницуСкрыть разницу
1 +target: int = 100000 2 +daily_income: int = 15000 3 +current: int = 0 4 +balance: int = 0 5 + 6 +while balance < target: 7 + balance += daily_income 8 + current += 1 9 + 10 +print(f"Итоговая сумма: {balance}\nКол-во дней: {current}") -
Показать разницуСкрыть разницу
1 +stock: int = 12 2 + 3 +while stock != 0: 4 + print("Товар продан") 5 + stock -= 1 6 +print("Товар закончился") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +balance: int = 0 2 +day_count: int = 0 3 +while True: 4 + income: int = int(input("Введите число: ")) 5 + if income == 0: 6 + break 7 + day_count += 1 8 + balance += income 9 + 10 +print(f"Общая выручка: {balance}\nКол-во дней: {day_count}") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +password: str = "admin123" 2 + 3 +user_password: str = "" 4 +while user_password != password: 5 + user_password = input("Введите пароль: ") 6 + 7 +print("Доступ разрешен") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +plan: int = 50 2 +total_sales: int = 0 3 +day_count: int = 0 4 +while total_sales < plan: 5 + sale: int = int(input("Введите кол-во продаж: ")) 6 + total_sales += sale 7 + day_count += 1 8 + 9 +print(f"Дней потребовалось: {day_count}\nИтоговое кол-во прода: {total_sales}") -
Показать разницуСкрыть разницу
1 +debt: int = 120000 2 +count_payment: int = 0 3 +# payment: int = 4 + 5 +while debt != 0: 6 + payment: int = int(input("Введите сумму платежа: ")) 7 + count_payment += 1 8 + if payment >= debt: 9 + transaction = payment - debt 10 + debt = 0 11 + print(f"Cумму к возврату: {transaction}") 12 + else: 13 + debt = debt - payment 14 + 15 +print(f"Кол-во платежей: {count_payment}\nИтоговоый долг: {debt}") -
Показать разницуСкрыть разницу
1 +target_stock: int = 100 2 +current_stock: int = 30 3 +supplies_count: int = 0 4 + 5 +while current_stock != target_stock: 6 + current_supplies = int(input("Введите кол-во поставки: ")) 7 + supplies_count += 1 8 + if current_supplies + current_stock >= target_stock: 9 + return_goods = current_supplies + current_stock - target_stock 10 + current_stock = 100 11 + print(f"Склад заполнен, возрат обратно товара в кол-ве: {return_goods}") 12 + else: 13 + current_stock += current_supplies 14 + 15 +print(f"Кол-во поставок: {supplies_count}\nИтоговый остаток: {current_stock}") -
Показать разницуСкрыть разницу
1 +Задачи на while + коллекции (списки и словари). 2 +Контекст — бизнес-операции. 3 +3 уровня сложности. 4 + 5 +⸻ 6 + 7 +Уровень 1 — Базовый (while + списки) 8 + 9 +Задача 1 — Обработка списка заказов 10 + 11 +Описание: 12 +Есть список заказов. Нужно обработать каждый заказ по очереди. 13 + 14 +orders = [1200, 3400, 560, 2300, 780] 15 + 16 +Требуется: 17 + 1. Использовать while 18 + 2. Пройти по списку по индексам 19 + 3. Вывести сумму каждого заказа 20 + 4. Посчитать общую сумму заказов 21 + 5. Вывести итоговую сумму 22 + 23 +⸻ 24 + 25 +Задача 2 — Подсчет товаров на складе 26 + 27 +Описание: 28 +Есть список остатков товаров. 29 + 30 +stock = [5, 12, 7, 3, 9] 31 + 32 +Требуется: 33 + 1. Использовать while 34 + 2. Найти общее количество товаров 35 + 3. Найти максимальный остаток 36 + 4. Найти минимальный остаток 37 + 38 +⸻ 39 + 40 +Задача 3 — Поиск дорогих товаров Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +orders: list[int] = [1200, 3400, 560, 2300, 780] 2 +index: int = 0 3 +sum_orders: int = 0 4 +while index != len(orders): 5 + print(f"Сумма заказа под номером: {index + 1} = {orders[index]}") 6 + sum_orders = sum_orders + orders[index] 7 + index += 1 8 +print(f"Итоговая сумма заказа: {sum_orders}") -
Показать разницуСкрыть разницу
1 +stock: list[int] = [5, 12, 7, 3, 9] 2 +if len(stock) == 0: 3 + print("Склад пустой") 4 +else: 5 + general_count_goods: int = 0 6 + max_stock: int = stock[0] 7 + min_stock: int = stock[0] 8 + index: int = 0 9 + 10 + while index != len(stock): 11 + general_count_goods = general_count_goods + stock[index] 12 + 13 + if max_stock < stock[index]: 14 + max_stock = stock[index] 15 + 16 + if min_stock > stock[index]: 17 + min_stock = stock[index] 18 + 19 + index = index + 1 20 + 21 + print(f"Общее кол-во товаров: {general_count_goods}\nМаксимальный остаток: {max_stock}\nМинимальный остаток: {min_stock}") -
Показать разницуСкрыть разницу
1 +prices: list[int] = [1200, 5400, 800, 2300, 7600] 2 +new_prices: list[int] = [] 3 + 4 +index: int = 0 5 +while index != len(prices): 6 + 7 + if prices[index] > 3000: 8 + new_prices.append(prices[index]) 9 + index = index + 1 10 +print(f"Товары дороже 3000: {new_prices}") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +import time 2 +start = time.time() 3 +profits = [500, -200, 700, -150, 300, -500, 300, -400, -400] * 1000 4 +index: int = len(profits) - 1 # 9 - 1 = 8 5 +while index != -1: 6 + if profits[index] < 0: 7 + profits.pop(index) 8 + index -= 1 9 +# print(profits) 10 +print(time.time() - start) 11 + 12 + 13 +start = time.time() 14 +profits_two = [500, -200, 700, -150, 300, -500, 300, -400, -400] * 1000 15 +index_two: int = 0 16 +while index_two != len(profits_two): 17 + if profits_two[index_two] < 0: 18 + profits_two.pop(index_two) 19 + else: 20 + index_two = index_two + 1 21 +# print(profits_two) 22 +print(time.time() - start) -
Показать разницуСкрыть разницу
1 +prices: list[int | float] = [1000, 2500, 3800, 4200] 2 + 3 +index: int = 0 4 +while index != len(prices): 5 + prices[index] = prices[index] * 1.10 # prices[0] = prices[0] * 1.10 => 10000 * 1.10 6 + index += 1 7 + 8 +print(prices) 9 + -
Показать разницуСкрыть разницу
1 +clients1 = ["Иван", "Мария", "Олег"] 2 +clients2 = ["Анна", "Сергей"] 3 + 4 +index: int = 0 5 +while index != len(clients2): 6 + clients1.append(clients2[index]) 7 + index += 1 8 +print(clients1) \ No newline at end of file -
Показать разницуСкрыть разницу
1 +sales = { 2 + "Ноутбук": 5, 3 + "Мышь": 12, 4 + "Клавиатура": 7 5 +} 6 + 7 +prices = { 8 + "Ноутбук": 75000, 9 + "Мышь": 1200, 10 + "Клавиатура": 3500 11 +} 12 + 13 +keys: list[str] = list(sales.keys()) # ["Ноутбук", "Мышь", "Клавиатура"] 14 +index: int = 0 15 +revenue: dict = {} 16 +general_revenue: float = 0 17 + 18 +while index != len(keys): 19 + value = sales[keys[index]] * prices[keys[index]] 20 + # value = sales[keys[0]] * prices[keys[index]] 21 + # value = sales["Ноутбук"] * prices["Ноутбук"] 22 + # value = 5 * 75000 23 + # value = 375000 24 + general_revenue += value 25 + # general_revenue = 0 + 375000 26 + revenue[keys[index]] = value 27 + # revenue[keys[0]] = 375000 28 + # revenue["Ноутбук"] = 375000 29 + # revenue -> {"Ноутбук": 375000} 30 + index += 1 31 + # index = 0 + 1 32 + 33 +print(f"Вырчка по каждому товару: {revenue}\nОбщая выручка: {general_revenue}") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +salaries = { 2 + "Иван": 70000, 3 + "Мария": 95000, 4 + "Олег": 60000, 5 + "Анна": 110000 6 +} 7 +keys: list[str] = list(salaries.keys()) 8 +list_salari: list[str] = [] 9 + 10 +index: int = 0 11 +while index != len(keys): 12 + if salaries[keys[index]] > 80000: # if salaries[keys[0]] > 80000 -> if salaries["Иван"] > 80000 -> if 70000 > 80000 -> False 13 + list_salari.append(keys[index]) 14 + index = index + 1 15 +print(f"Список людей: {list_salari}") -
Показать разницуСкрыть разницу
1 +""" 2 +Напиши код с использованием оператора break, который завершает бесконечный цикл при вводе 'exit'. 3 +""" 4 + 5 +while True: 6 + command: str = input("Введите комманду") 7 + 8 + if command == "next": 9 + pass # набор какие то инструкций 10 + elif command == "exit": 11 + break 12 + else: 13 + pass \ No newline at end of file -
Показать разницуСкрыть разницу
1 +""" 2 +Напиши цикл while, который выводит числа от 10 до 1. 3 +""" 4 + 5 +number: int = 10 6 +while number != 0: 7 + print(number) 8 + number = number - 1 \ No newline at end of file -
Показать разницуСкрыть разницу
1 +""" 2 +Создай цикл while, который запрашивает ввод числа до тех пор, 3 +пока не будет введено положительное число. 4 +""" 5 + 6 +status: bool = True 7 + 8 +while status: 9 + number: int = int(input("Введите число: ")) 10 + if number >= 0: 11 + status = False 12 + -
Показать разницуСкрыть разницу
1 +start: int = 1 2 +end: int = 6 3 +while start != end: 4 + print(start) 5 + start += 1 6 + 7 +print("Программа заверешенна") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +""" 2 +user_input = "" 3 + 4 +while user_input != "quit": 5 + user_input = input("Комманда: ") 6 + if user_input != "quit": 7 + print(f"ПОЛЬЗОВАТЕЛЬ ВВËЛ: {user_input}") 8 + 9 +""" 10 + 11 +user_input = input("Комманда: ") 12 + 13 +while user_input != "quit": 14 + print(f"ПОЛЬЗОВАТЕЛЬ ВВËЛ: {user_input}") 15 + user_input = input("Комманда: ") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +numbers: list[int] = [1, 3, 5, 8, 7, 9] 2 +index: int = 0 3 +while index != len(numbers): 4 + if numbers[index] % 2 == 0: 5 + print(f"Первое четное число: {numbers[index]}") 6 + break 7 + index += 1 8 + 9 +count: int = 1 10 +inter = 0 11 +while count < 500: 12 + inter += 1 13 + if count % 2 != 0: 14 + count += 1 15 + #print(count) 16 + else: 17 + count += 2 18 + #print(count) 19 +print(f"Кол-во интераций: {inter}") 20 + 21 +num = 1 22 +inter_two = 0 23 +while num <= 500: 24 + inter_two += 1 25 + if num % 2 != 0: 26 + num += 1 27 + continue 28 + #print(num) 29 + num += 2 30 +print(f"Кол-во интераций: {inter_two}") \ No newline at end of file -
Показать разницуСкрыть разницу
1 +""" 2 +while True: 3 + a: float = float(input()) 4 + b: float = float(input()) 5 + print(f"Результат: {(a + b):.2f}") 6 + command = input() 7 + if command == "нет": 8 + break 9 +""" 10 + 11 + 12 +while True: 13 + command = input() 14 + if command == "нет": 15 + break 16 + elif command == "да": 17 + a: float = float(input()) 18 + b: float = float(input()) 19 + print(f"Результат: {(a + b):.2f}") -
Показать разницуСкрыть разницу
1 +while True: 2 + try: 3 + age: float = float(input("Введите возраст: ")) 4 + break 5 + except ValueError as e: 6 + print(f"Ошибка ввода: {e}") 7 + 8 +print(age) \ No newline at end of file -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +count: int = 0 2 + 3 +while count != 5: 4 + print("Count = {}".format(count)) 5 + count += 1 6 + 7 + 8 +for i in range(0, 6): 9 + print("I = {}".format(i)) 10 + -
Показать разницуСкрыть разницу
1 +my_numbers: list[int] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 2 + 3 +# While 4 +index: int = 0 5 +while index != len(my_numbers): 6 + print("ЦИКЛ WHILE | Значение: {}".format(my_numbers[index])) 7 + index += 1 8 + 9 +# For 1 10 +for i in range(0, len(my_numbers)): 11 + print("ЦИКЛ FOR | Значение: {}".format(my_numbers[i])) 12 + 13 +# For 2 14 +for number in my_numbers: 15 + print("ЦИКЛ FOR_2 | Значение {}".format(number)) -
Показать разницуСкрыть разницу
1 +import time 2 + 3 +my_numbers: list[int] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 4 + 5 +for i in range(0, len(my_numbers)): 6 + my_numbers.append("VALUE") 7 + print("ЦИКЛ FOR | ЗНАЧЕНИЕ: {}".format(my_numbers[i])) 8 + time.sleep(0.5) 9 + 10 +print(my_numbers) 11 + 12 + 13 +my_numbers_next: list[int] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 14 + 15 +for number in my_numbers_next: 16 + my_numbers_next.append("VALUE") 17 + print("ЦИКЛ FOR_2 | ЗНАЧЕНИЕ: {}".format(number)) 18 + time.sleep(0.5) 19 + 20 +print(my_numbers_next) -
Показать разницуСкрыть разницу
1 +my_numbers: list[int] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 2 + 3 +# VERSION 1 | WHILE 4 +index: int = 0 5 +report_1: str = "VERSION 1 | WHILE: " 6 +while index != len(my_numbers): 7 + report_1 += "{}, ".format(my_numbers[index]) 8 + index += 1 9 + 10 +# VERSION 2 | FOR | RANGE 11 +report_2: str = "VERSION 2 | FOR RANGE: " 12 +for index in range(0, len(my_numbers)): # range(start, stop, step) => range(0, len(my_numbers) => range(0, 10) 13 + report_2 += "{}, ".format(my_numbers[index]) 14 + 15 +# VERSION 3 | FOR | IN 16 +report_3: str = "VERSION 3 | FOR IN: " 17 +for number in my_numbers: 18 + report_3 += "{}, ".format(number) 19 + 20 + 21 +print(report_1, report_2, report_3, sep="\n") -
Показать разницуСкрыть разницу
1 +numbers: list[int] = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 2 + 3 + 4 +# VERSION 1 | FOR 5 +for index in range(len(numbers) - 1, -1, -1): 6 + print("INDEX: {} | NUMBER: {}".format(index, numbers[index])) 7 + 8 +# VERSION 2 | WHILE 9 +index = len(numbers) - 1 10 +while index != -1: 11 + print("INDEX: {} | NUMBER: {}".format(index, numbers[index])) 12 + index -= 1 -
Двоичный файл — показывать нечего.
-
Показать разницуСкрыть разницу
1 +Тема: цикл for 2 +Формат: каждая задача содержит вводные данные и ожидаемый результат обработки. 3 +Уклон: бизнес-логика. 4 + 5 +⸻ 6 + 7 +Уровень 1 — Легкий (3 задачи) 8 + 9 +Задача 1 — Подсчёт выручки за день 10 + 11 +Компания продаёт товары. Нужно посчитать общую выручку за день. 12 + 13 +Вводные данные: 14 + • В первой строке число n — количество продаж за день 15 + • Далее n строк — сумма каждой продажи (в евро) 16 + 17 +Задача: 18 + 19 +Используя цикл for: 20 + • просуммировать все продажи 21 + • вывести общую выручку 22 + 23 +Пример ввода: 24 + 25 +5 26 +120 27 +85 28 +40 29 +230 30 +75 31 + 32 +Ожидаемый вывод: 33 + 34 +550 35 + 36 + 37 +⸻ 38 + 39 +Задача 2 — Подсчёт количества заказов дороже 100€ 40 + Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +sales: list[int] = [120, 85, 40, 230, 75] 2 +total: int = 0 3 + 4 +for sale in sales: 5 + total += sale 6 + 7 +print("ВЫВОД:\nКОЛ-ВО ПРОДАЖ ЗА ДЕНЬ = {}\nНА СУММУ: {}".format(len(sales), total)) -
Показать разницуСкрыть разницу
1 +database: list[int] = [] 2 +step: int = int(input("Кол-во заказов: ")) 3 +count: int = 0 4 +for _ in range(step): 5 + print(_) 6 + sale: int = int(input("Стоимость заказа: ")) 7 + if sale > 100: 8 + count += 1 9 + 10 +print("КОЛ-ВО ЗАКАЗОВ ДОРОЖЕ 100 ЕВРО = {}\nКОЛ-ВО ЗАКАЗОВ: {}".format(count, step)) 11 + -
Показать разницуСкрыть разницу
1 +step: int = int(input("Кол-во заказов: ")) 2 +total = 0 3 + 4 +for _ in range(step): 5 + total += int(input("Стоимость заказа: ")) 6 + 7 +total_average = total / step 8 +print("СРЕДНЯЯ СТОИМОСТЬ ЗАКАЗА: {}".format(total_average)) -
Показать разницуСкрыть разницу
1 +step: int = int(input("Кол-во заказов: ")) 2 +max_price: int = 0 3 + 4 +for _ in range(step): 5 + order: int = int(input("Стоимость заказа: ")) 6 + if order > max_price or step == 0: 7 + max_price = order 8 + 9 +print("Максимальная стоимость заказа: {}".format(max_price)) 10 + -
Показать разницуСкрыть разницу
1 +personals: dict[int, int] = {} 2 +step: int = int(input("Кол-во сотрудников: ")) 3 + 4 +for i in range(step): 5 + sum_sale: int = int(input("Сумма продаж сотрудника под номером {} ".format(i) )) 6 + if sum_sale > 1000: 7 + personals[i] = sum_sale * 0.1 8 + else: 9 + personals[i] = sum_sale * 0.05 10 + 11 +for key in personals.keys(): 12 + print(personals[key]) 13 + 14 + -
Показать разницуСкрыть разницу
1 +days: int = int(input("Кол-во дней: ")) 2 +count: int = 0 3 + 4 +for _ in range(days): 5 + profit: int = int(input("Ваша прибыль за день: ")) 6 + if profit < 0: 7 + count += 1 8 +print("КОЛ-ВО УБЫТОЧНЫХ ДНЕЙ: {}".format(count)) -
Показать разницуСкрыть разницу
1 +step: int = int(input("Кол-во заказов: ")) 2 + 3 +category: int = [0, 0, 0] # small, medium, large 4 + 5 +for _ in range(step): 6 + price_order = int(input("Стоимость заказа: ")) 7 + if price_order < 50: 8 + category[0] += 1 9 + elif 50 <= price_order <= 200: 10 + category[1] += 1 11 + else: 12 + category[2] += 1 13 + 14 +print("SMALL | MEDIUM | LARGE |\n| {} | {} | {} |".format(category[0], category[1], category[2])) -
Показать разницуСкрыть разницу
1 +Тема: цикл for 2 +Контекст: бизнес-задачи, работа с массивами, счетчиками, суммами 3 + 4 +⸻ 5 + 6 +Уровень 1 — Легкий (3 задачи) 7 + 8 +Задача 1 — Подсчет общей выручки за день 9 + 10 +Контекст: 11 +Есть список продаж интернет-магазина за день. Каждое число — сумма одной покупки в евро. 12 + 13 +Входные данные: 14 + 15 +sales = [120, 85, 230, 45, 99] 16 + 17 +Задача: 18 +С помощью цикла for: 19 + 1. Посчитать общую выручку за день 20 + 2. Вывести итоговую сумму 21 + 22 +Ожидаемый результат: 23 + 24 +Total revenue: 579 25 + 26 + 27 +⸻ 28 + 29 +Задача 2 — Подсчет количества заказов выше 100€ 30 + 31 +Контекст: 32 +Компания анализирует крупные заказы. 33 + 34 +Входные данные: 35 + 36 +orders = [40, 150, 220, 90, 310, 70] 37 + 38 +Задача: 39 + 40 +С помощью цикла for: Разница обрезана: показаны первые 40 строк. -
Показать разницуСкрыть разницу
1 +sales: list[int] = [120, 85, 230, 45, 99] 2 +total: int = 0 3 + 4 + 5 +# VERSION 1 6 +for sale in sales: 7 + total += sale # 120 -> 85 -> 230 -> 45 -> 99 8 + 9 +print("VERSION 1\nTotal revenue: {}".format(total)) 10 + 11 +# VERSION 2 12 +total = 0 13 +for index in range(len(sales)): 14 + total += sales[index] # sales[0] -> sales[1] 15 +print("VERSION 2\nTotal revenue: {}".format(total)) -
Показать разницуСкрыть разницу
1 +weeks = [ 2 + [120, 340, 560, 230, 150], # Неделя 1 3 + [90, 80, 300, 400, 500], # Неделя 2 4 + [600, 700, 200, 100, 50], # Неделя 3 5 + [500, 200, 100, 100, 50] 6 +] 7 + 8 +# VERSION 1 9 +week_sums: list[int] = [0, 0, 0, 0] 10 +best_week: int = 0 11 +max_revenue: int = 0 12 + 13 + 14 +for week_index in range(len(weeks)): 15 + for day_index in range(len(weeks[week_index])): 16 + week_sums[week_index] += weeks[week_index][day_index] 17 + if max_revenue < week_sums[week_index]: 18 + max_revenue = week_sums[week_index] 19 + best_week = week_index + 1 20 +print("VERSION 1\nWeek sums: {}\nBest week: {}\nMax revenue: {}".format(week_sums, best_week, max_revenue)) 21 + 22 +# VERSION 2 23 +week_sums = [0, 0, 0, 0] 24 +best_week = 0 25 +max_revenue = 0 26 +count: int = 0 27 +for week in weeks: 28 + for day in week: 29 + week_sums[count] += day 30 + if max_revenue < week_sums[count]: 31 + max_revenue = week_sums[count] 32 + best_week = count + 1 33 + count += 1 34 + 35 + 36 +print("VERSION 2\nWeek sums: {}\nBest week: {}\nMax revenue: {}".format(week_sums, best_week, max_revenue)) -
Показать разницуСкрыть разницу
1 +orders: list[int] = [40, 150, 220, 90, 310, 70] 2 +count: int = 0 3 + 4 +# VERSION 1 5 +for index in range(0, len(orders), 1): # range(0, 6, 1) # start=0, stop=6, step=1 6 + if orders[index] > 100: # if orders[0] > 100 -> if 40 > 100: 7 + count += 1 8 + 9 +print("VERSION 1\nOrders > 100: {}".format(count)) 10 + 11 + 12 +# VERSION 2 13 +count = 0 # переприсваиваю значение count 14 +for order in orders: 15 + if order > 100: # if 40 > 100 16 + count += 1 17 + 18 +print("VERSION 2\nOrders > 100: {}".format(count)) -
Показать разницуСкрыть разницу
1 +orders_count: int = 5 2 + 3 +for number_order in range(1, orders_count + 1): # 1, 2, 3, 4 4 + print("Order #{}".format(number_order)) 5 + -
Показать разницуСкрыть разницу
1 +sales: list[int] = [120, 540, 320, 150, 80] 2 + 3 + 4 +# VERSION 1 | RANGE 5 +max_sale: int = 0 6 +for index in range(0, len(sales), 1): # range(0, 5, 1) range(start, stop, step) 7 + if max_sale < sales[index] or index == 0: 8 + max_sale = sales[index] 9 + 10 +print("VERSION 1 | Max sale: {}".format(max_sale)) 11 + 12 +# VERSION 2 | NOT RANGE 13 +max_sale = sales[0] 14 +for sale in sales: 15 + if max_sale < sale: 16 + max_sale = sale 17 +print("VERSION 2 | Max sale: {}".format(max_sale)) -
Показать разницуСкрыть разницу
1 +sales: list[int] = [100, 200, 150, 50, 300] 2 + 3 +# VERSION 1 4 +sum_sales: int = 0 5 +for sale in sales: 6 + sum_sales = sum_sales + sale 7 + 8 +print("Average sale: {}".format(sum_sales / len(sales))) 9 + 10 + 11 +# VERSION 2 12 +sum_sales = 0 13 +for index in range(0, len(sales), 1): 14 + sum_sales = sum_sales + sales[index] 15 + 16 +print("Average sale: {}".format(sum_sales / len(sales))) -
Показать разницуСкрыть разницу
1 +profits: list[int] = [200, -50, 300, -20, -100, 400] 2 +count: int = 0 3 + 4 +for profit in profits: 5 + if profit < 0: 6 + count += 1 7 + 8 +print("Loss days: {}".format(count)) -
Показать разницуСкрыть разницу
1 +orders: list[int] = [50, 120, 340, 80, 260, 410, 95] 2 +category: list[int] = [0, 0, 0] 3 +# category[0] -> Small; category[1] -> Medium; category[2] -> Large 4 + 5 +for order in orders: 6 + if order < 100: 7 + category[0] += 1 8 + elif 100 <= order <= 300: 9 + category[1] += 1 10 + else: 11 + category[2] += 1 12 + 13 +print("Small: {}\nMedium: {}\nLarge: {}".format(category[0], category[1], category[2])) 14 + -
Показать разницуСкрыть разницу
1 +employee_sales: list[int] = [450, 600, 300, 800] 2 +bonuses: list[float | int] = [] 3 +for sale in employee_sales: 4 + if sale > 500: 5 + bonuses.append(sale * 0.1) 6 + else: 7 + bonuses.append(sale * 0.05) 8 +print("Bonuses: {}".format(bonuses)) -
Показать разницуСкрыть разницу
1 +orders: list[int] = [120, 340, 80, 500, 270, 60, 310] 2 +top_orders: list[int] = [] 3 + 4 +for order in orders: 5 + if order > 250: 6 + top_orders.append(order) 7 + 8 + if len(top_orders) >= 3: 9 + break 10 + 11 +print("Top orders: {}".format(top_orders)) -
Показать разницуСкрыть разницу
1 +text: str = "Hello World" 2 + 3 +text[0] = text[0].lower() 4 +print(text) -
Показать разницуСкрыть разницу
1 +for n in range(1, 11): 2 + print(n) -
Показать разницуСкрыть разницу
1 +fruits: list[str] = ["яблоко", "банан", "вишня"] 2 + 3 +for index, value in enumerate(fruits): 4 + print("Индекс: {}, Фрукт: {}".format(index, value)) 5 + -
Показать разницуСкрыть разницу
1 +text: str = "Карл у Клары украл кораллы" 2 +print(text.upper()) -
Показать разницуСкрыть разницу
1 +my_numbers: list[int] = [5, 10, 15, 20] 2 + 3 + 4 +# version 1 5 +total: int = 0 6 + 7 +for i in range(len(my_numbers)): 8 + total += my_numbers[i] Разница обрезана: показаны первые 8 строк. -
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
-
Двоичный файл — показывать нечего.
Разница обрезана: показаны первые 3000 строк.