Вывести множество значений функции, удовлетворяющих условию, и подсчитать количество остальных значений - Pascal

Узнай цену своей работы

Формулировка задачи:

Дана целочисленная функция f(k)= K^3-25K^2+50K+1000 определена только для целых значений аргумента К. Составить программу вычисления значений функции f(k) для 20 значений аргумента К в интервале (-30,60) с выводом лишь тех значений, которые удовлетворяют заданному условию, и подсчетом остальных ее значений. Задать А=30000, В=60000, М=4. Значение f(K) заключено либо между значениями T1=-a-sqrt(b+m), T2=sqrt(a+b+m) , но не равно 0

Решение задачи: «Вывести множество значений функции, удовлетворяющих условию, и подсчитать количество остальных значений»

textual
Листинг программы
type 
  int = integer;
 
function f(k:int):int; //Сама функция
begin
  f:= k * k * k - 25 * k * k + 50 * k + 1000;
end;
 
function cheque(a, b, m, k:int):boolean; //Проверка условия
var v:int;
begin
  v:= f(k);
  cheque:= ((v <> 0) and (v > (-a - sqrt(b + m))) and (v < sqrt(a + b + m)));
end;
 
const n = 20;
 
var q, w, a, b, m, cur, i:int;
 
begin
  q:= -30;
  w:= 60;
  a:= 30000;
  b:= 60000;
  m:= 4;
  for i:= 1 to 20 do
  begin
    randomize;
    cur:= random(w - q + 1) + q;
    write('Проверяем значение f(k) при k = ', cur, ': ');
    if (cheque(a, b, m, cur)) then
      writeln('значение ', f(cur), ' в границах диапазона')
    else
      writeln('значение ', f(cur), ' вне границ диапазона');
  end;
end.

Объяснение кода листинга программы

  1. Объявление типа данных int как синонима для целочисленного типа данных integer.
  2. Определение функции f с аргументом k типа int и возвращаемым значением типа int, которая вычисляет значение кубической функции для заданного значения k.
  3. Определение функции cheque с аргументами a, b, m и k типа int и возвращаемым значением типа boolean, которая проверяет условие, зависящее от результата функции f(k).
  4. Объявление константы n и присвоение ей значения 20.
  5. Объявление переменных q, w, a, b, m, cur, i типа int.
  6. Начало основной программы.
    • Присвоение переменной q значения -30.
    • Присвоение переменной w значения 60.
    • Присвоение переменной a значения 30000.
    • Присвоение переменной b значения 60000.
    • Присвоение переменной m значения 4.
    • Цикл for от 1 до 20.
      • Генерация случайного числа cur в пределах от q до w.
      • Вывод сообщения о проверке значения f(k) при k = cur.
      • Проверка значения f(cur) с помощью функции cheque(a, b, m, cur) и вывод результата на экран. Таким образом, код вычисляет значения функции f(k) для случайно сгенерированных значений k в указанном диапазоне и проверяет их соответствие заданному условию, затем выводит результаты проверки в виде сообщений.

Оцени полезность:

7   голосов , оценка 3.857 из 5
Похожие ответы