Заполнить массив с именем D случайными значениями и вывести эти значения на экран. Размерность массива 23, все элементы целого типа. Умножить на 4 значение каждого элемента массива и вывести на экран.
Если число 49 записывается как 121, значит первый остаток от деления равен 1, то есть основанием системы счисления является число, кратное 48.
121 имеет 3 разряда, значит основание однозначно меньше 10 и больше 2. Подходят 3, 4, 6, 8.
Учитывая, что в числе 121 три разряда, значит число 48 делилось всего три раза. Число 8 не подойдет, т.к. 48/8=6, значит будет всего два деления. Число 3 не подойдет, т.к. 48/3 = 16, 16/3=5 - то есть тут будет больше трёх знаков. Число 4 не подойдет, т.к. 48/4=12, а 12 делится на 4 без остатка, но, судя по числу, во втором делении остаток должен быть равен 2. Остаётся число 6. Проверим
Запишем таблицу распределения мест по купе: Купе Места 1 1-4,53,54 2 5-8,51,52 3 9-12,49,50 4 13-16,47,48 5 17-20,45,46 6 21-24,43,44 7 25-28,41,42 8 29-32,39,40 9 33-36,37,38 Установим связь номера места с номером купе. Предлагается следующий (конечно же, не единственный) вариант:
Здесь знаком ÷ обозначена операция целочисленного деления.
Теперь можно написать программу. Язык программирования в задании не указан, поэтому выбран язык свободно распространяемой для целей обучения системы программирования PascalABC.Net
var n:integer; begin Write('Укажите номер места: '); Read(n); Write('Место располагается в купе №'); if n<=36 then Write((n-1) div 4 + 1) else Write((54-n) div 2 + 1) end.
Тестовое решение: Укажите номер места: 18 Место располагается в купе №5
121 имеет 3 разряда, значит основание однозначно меньше 10 и больше 2. Подходят 3, 4, 6, 8.
Учитывая, что в числе 121 три разряда, значит число 48 делилось всего три раза.
Число 8 не подойдет, т.к. 48/8=6, значит будет всего два деления.
Число 3 не подойдет, т.к. 48/3 = 16, 16/3=5 - то есть тут будет больше трёх знаков.
Число 4 не подойдет, т.к. 48/4=12, а 12 делится на 4 без остатка, но, судя по числу, во втором делении остаток должен быть равен 2.
Остаётся число 6. Проверим
49/6=8 |1
8/6 = 1 |2
1/6=0 |1
121(6)
Купе Места
1 1-4,53,54
2 5-8,51,52
3 9-12,49,50
4 13-16,47,48
5 17-20,45,46
6 21-24,43,44
7 25-28,41,42
8 29-32,39,40
9 33-36,37,38
Установим связь номера места с номером купе. Предлагается следующий (конечно же, не единственный) вариант:
Здесь знаком ÷ обозначена операция целочисленного деления.
Теперь можно написать программу. Язык программирования в задании не указан, поэтому выбран язык свободно распространяемой для целей обучения системы программирования PascalABC.Net
var
n:integer;
begin
Write('Укажите номер места: '); Read(n);
Write('Место располагается в купе №');
if n<=36 then Write((n-1) div 4 + 1)
else Write((54-n) div 2 + 1)
end.
Тестовое решение:
Укажите номер места: 18
Место располагается в купе №5