Есть ответ 👍

Дан целочисленный массив из 100 элементов. Элементы массива могут принимать неотрицательные целые значения до 10000 включительно. Необходимо найти количество элементов массива, в десятичной записи которых содержатся ровно две шестёрки, а затем заменить элементы, которые в шестнадцатеричной записи оканчиваются на A, на число, равное найденному значению. Гарантируется, что такие элементы в массиве есть. В качестве результата необходимо вывести изменённый массив в обратном порядке, каждый элемент выводится с новой строчки.
Например, для исходного массива из шести элементов:
170 6 666 6126 26 66
программа должна вывести следующий массив
66 2 6126 2 6 2
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.

Паскаль:

const N = 100;
var a: array [1..N] of longint;
i, k, x, b: longint;
begin
for i := 1 to N do
readln(a[i]);
...

224
302
Посмотреть ответы 1

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


I) 1)  выписываем остатки (те что в скобках 1 или 0 с последнего числа полученного при  делении  ) 104  /  2 =  52 остаток (0)  52     /  2 = 26   остаток (0)  26     /  2 = 13   остаток (0)  13     /  2 =     6   остаток (1)  6       /  2 =   3   остаток (0)3       /  2 =   1 (< == начинаем выписывать с этого числа)  остаток (1) < = следующее  ответ:   1101000 2) 510 /  2 =  255 остаток (0)  255 /  2 = 127  остаток (1)   127 /  2 =     63  остаток (1)     63  /  2 =       31  остаток (1)     31  /  2 =     15  остаток (1)       15  /  2 =       7  остаток (1)       7  /  2 =         3  остаток (1)       3 /  2 =       1(< == первое число)  остаток (1)   ответ : 111111110 3) 634  /  2 = 317  остаток (0)   317  /  2 = 158  остаток (1)   158 /  2 =     79  остаток (0)     79 /  2 =     39  остаток (1)     39  /  2 =   19  остаток (1)       19  /  2 =     9  остаток (1)       9  /  2 =     4  остаток (1)       4  /  2 =     2  остаток (0)     2/  2 =     1  (< == первое число)остаток (1)    ответ : 1101111010 4) число 731 попробуйте сделать сами для понимания ii) 1)   10111 нумеруем все цифры с права налево  (первый номер-0)       1(4)  0(3)  1(2)  1(1)  1(0) далее схема такая 1*2  в четвёртой степени(4) + 0  * 2 в третьей(3)+1*2 во второй(2) + 1*2 в первой(1) +1*2 в нулевой  (0)   и так мы получаем 16+0+4+2+1= 232) 110011 нумеруем  1(5)  1(4)  0(3)  0(2)  1(1)  1(0)  1*2  в пятой +1*2 в четвёртой +1*0 в третьей +1*0 во второй +1*2   первой +1*2 в нулевой=32+16+0+0+2+1= 51 два других сделайте сами для тренировки

Популярно: Информатика