
Задача 3: На кожнiй сторiнцi книжки відомо, що є певна кількість рядкiв i кожен рядок містить певну
кількість символів. Потрібно обчислити обсяг даних (довжину двійкового коду) на сторінці та обсяг даних всієї книжки, якщо книжка має певну кількість сторінок. Вхідні дані: Кількість рядків на сторінці (30). Кількість символів у кожному рядку (50). Кількість сторінок у книжці (500). Вихідні дані: Обсяг даних на сторінці в мегабайтах (МБ), округлений до двох знакiв пiсля коми. Обсяг даних на всій книжці в мегабайтах (МБ), округлений до двох знаків після коми. Результат вивести у МБ. Примітка: Припустимо, що кожен символ кодується 8-бiтним двiйковим кодом (1 байт).

Ответы на вопрос

Ответ:
(0.0, 0.72)
Объяснение:
решение вручную
(I - информационный объем текста, K - кол-во символов, i - вес одного символа/бит на символ, N - мощность алфавита)
Дано:
K = 30 * 50 * 500 = 750000 шт
i = 8 бит
I - ?
Решение:
бит
6000000.0 бит = 750000.0 байт = 732.421875 Кбайт = 0.7152557373046875 Мбайт
Ответ: 6000000.0
Код
def calcBookWeigth(n1, n2, pages):
k = n1 * n2
i = 8 # бит
w_page = k * i
w_page /= 1024 * 8 * 1024 # перевод в МБ
w_book = w_page * pages
return round(w_page, 2), round(w_book, 2)
print(calcBookWeigth(30, 50, 500))
вывод
(0.0, 0.72)



Для обчислення обсягу даних на сторінці та всій книжці, вам потрібно врахувати кількість рядків на сторінці, кількість символів у кожному рядку та кількість сторінок у книжці. Оскільки припускається, що кожен символ кодується 8-бітним двійковим кодом (1 байт), ви можете використовувати наступні кроки для обчислення обсягу даних:
Знайдіть кількість байтів на сторінці, помноживши кількість рядків на кількість символів на рядку:
Байти на сторінці = Кількість рядків на сторінці * Кількість символів у кожному рядку
Знайдіть кількість байтів на всю книжку, помноживши кількість байтів на сторінці на кількість сторінок у книжці:
Байти на книжці = Байти на сторінці * Кількість сторінок у книжці
Перетворіть кількість байтів на сторінці і кількість байтів на книжці в мегабайти (МБ). Оскільки 1 МБ = 1024 КБ, а 1 КБ = 1024 байти, використовуйте наступні формули:
МБ на сторінці = (Байти на сторінці / 1024) / 1024 МБ на книжці = (Байти на книжці / 1024) / 1024
Округліть результати до двох знаків після коми, як вимагається в завданні.
Ось Python-код для обчислення обсягу даних на сторінці та всій книжці:
python# Вхідні дані
кількість_рядків_на_сторінці = 30
кількість_символів_на_рядку = 50
кількість_сторінок_у_книжці = 500
# Обчислення кількості байтів на сторінці
байти_на_сторінці = кількість_рядків_на_сторінці * кількість_символів_на_рядку
# Обчислення кількості байтів на книжку
байти_на_книжці = байти_на_сторінці * кількість_сторінок_у_книжці
# Перетворення в мегабайти та округлення
МБ_на_сторінці = round((байти_на_сторінці / 1024) / 1024, 2)
МБ_на_книжці = round((байти_на_книжці / 1024) / 1024, 2)
# Вивід результату
print(f"Обсяг даних на сторінці: {МБ_на_сторінці} МБ")
print(f"Обсяг даних на всій книжці: {МБ_на_книжці} МБ")
Цей код обчислить обсяг даних на сторінці та всій книжці в мегабайтах.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili