Правильно: 543(6)=5*6(в квадрате)+4*6+3= 180+24+3=207,
56(7)=5*7+6=41
неправильно:91(3), так как нельзя использовать в записи 9. (есть только 0, 1, 2),
23(2), так как нельзя использовать 2. (есть только 0, 1).
Поскольку тут речь о последовательности неизвестной длины, вводимой с клавиатуры до появления нуля, а условие позволяет для каждого вводимого числа сразу решить, должно ли оно входить в сумму, задача решается без использования массива и условие "<span>Количество чисел не превышает 1000" - это просто ловушка для наивных с тем, чтобы в случае использования массива длиной 1000 объявить затем решение неэффективным по памяти.
</span><em>1. Решение на современной версии Паскаля</em>
<em>PascalABC.NET 3.2, сборка 1389 от 01.03.2017</em>
<em>Внимание! Если программа не работает, обновите версию!</em>
begin
var s:=ReadSeqIntegerWhile(n->n<>0)
.Where(n->(n mod 3=0) and (n mod 10=6)).Sum;
Writeln('Сумма отобранных чисел равна ',s)
end.
<em>Пример</em>
15 36 26 72 25 96 83 0
Сумма отобранных чисел равна 132
<em>2. Решение "по-школьному"</em>
var
n,s:integer;
begin
s:=0;
repeat
Read(n);
if (n mod 3=0) and (n mod 10=6) then s:=s+n
until n=0;
Writeln('Сумма отобранных чисел равна ',s)
end.
<u>Пример</u>
15 36 26 72 25 96 83 0
Сумма отобранных чисел равна 132
uses WinCrt;
var
a, s: real;
begin
write('Введите сторону квадрата: ');
readln(a);
s:=a*a;
writeln('Площадь квадрата: ',s:5:2);
<span>end.</span>