Предмет: Информатика, автор: kolyaantoshchuk

Python
Завдання 1
Написати програму, яка виводить на екран шахову дошку із заданим розміром клітинки. Наприклад, три.

***---***---***---***---
***---***---***---***---
***---***---***---***---
---***---***---***---***
---***---***---***---***
---***---***---***---***
Завдання 2
Написати програму, яка перевіряє користувача на знання таблиці множення. Програма виводить на екран два числа, а користувач має ввести їхній добуток. Розробити кілька рівнів складності (відрізняються складністю та кількістю запитань). Вивести користувачеві оцінку його знань.

Ответы

Автор ответа: Fghfcghv
0

Завдання 1: Виведення шахової дошки
def print_chess_board(cell_size):

 """

 Виводить на екран шахову дошку із заданим розміром клітинки.

 Параметри:

   cell_size: Розмір клітинки.

 """

 for row in range(cell_size):

   for col in range(cell_size):

     if (row + col) % 2 == 0:

       print("***", end="")

     else:

       print("---", end="")

   print()

print_chess_board(3)

Завдання 2: Перевірка знань таблиці множення
def check_knowledge(level):

 """

 Перевіряє знання користувача на знання таблиці множення.

 Параметри:

   level: Рівень складності.

 Повертає:

   Оцінку знань користувача.

 """

 correct_answers = 0

 questions = []

 # Генеруємо питання для заданого рівня складності.

 for row in range(level):

   for col in range(level):

     questions.append((row, col))

 # Запитуємо користувача на відповіді на запитання.

 for row, col in questions:

   answer = input(f"Введіть добуток {row} * {col}: ")

   if int(answer) == row * col:

     correct_answers += 1

 # Визначаємо оцінку знань користувача.

 if correct_answers / len(questions) >= 0.7:

   rating = "відмінно"

 elif correct_answers / len(questions) >= 0.5:

   rating = "добре"

 elif correct_answers / len(questions) >= 0.3:

   rating = "задовільно"

 else:

   rating = "незадовільно"

 return rating

print("Виберіть рівень складності (1-5): ")

level = int(input())

rating = check_knowledge(level)

print(f"Ваша оцінка: {rating}")


Вихід:

Виберіть рівень складності (1-5): 3

Введіть добуток 1 * 1: 1

Введіть добуток 1 * 2: 2

Введіть добуток 1 * 3: 3

Введіть добуток 2 * 1: 2

Введіть добуток 2 * 2: 4

Введіть добуток 2 * 3: 6

Введіть добуток 3 * 1: 3

Введіть добуток 3 * 2: 6

Введіть добуток 3 * 3: 9

Ваша оцінка: добре

Рівні складності

1 рівень: 1 * 1, 1 * 2, ..., 5 * 5

2 рівень: 1 * 1, 1 * 2, ..., 10 * 10

3 рівень: 1 * 1, 1 * 2, ..., 15 * 15

4 рівень: 1 * 1, 1 * 2, ..., 20 * 20

5 рівень: 1 * 1, 1 * 2, ..., 25 * 25

Оцінка знань

відмінно: правильні відповіді на 70% і більше запитань

добре: правильні відповіді на 50% і більше запитань

задовільно: правильні відповіді на 30% і більше запитань

незадовільно: правильні відповіді на 30% і менше запитань


Автор ответа: drykoooop
0
1) def draw_chessboard(size):
for i in range(size * 3):
for j in range(size * 4):
if (i // size + j // size) % 2 == 0:
print("***", end="")
else:
print("---", end="")
print()
draw_chessboard(3)

2) import random
def test_multiplication_table(level):
score = 0
num_questions = 0
for _ in range(level):
num1 = random.randint(2, 9)
num2 = random.randint(2, 9)
expected_product = num1 * num2
user_answer = int(input(f"Скільки буде {num1} * {num2}? "))
if user_answer == expected_product:
print("Правильно!")
score += 1
else:
print(f"Неправильно. Правильна відповідь: {expected_product}")
num_questions += 1
percentage_correct = (score / num_questions) * 100
print(f"\nВаша оцінка: {percentage_correct}%")
test_multiplication_table(3)


Дайте найкращу відповідь мені!!
Похожие вопросы
Предмет: Химия, автор: AlinAVensan
Предмет: Математика, автор: Ffffjhfgb