ответ: 10. Сообщение, записанное буквами из 64-х символьного алфавита, содержит 20 символов.
Какой объём оно несёт?
Дано:
N = 64 символа
K = 20 символов
lc =?
Найти:
Какой объём оно несёт?
Из формулы N = 2i определим вес 1 символа алфавита: 64 = 2^i → 64 = 2^6 → i^6. Из формулы lc = Kxi определим количество информации в сообщении lc = 20x6 = 120 бит
ответ: Сообщение несёт 120 бит информации.
9. Сообщение занимает 3 страницы по 25 строк. В каждой строке по 60 символов. Сколько символов в использованном алфавите, если всё сообщение содержит 1125 байтов?
Дано:
Iт = 1125 байтов
x = 25 – количество строк
y = 60 – количество символов в строке
M = 3 – количество страниц
Найти:
N = ?
1) N = 2i, неизвестно I; 2) Iт = K*I, I = Iт/K; 3) K = x * y * M = 25 * 60 * 3 = 4 500 символов – в тексте; 4) I = Iт/K = 1 125 * 8/ 4500 = 2 бита – объём одного символа; 5) N = 22 = 4 символа – в алфавите.
ответ: в алфавите 4 символа.
После выполнения шага 1 на столе лежит яблоко, которое достали из корзины первым, а вторая корзина пуста. После каждого выполнения шага 2 большее яблоко перемещается в корзину, а меньшее остается на столе. В результате на столе окажется самое маленькое яблоко.
При обосновании корректности циклических алгоритмов полезно использовать понятие инварианта цикла. В случае приведенного алгоритма инвариантом цикла является такое условие «лежащее на столе яблоко — самое маленькое из всех взятых до сих пор». В начале алгоритма условие очевидно выполняется (любое яблоко удовлетворяет этому условию). Условие остается истинным на каждом шаге в соответствии с приведенными правилами. Таким образом, в конце алгоритма, когда все яблоки взяты, получим самое маленькое яблоко из всех.
#include <iostream>
int main()
{
int A[5];
int i, imax=0, imin=0,s = 0, k = 0;
setlocale(LC_ALL, "Russian"); // Русский язык в консоли
for (i = 0; i < 5; i++)
{
std::cin >> A[i];
if (A[i] == 0) k++;
else if (A[i] > 0) s += A[i];
if (A[i] > A[imax]) imax = i;
if (A[i] < A[imin]) imin = i;
}
std::cout << "Максимальный элемент равен " << A[imax] << ", его номер - " << imax+1 << std::endl;
std::cout << "Минимальный элемент равен " << A[imin] << ", его номер - " << imin + 1 << std::endl;
std::cout << "Сумма положительных элементов равна " << s << std::endl;
std::cout << "Количество элементов, равных нулю: " << k << std::endl;
return 0;
}