Алгоритм содержит ошибку: необъявленную переменную d. фактически она вообще не нужна, потому что d=x и не меняется. выводится значение l, которое вычисляется по формуле l=30+kx, где k - количество выполнений тела цикла while. получаем уравнение 30 + k·x = 102 → k·x = 72. но 72 = 2 × 2 × 2 × 3 × 3 если значение х нечетное, то оно может быть или 3, или 3 × 3 = 9. в вопросе спрашивается о максимальном х, поэтому проверим, подходит ли х=9. в этом случае k = 72 / 9 = 8 значение k определяется условием выполнения цикла l ≤ m, где m = 456 - 5·x·k. при k= 8 получаем 102 ≤ 456 - 5×8×9; 102 ≤ 96 - ложно, но еще при k=7 получаем 30+7×9 ≤ 456-5×7×9; 93 ≤ 141 истинно. следовательно, x=9 подходит. ответ: 9
krylova-natali
08.07.2021
Var max, //максимальный элемент min, //минимальный элемент sum, //сумма всех чисел n, //количество чисел j: integer; begin write('введите количество чисел: '); readln(n); write('введите числа: '); readln(j); max: =j; min: =j; sum: =j; //1-й элемент это мин, макс, и сумма одновременно for var i: =2 to n do begin readln(j); if(j > max) then max: =j else if(j < min) then min: =j; sum: = sum+j; end; sum: = round(sum/n)*min-max; //результирующая формула if sum < 0 then writeln('результат: ', -sum)//умножаем на -1 если результат< 0 else writeln('результат: ', sum); end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Написать программу подсчёта x процентов от заданного числа. число и проценты вводятся с клавиатуры.