Во-первых, X1 < 8, иначе число 2N в 16-ной записи станет 4-значным. Можно написать такую программу поиска этих чисел Начало k = 0 ' Это счетчик чисел, которые мы ищем Цикл по X1 от 1 до 7 Цикл по Y1 от 0 до 15 Цикл по Z1 от 0 до 15 N = X1*256 + Y1*16 + Z1 M = 2*N X2 = Int (M / 256) Y2 = Int ((M - X2*256) / 16) Z2 = M Mod 16 Если (X1+Y1+Z1 = X2+Y2+Z2) And ((X1 = 2) Or (Y1 = 2) Or (Z1 = 2), То k = k + 1 Конец Если Конец цикла по Z1 Конец цикла по Y1 Конец цикла по X1 Вывод k Конец
ДЗ для ВЕРЫ ВИКТОРОВНЫ:
Объяснение:
Var I, N, m: integer;
{Выводит таблицу квадратов до N числа}
Begin
Readln(N); //Что вводим в этой строке и зачем? Как можно подсказать пользователю, что ввести?
{Вводим до какого числа нам нужно получить квадрат; Подсказать можно через WRITELN}
Writeln('Таблица квадратов чисел от 1 до N'); //Сколько раз выполняется этот оператор?
{Один раз}
For i:=1 to N do //Сколько раз выполнится цикл?
{N раз}
Begin //Зачем снова писать операторные скобки?
{Затем, что это цикл, который всегда обособляется и отделяет от остальных операторов}
m:=i*I;
Writeln(I,' ',m); //Как по-другому оставить пробелы между столбиками?
{Можно сделать так - Writeln(I:3,m:16);}
End;
End.