26 букв и 10 цифр составляют алфавит мощностью 36 знаков. Если кодировать их числами от 0 до 35, а 2⁵ < 35 < 2⁶, то для одного знака потребуется до 6 бит. По условию "Каждый символ кодируется одинаковым и минимально возможным количеством бит", поэтому принимаем размер 6 бит. Длина номера 7 символов и суммарно они займут 7×6 = 42 бита. Но по условию номер должен занимать целое число байт. В байте 8 бит, тогда для номера нужно отвести 42/8 = 6 байт с округлением до целых в большую сторону. 20 номеров потребуют для хранения 6×20 = 120 байт.
// исходный массив int mas[10] = {21,13,52,43,9,18,27,34,28,56}; int i = 0; // счетчик int index_min; // переменна для хранения индекса минимального элемента в массиве int min = mas[0]; // сначала принимаем 1ый элемент как минимальный while (i < 10) { // проходим по всему массиву if (mas[i] < min) { // если текущий элемент меньше минимального min = mas[i]; // делаем его минимальным index_min = i; // запоминаем его индекс } i++; // увеличиваем счетчик } printf("Min = %d ", mas[index_min]); // выводим минимальный элемент int Sum = 0; // переменная для подсчета суммы i = index_min+1; // индес следующего элемента - правее за минимальным while (i < 10) { // пробегаем по массиву от следующего за минимальным до конца Sum += mas[i]; // суммируем i++; // увеличиваем счетчик } printf("Sum = %d ", Sum); // выводим результат суммы
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку