diff --git a/content/posts/exam/minimum-knowledge-of-python.mdx b/content/posts/exam/minimum-knowledge-of-python.mdx
index b3c636e..ec2691f 100644
--- a/content/posts/exam/minimum-knowledge-of-python.mdx
+++ b/content/posts/exam/minimum-knowledge-of-python.mdx
@@ -19,16 +19,6 @@ tags:
## Python
-### list:
-Тип данных, представляющий список элементов.
-
-```python
-
-my_list = [1, 2, 3]
-print(my_list) # Вывод: [1, 2, 3]
-
-```
-
### for:
Оператор цикла, используется для итерации по элементам контейнера или последовательности.
@@ -53,28 +43,6 @@ for i in range(1, 6):
```
-### or:
-Логический оператор, возвращает True, если хотя бы одно из условий истинно.
-
-```python
-
-x = True
-y = False
-result = x or y
-print(result) # Вывод: True
-
-```
-
-### not:
-Логический оператор, инвертирует значение логического выражения.
-
-```python
-
-x = True
-result = not x
-print(result) # Вывод: False
-
-```
### if:
Условный оператор, используется для выполнения кода, если определенное условие истинно.
@@ -91,6 +59,16 @@ else:
```
+### list:
+Тип данных, представляющий список элементов.
+
+```python
+
+my_list = [1, 2, 3]
+print(my_list) # Вывод: [1, 2, 3]
+
+```
+
### .append():
Метод списка, добавляющий элемент в конец списка.
@@ -102,6 +80,32 @@ print(my_list) # Вывод: [1, 2, 3, 4]
```
+### or:
+Логический оператор, возвращает True, если хотя бы одно из условий истинно.
+
+```python
+
+x = True
+y = False
+result = x or y
+print(result) # Вывод: True
+
+```
+
+### not:
+Логический оператор, инвертирует значение логического выражения.
+
+```python
+
+x = True
+result = not x
+print(result) # Вывод: False
+
+```
+
+
+
+
### bin():
Функция, преобразующая целое число в двоичную строку.
diff --git a/content/posts/informatics/python-data-types-solution.mdx b/content/posts/informatics/python-data-types-solution.mdx
deleted file mode 100644
index 190c004..0000000
--- a/content/posts/informatics/python-data-types-solution.mdx
+++ /dev/null
@@ -1,171 +0,0 @@
----
-title: Python. Типы данных. int (целые числа)
-excerpt: Python. Решение математической задачи на языке Python.
-date: '2023-09-14'
-tags:
- - Информатика
- - Программирование
- - Python
----
-
-
-
-- [Урок 1](#урок-1)
-- [Урок 1.1](#урок-11)
-- [Урок 1.2](#урок-12)
-
-
-
-## Урок 1
-
-## Задание:
-
-#### Вам необходимо написать программу на языке Python для решения следующей задачи:
-
-Робот-марафонец начинает движение из точки A и двигается по пятиугольному маршруту, состоящему из 5 сторон по 200 метров каждая. Если диаметр колеса робота составляет 40 см, сколько оборотов каждого колеса робота он сделает, чтобы вернуться в точку A?
-
-## Решение:
- 1. Найдем длину пятиугольного маршрута, который состоит из 5 сторон по 200 метров каждая. Общая длина маршрута равна 5 * 200 метров = 1000 метров.
- 2. Теперь, чтобы найти, сколько оборотов делает колесо робота, чтобы пройти 1000 метров, мы можем использовать формулу:
-
- * Обороты = Длина маршрута / Длина окружности колеса
-
- * Длина окружности колеса можно найти с помощью формулы: Длина окружности = π * Диаметр колеса.
-
- 3. Подставим значения и найдем количество оборотов:
-
-```python
- import math
- # Длина маршрута в метрах
- длина_маршрута = 1000
-
- # Диаметр колеса в метрах (переведенный из сантиметров)
- диаметр_колеса = 40 / 100
-
- # Найдем длину окружности колеса
- длина_окружности_колеса = math.pi * диаметр_колеса
-
- # Найдем количество оборотов колеса
- количество_оборотов = длина_маршрута / длина_окружности_колеса
-
- # Выведем результат
- print(f"Чтобы вернуться в точку A, робот сделает {количество_оборотов} оборотов колеса.")
-```
-
-### Cписок функций необходимых для решения данных задач
-1. Функция max() для поиска максимального значения.
-2. Оператор % для вычисления остатка от деления.
-3. Оператор % для проверки четности/нечетности числа.
-4. Оператор * для умножения двух чисел.
-5. Оператор == для проверки равенства числа нулю.
-6. Функция len() для получения длины строки или списка.
-7. Оператор // для целочисленного деления.
-8. Оператор != для проверки неравенства двух значений.
-9. Функция round() для округления числа до определенного количества знаков после запятой.
-10. Оператор ** для возведения числа в степень.
-
-
-## Урок 1.1
-
-## Задания для самостоятельной работы
-
-1. Найти максимальное из двух целых чисел.
-2. Вычислить остаток от деления на 10 заданного трехзначного числа.
-3. Проверить, является ли заданное число нечетным.
-4. Вычислить произведение двух целых чисел.
-5. Проверить, является ли заданное число равным нулю.
-
-### Пример решения
-
-1. Найти минимальное из двух целых чисел.
-
-```python
-
-def min_integer(a, b):
- return min(a, b)
-
-print(min_integer(7, 12)) # Output: 7
-
-```
-
-2. Вычислить остаток от деления на 10 заданного трехзначного числа.
-
-```python
-
-def remainder_10(n):
- return n % 10
-
-print(remainder_10(456)) # Output: 6
-
-```
-
-3. Проверить, является ли заданное число нечетным.
-
-
-```python
-
-def is_odd(n):
- return n % 2 != 0
-
-print(is_odd(9)) # Output: True
-
-```
-
-4. Вычислить произведение двух целых чисел.
-
-```python
-
-def multiply(a, b):
- return a * b
-
-print(multiply(5, 8)) # Output: 40
-
-```
-
-5. Проверить, является ли заданное число равным нулю.
-
-```python
-
-def is_zero(n):
- return n == 0
-
-print(is_zero(0)) # Output: True
-
-```
-
-
-## Урок 1.2
-
-## Задания для самостоятельной работы
-
-1. Вычисление площади квадрата по длине стороны.
-2. Вычисление периметра прямоугольника по длинам двух сторон.
-3. Вычисление объема параллелепипеда по длинам трех его сторон.
-4. Вычисление среднего арифметического двух чисел.
-5. Вычисление площади круга по радиусу.
-
-### Пример решения
-
-1. Найти минимальное из двух целых чисел.
-
-```python
-
-def parallelepiped_volume(a, b, с):
- return a * b * c
-
-print(min_integer(2, 3, 4)) # Output: 24
-
-```
-
-2. Вычисление периметра прямоугольника по длинам двух сторон.
-
-```python
-
-def parallelepiped_volume(a, b, с):
- return a * b * c
-
-print(min_integer(2, 3, 4)) # Output: 24
-
-```
-
-[На главную](/)
\ No newline at end of file
diff --git a/content/posts/informatics/python-list-solution.mdx b/content/posts/informatics/python-list-solution.mdx
new file mode 100644
index 0000000..2af0194
--- /dev/null
+++ b/content/posts/informatics/python-list-solution.mdx
@@ -0,0 +1,136 @@
+---
+title: Python. Список. list
+excerpt: Python. Cписок в Python
+date: '2023-09-20'
+tags:
+ - Информатика
+ - Программирование
+ - Python
+---
+
+
+
+- [Урок 1](#урок-1)
+
+
+
+## Урок 1
+
+### Теория
+
+Список в Python - это упорядоченный набор элементов, каждый из которых имеет свой номер, или индекс, позволяющий быстро получить к нему доступ. Нумерация элементов в списке начинается с 0.
+
+Списки в Python используются для хранения и работы с данными. Они могут содержать элементы любого типа, включая числа, строки, словари, другие списки и т.д.
+
+Создать список в Python можно несколькими способами:
+
+### С помощью квадратных скобок:
+
+```python
+
+my_list = [1, 2, 3]
+
+```
+
+### С помощью функции list:
+
+```python
+
+my_list = list([1, 2, 3])
+
+```
+
+### С помощью оператора range:
+
+```python
+
+my_list = list(range(10))
+
+```
+
+Доступ к элементам списка можно получить с помощью индекса:
+```python
+
+my_list = [1, 2, 3]
+
+print(my_list[0]) # 1
+print(my_list[1]) # 2
+print(my_list[2]) # 3
+
+```
+Элементы списка можно добавлять, удалять, изменять и сортировать. Для этого используются методы и функции списков.
+
+Вот некоторые из наиболее распространенных методов списков в Python:
+
+ * append() - добавляет элемент в конец списка
+ * insert() - вставляет элемент в список в указанной позиции
+ * extend() - добавляет элементы из одного списка в другой
+ * pop() - удаляет элемент из списка в указанной позиции
+ * remove() - удаляет первый элемент из списка, равный указанному
+ * sort() - сортирует список в порядке возрастания
+
+Вот пример использования методов списков в Python:
+
+```python
+
+my_list = [1, 2, 3]
+
+my_list.append(4) # [1, 2, 3, 4]
+my_list.insert(1, 5) # [1, 5, 2, 3, 4]
+my_list.extend([6, 7]) # [1, 5, 2, 3, 4, 6, 7]
+
+my_list.pop() # 4
+my_list.remove(2) # [1, 5, 3, 4]
+my_list.sort() # [1, 3, 4, 5]
+
+```
+Списки в Python - это мощный инструмент, который может использоваться для решения широкого круга задач.
+
+## Практика:
+
+## Задания для самостоятельной работы
+
+1. Создать список чисел от 1 до 100 и найти среднее значение.
+2. Создать список чисел и найти все четные числа.
+3. Создать список чисел и отсортировать его в порядке возрастания.
+4. Создать список чисел и найти все числа, которые делятся на 3.
+5. Создать список чисел и найти произведение всех элементов списка.
+
+### Пример решения
+
+0. Создать список чисел и найти количество элементов списка, равных 0.
+
+```python
+
+ # Создаем список чисел
+ numbers = [0, 2, 0, 4, 0, 6, 8, 0]
+
+ # Используем метод count() для подсчета количества нулей в списке
+ count_of_zeros = numbers.count(0)
+
+ # Выводим результат
+ print(count_of_zeros)
+
+```
+без функции count
+
+```python
+# Создаем список чисел
+numbers = [0, 2, 0, 4, 0, 6, 8, 0]
+
+# Инициализируем переменную для подсчета нулей
+count_of_zeros = 0
+
+# Используем цикл для прохода по каждому элементу списка
+for number in numbers:
+ # Проверяем, является ли текущий элемент равным 0
+ if number == 0:
+ # Если да, увеличиваем счетчик на 1
+ count_of_zeros += 1
+
+# Выводим результат
+print("Количество элементов списка, равных 0:", count_of_zeros)
+
+```
+
+[На главную](/)
\ No newline at end of file
diff --git a/content/posts/informatics/python-types-solution.mdx b/content/posts/informatics/python-types-solution.mdx
new file mode 100644
index 0000000..d7f5e04
--- /dev/null
+++ b/content/posts/informatics/python-types-solution.mdx
@@ -0,0 +1,324 @@
+---
+title: Python. Типы данных.
+excerpt: Python. int (целые числа), Вещественные числа (float)
+date: '2023-09-14'
+tags:
+ - Информатика
+ - Программирование
+ - Python
+---
+
+
+
+- [Урок 1](#урок-1)
+- [Урок 1.1](#урок-11)
+- [Урок 1.2](#урок-12)
+
+
+
+## Урок 1
+
+## Теория:
+В Python существует несколько основных типов данных. Вот некоторые из них:
+
+**Целые числа (int)**: Представляют целые числа, например, 5, -10, 1000.
+
+```python
+
+ x = 5
+ y = -10
+ z = 1000
+
+```
+
+**Задачи для самостоятельного решения**
+
+1. Вычислите сумму всех целых чисел от 1 до заданного пользователем числа.
+2. Найдите наибольший общий делитель (НОД) двух целых чисел.
+3. Проверьте, является ли заданное число простым (не имеет делителей, кроме 1 и самого себя).
+
+---
+
+**Вещественные числа (float)**: Используются для представления чисел с плавающей запятой, например, 3.14, 2.0, -0.5.
+
+```python
+
+ pi = 3.14159
+ temperature = 23.5
+ rate = -0.05
+
+```
+
+**Задачи для самостоятельного решения**
+
+1. Вычислите площадь круга с заданным радиусом.
+2. Рассчитайте среднее арифметическое списка оценок студентов (вещественные числа).
+3. Преобразуйте температуру из градусов Цельсия в градусы Фаренгейта и наоборот.
+
+---
+
+**Строки (str)**: Используются для представления текстовых данных, заключаются в одинарные или двойные кавычки, например, "Hello, World!", 'Python'.
+
+```python
+
+ message = "Привет, мир!"
+ name = 'Python'
+
+```
+
+**Задачи для самостоятельного решения**
+
+1. Подсчитайте количество гласных букв в заданной строке.
+2. Проверьте, является ли строка палиндромом (читается одинаково справа налево и слева направо).
+3. Замените все пробелы в строке на дефисы.
+
+---
+
+**Списки (list)**: Позволяют хранить упорядоченные коллекции элементов. Элементы списка могут быть разных типов, и они индексируются с помощью чисел, начиная с 0.
+
+```python
+
+ fruits = ["яблоко", "банан", "апельсин"]
+ numbers = [1, 2, 3, 4, 5]
+ mixed = [1, "hello", 3.14]
+
+```
+
+**Задачи для самостоятельного решения**
+
+1. Найдите сумму всех элементов списка целых чисел.
+2. Удалите дубликаты из списка.
+3. Отсортируйте список в порядке возрастания или убывания.
+
+---
+
+**Кортежи (tuple)**: Похожи на списки, но неизменяемы (элементы кортежа нельзя изменять после создания).
+
+```python
+
+ coordinates = (3, 4)
+ colors = ("красный", "зеленый", "синий")
+
+```
+
+**Задачи для самостоятельного решения**
+
+1. Найдите индекс заданного элемента в кортеже.
+2. Посчитайте количество вхождений определенного значения в кортеже.
+3. Создайте новый кортеж, объединив два существующих кортежа.
+
+---
+
+**Словари (dict)**: Используются для хранения пар ключ-значение. Ключи должны быть уникальными, и они позволяют быстро получать доступ к значениям.
+
+```python
+
+ person = {"имя": "Иван", "возраст": 30, "город": "Москва"}
+ scores = {"математика": 95, "физика": 88, "химия": 75}
+
+```
+
+**Задачи для самостоятельного решения**
+
+1. Подсчитайте количество вхождений каждого элемента в списке и сохраните результаты в словаре.
+2. Извлеките значение по заданному ключу из словаря и выведите его.
+3. Объедините два словаря в один.
+
+---
+
+**Множества (set)**: Представляют неупорядоченные коллекции уникальных элементов. Множества полезны, когда нужно убрать дубликаты из коллекции.
+
+```python
+
+ unique_numbers = {1, 2, 3, 4, 5}
+ vowels = {'a', 'e', 'i', 'o', 'u'}
+
+```
+
+**Задачи для самостоятельного решения**
+
+1. Найдите пересечение двух множеств.
+2. Проверьте, является ли одно множество подмножеством другого.
+3. Удалите дубликаты из списка, используя множество.
+
+---
+
+**Логический тип (bool)**: Имеет два значения: True и False. Используется для представления логических истин и ложных значений.
+
+```python
+
+ is_true = True
+ is_false = False
+
+```
+**Задачи для самостоятельного решения**
+
+1. Проверьте, является ли заданное число четным (True) или нечетным (False).
+2. Проверьте, является ли строка пустой (False) или не пустой (True).
+3. Сравните две переменные и верните результат сравнения в виде логического значения.
+
+---
+
+**NoneType (None)**: Используется для представления отсутствия значения или нулевого значения.
+
+```python
+
+empty_value = None
+
+```
+**Задачи для самостоятельного решения**
+
+1. Напишите функцию, которая ничего не возвращает (возвращает None).
+2. Проверьте, имеет ли переменная значение None и выполните действие в зависимости от этого.
+3. Используйте None для инициализации переменной, которая будет заполняться данными позже.
+
+---
+
+**Байтовые строки (bytes) и байтовые массивы (bytearray)**: Используются для работы с байтовыми данными, например, при чтении и записи файлов.
+
+```python
+
+ data = b'hello'
+ byte_array = bytearray([65, 66, 67])
+
+```
+
+**Задачи для самостоятельного решения**
+
+---
+
+**Объекты пользовательских классов**: Вы также можете создавать свои собственные типы данных, определяя классы.
+
+```python
+
+class Person:
+ def __init__(self, name, age):
+ self.name = name
+ self.age = age
+
+person1 = Person("Анна", 25)
+person2 = Person("Иван", 30)
+
+```
+
+**Задачи для самостоятельного решения**
+
+---
+
+### Cписок функций необходимых для решения данных задач
+1. Функция max() для поиска максимального значения.
+2. Оператор % для вычисления остатка от деления.
+3. Оператор % для проверки четности/нечетности числа.
+4. Оператор * для умножения двух чисел.
+5. Оператор == для проверки равенства числа нулю.
+6. Функция len() для получения длины строки или списка.
+7. Оператор // для целочисленного деления.
+8. Оператор != для проверки неравенства двух значений.
+9. Функция round() для округления числа до определенного количества знаков после запятой.
+10. Оператор ** для возведения числа в степень.
+
+
+## Урок 1.1
+
+## Задания для самостоятельной работы
+
+1. Найти максимальное из двух целых чисел.
+2. Вычислить остаток от деления на 10 заданного трехзначного числа.
+3. Проверить, является ли заданное число нечетным.
+4. Вычислить произведение двух целых чисел.
+5. Проверить, является ли заданное число равным нулю.
+
+### Пример решения
+
+1. Найти минимальное из двух целых чисел.
+
+```python
+
+def min_integer(a, b):
+ return min(a, b)
+
+print(min_integer(7, 12)) # Output: 7
+
+```
+
+2. Вычислить остаток от деления на 10 заданного трехзначного числа.
+
+```python
+
+def remainder_10(n):
+ return n % 10
+
+print(remainder_10(456)) # Output: 6
+
+```
+
+3. Проверить, является ли заданное число нечетным.
+
+
+```python
+
+def is_odd(n):
+ return n % 2 != 0
+
+print(is_odd(9)) # Output: True
+
+```
+
+4. Вычислить произведение двух целых чисел.
+
+```python
+
+def multiply(a, b):
+ return a * b
+
+print(multiply(5, 8)) # Output: 40
+
+```
+
+5. Проверить, является ли заданное число равным нулю.
+
+```python
+
+def is_zero(n):
+ return n == 0
+
+print(is_zero(0)) # Output: True
+
+```
+
+
+## Урок 1.2
+
+## Задания для самостоятельной работы
+
+1. Вычисление площади квадрата по длине стороны.
+2. Вычисление периметра прямоугольника по длинам двух сторон.
+3. Вычисление объема параллелепипеда по длинам трех его сторон.
+4. Вычисление среднего арифметического двух чисел.
+5. Вычисление площади круга по радиусу.
+
+### Пример решения
+
+1. Найти минимальное из двух целых чисел.
+
+```python
+
+def parallelepiped_volume(a, b, с):
+ return a * b * c
+
+print(min_integer(2, 3, 4)) # Output: 24
+
+```
+
+2. Вычисление периметра прямоугольника по длинам двух сторон.
+
+```python
+
+def parallelepiped_volume(a, b, с):
+ return a * b * c
+
+print(min_integer(2, 3, 4)) # Output: 24
+
+```
+
+[На главную](/)
\ No newline at end of file