Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 9 additions & 6 deletions .github/workflows/ruff.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
name: Ruff Code Quality Check

on:
push:
branches: [ main, master, develop, feature/** ]
pull_request:
branches: [ main, master, develop ]

on: [ push, pull_request ]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
Expand All @@ -30,3 +25,11 @@ jobs:
- name: Install Ruff
run: |
pip install ruff

- name: Run Ruff check
run: |
ruff check . --output-format=github

- name: Check code formatting
run: |
ruff format --check . --diff
11 changes: 5 additions & 6 deletions src/hw_2_3_euclid_algorithm/hw_2_3_euclid_algorithm.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,10 @@ def extended_gcd(a, b):
return [gcd, x, y]


a = int(input('Введите первое число: '))
b = int(input('Введите второе число: '))
a = int(input("Введите первое число: "))
b = int(input("Введите второе число: "))

gcd, x, y = extended_gcd(a, b)
print(f'НОД({a}, {b}) = {gcd}')
print(f'Коэффициенты: x = {x}, y = {y}')
print(f'Проверка: ({a})*({x}) + ({b})*({y}) = {a * x + b * y}')

print(f"НОД({a}, {b}) = {gcd}")
print(f"Коэффициенты: x = {x}, y = {y}")
print(f"Проверка: ({a})*({x}) + ({b})*({y}) = {a * x + b * y}")
3 changes: 2 additions & 1 deletion src/hw_3-2_sort/hw_3-2_sort.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
numbers = [1, 2, 3, 9, 3, 8, 478, 7]


def bubble_sort(nums):
# значение для запуска цикла
swap = True
Expand All @@ -14,6 +15,6 @@ def bubble_sort(nums):
# перезапускаем цикл, для ещё одной проверки
swap = True


bubble_sort(numbers)
print(numbers)

55 changes: 55 additions & 0 deletions src/hw_5-1_format/hw_5-1_format.py
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[17]: E722 do not use bare 'except'
[20]: E302 expected 2 blank lines, found 1
[46]: E305 expected 2 blank lines after class or function definition, found 1

Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# У вас есть монеты номиналом в длина имени, длина фамилии, длина отчества(если нет, то 19).
# Напишите программу, выписывающую размен считанного с консоли числа, если таковой возможен.
# В противном случае выведите "-42!".
# 3, 10, 8

COIN_1 = 10 # номинал 1-ой монеты
COIN_2 = 8 # номинал 2-ой монеты
COIN_3 = 3 # номинал 3-ей монеты
take = "" # число для размена, взятое через input
test = 0 # переменная-флаг для проверки правильности введённого формата

# проверка правильности введённого формата
while test == 0:
try:
take = int(input("Введите число для размена: "))
test = 1
except ValueError:
print("Неверный формат!")


def change(x=0, y=take, z=[0, 0, 0]):
global COIN_1, COIN_2, COIN_3

if x == y:
return z # нашли решение, возвращаем его

if x > y:
return None # превышение суммы, нет решения

# пробуем добавить монету COIN_1
res = change(x + COIN_1, y, [z[0] + 1, z[1], z[2]])
if res is not None:
return res

# пробуем добавить монету COIN_2
res = change(x + COIN_2, y, [z[0], z[1] + 1, z[2]])
if res is not None:
return res

# пробуем добавить монету COIN_3
res = change(x + COIN_3, y, [z[0], z[1], z[2] + 1])
if res is not None:
return res

return None # решений нет


result = change()

if result is None:
print("-42!")
else:
print(
f"{result[0]} монет по {COIN_1}, {result[1]} монет по {COIN_2} и {result[2]} монет по {COIN_3}."
)