Описать функцию, дающую число перемен знака в вещественном векторе длины 20 - Turbo Pascal

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

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

Здравствуйте! Помогите написать программу на Паскале: Описать функцию, дающую число перемен знака в вещественном векторе длины 20.

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

textual
Листинг программы
  1. program pr;
  2. const
  3.   Csize = 20;
  4. type
  5.   arr = array [1..Csize] of real;
  6. var
  7.   i, c: integer;
  8.   a: arr;
  9. function shif(x: arr): integer;
  10. var
  11.   cout, j: integer;
  12. begin
  13.   cout := 0;
  14.   for j := 1 to Csize - 1 do
  15.     if ((a[j] > 0) and (a[j + 1] < 0)) or ((a[j] < 0) and (a[j + 1] > 0)) then
  16.     begin
  17.       cout := cout + 1;
  18.     end;
  19.   shif := cout;
  20. end;
  21. begin
  22.   for i := 1 to Csize do
  23.   begin
  24.     a[i] := random(21) - 10;
  25.     write(a[i]:3);
  26.   end;
  27.   c := shif(a);
  28.   writeln;
  29.   writeln('Число перемен знака в векторе: ', c);
  30. end.

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

  1. Создается программа pr.
  2. Задаются константы Csize и тип данных arr.
  3. Создается переменная i и инициализируется значением 1.
  4. Создается переменная c и инициализируется значением 0.
  5. Создается переменная a и инициализируется значением array [1..Csize] of real; - это массив из 20 чисел типа real.
  6. Определяется функция shif, которая принимает аргумент x типа arr (массив из 20 чисел типа real).
  7. Инициализируются переменные cout и j значением 0 и 1 соответственно.
  8. В цикле for j := 1 до Csize - 1 выполняется следующая логика:
    • Проверяется условие: если (a[j] > 0) и (a[j + 1] < 0) или (a[j] < 0) и (a[j + 1] > 0), то увеличивается значение переменной cout.
    • После выполнения условия, переменная cout увеличивается на 1.
    • Значение переменной cout возвращается из функции shif.
  9. В основной части программы выполняется цикл for i := 1 до Csize.
  10. Внутри цикла переменная a[i] инициализируется случайным числом от -10 до 10.
  11. Выводится значение a[i] с помощью функции write.
  12. Переменная c инициализируется значением функции shif(a).
  13. Выводится значение переменной c с помощью функции write.
  14. Программа завершается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

5   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы