Вроде так...
<span>Решение должно иметь от 20 до 5000 символов</span>
Насколько я понял, нужно перевести из двоичной системы счисления в десятичную.
Обычно это делают, умножая цифру в каждом разряде на "вес" разряда, и складывая эти произведения (естественно, все вычисления делаются по правилам десятичной системы счисления).
Я специально не стал пропускать разряды, равные нулю, чтобы была понятнее суть вычислений при переводе:
А так, их конечно можно пропустить, но главное при этом не пропускать увеличение степени, в которую возводим двойку (она увеличивается на единицу с каждым разрядом в исходном числе). Вот вариант с пропуском нулевых разрядов:
var a,b,n,i:integer;
begin
write('Введите a,b,n: ');
readln(a,b,n);
repeat
write(a,' ');
a:=a+n
until a>b
end.
или
var a,b,n,i:integer;
begin
write('Введите a,b,n: ');
readln(a,b,n);
while a<=b do
begin
write(a,' ');
a:=a+n
end
end.
<h3>PascalABC.NET 3.4.2, сборка 1881 от 19.11.2018</h3><h3>Внимание! Если программа не работает, обновите версию!</h3>
begin
var a := ReadArrReal('Вводите:', ReadInteger('Количество чисел?'));
var imax := a.IndexMax;
Writeln('Первое максимальное число ', a[imax],
' имеет номер ', imax + 1)
end.
<h2>Пример</h2><h3>Количество чисел? 5</h3><h3>Вводите: 14 2.17 15.2 8 15.2</h3><h3>Первое максимальное число 15.2 имеет номер 3</h3>
Можно переписать так:
Х≥ 6 + (Х<5)*(X≥4) = 0
1) X=7 не подходит, так как X≥6 =1
2) X=6 не походит, так как Х≥6=1
3) Х<5 не подходит , так как (X<5)*(X>=4) =1
4) Х=4 Х≥6 =0 и (Х<5)*(X≥4) =0 - подходит
Ответ 4) 4