По каналу связи сообщения, содержащие только семь букв: а и к л р ц я. для передачи используется двоичный код, удовлетворяющий условию фано. кодовый слова для некоторых букв известны: а - 01, я - 11. какое наименьшее количество двоичных знаков потребуется для кодирования слова кириллица?
Ну... а что сложного? Создаёшь структуру, заполняешь её, и обрабатываешь условие на входном M:
#include <stdio.h>
#include <conio.h>
#include <locale.h>
int main(void) {
setlocale(LC_ALL, "russian");
struct months {
char name[16];
int days;
};
struct months m[12] = {
{"Январь", 31},
{"Февраль", 29},
{"Март", 31},
{"Апрель", 30},
{"Май", 31},
{"Июнь", 30},
{"Июль", 31},
{"Август", 31},
{"Сентябрь", 30},
{"Октябрь", 31},
{"Ноябрь", 30},
{"Декабрь", 31}
};
int M;
printf("Введите номер месяца: ");
scanf("%d", &M);
if (M > 0 && M < 13) {
M--;
if (m[M].days == 29 || m[M].days == 30) {
printf("В месяце \"%s\" %d дней.", m[M].name, m[M].days);
} else {
printf("В месяце \"%s\" %d день.", m[M].name, m[M].days);
}
} else {
printf("Неизвестный месяц.");
}
getch();
return 0;
}
2) Наилучшее качество это расплывчатое понятие :) Зависит от звуковой карты.
Так или иначе, качество звука определяется:
а) Частотой дискретизации: частотой снятия уровня звука.
б) Глубиной кодирования (иногда называют разрешением сэмплирования итд)
Допустим лучшее качество, которого позволяет достичь лично моя звуковая карта - это частота 48 кГц и глубина 24 бит. Это означает, что на каждую секунду звучания производится 48000 тысяч замеров уровня звука и каждый замер кодируется 24 битным числом (3 байтами). Для стерео звука кодирование производится для двух разных каналов отдельно.
Посчитаем, какой объем займут 2 минуты звука с вышеуказанными параметрами:
120 сек * 48000 Гц * 3 байта * 2 канала = 34 560 000 байт = 33 750 кбайт = 32.96 Мбайт.
1) Уже решал, копирую сюда:
Найдем разрешение по горизантали и вертикали, приняв, что дюйм = 2.54 см
По горизонтали: 9/2.54 * 1024 = 3628 точек
По вертикали 12/2.54 * 1024 = 4837 точек
Значит всего точек в изображении 3628*4837 = 17 548 636
Далее, палитра 256 цветов означает, что каждая точка кодируется log2(256) = 8 битами (2^8 = 256), то есть одним байтом. Значит изображение занимает в памяти 17548636 * 1 байт = 17548636/1024 кбайт = 17137/1024 Мбайт = 16.7 Мбайт
Подробнее - на -