Заданы логический вектор a={a1,a2,...,An,} и вещественный вектор x={X1,X2,...,Xn}. - Pascal

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

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

Заданы логический вектор a={a1,a2,...,An,} и вещественный вектор x={X1,X2,...,Xn}. Преобразовать вектор х по правилу: если ai имеет значение TRUE, то Xi возвести в куб и поделить на 10, в противном случае изменить знак Xj на противоположный. Через 2 дня экзамен, срочно нужно получить допуск...

Решение задачи: «Заданы логический вектор a={a1,a2,...,An,} и вещественный вектор x={X1,X2,...,Xn}.»

textual
Листинг программы
uses crt;
const n=12;{по размерам экрана, чтобы все вошло}
var a:array[1..n] of boolean;{логический}
    x:array[1..n] of real;{вещественный}
    i,c:byte;
begin
clrscr;
randomize;
writeln('Логический вектор A:');
for i:=1 to n do
 begin
  c:=random(2);{0 или 1}
  a[i]:=(c=1);{если 1-true}
  write(a[i]:6);
 end;
writeln;
writeln;
writeln('Вещественный вектор X:');
for i:=1 to n do
 begin
  x[i]:=10*random-4;{от -4 до 6}
  write(x[i]:6:2);
 end;
writeln;
writeln;
writeln('Преобразованный вещественный вектор X:');
for i:=1 to n do
 begin
  if a[i] then x[i]:=x[i]*x[i]*x[i]/10
  else x[i]:=-1*x[i];
  write(x[i]:6:2);
 end;
readln
end.

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

  1. Объявление переменных:
    • a: логический массив размером n;
    • x: вещественный массив размером n;
    • i, c: булевые переменные для цикла.
  2. Инициализация генератора случайных чисел.
  3. Вывод логического вектора a на экран. Для этого используется цикл for, который проходит по всем элементам массива a. Внутри цикла генерируется случайное число c от 0 до 1, которое затем преобразуется в логическое значение (true, если c=1; false в противном случае). Затем значение a[i] присваивается полученное логическое значение. С помощью функции write выводится значение a[i] на экран.
  4. Вывод вещественного вектора x на экран. Для этого также используется цикл for, который проходит по всем элементам массива x. Внутри цикла генерируется случайное число от -4 до 6 и присваивается значению x[i]. Затем с помощью функции write выводится значение x[i] на экран.
  5. Вывод преобразованного вещественного вектора X на экран. Для этого используется цикл for, который проходит по всем элементам массива x. Внутри цикла проверяется значение a[i]. Если оно равно true, то значение x[i] умножается на x[i], а затем результат делится на 10. Если a[i] равно false, то значение x[i] умножается на -1. Затем полученное значение выводится на экран с помощью функции write.
  6. Завершение работы программы и ожидание ввода пользователя с помощью функции readln.

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


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

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

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