М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Venidiktova
Venidiktova
07.01.2020 22:17 •  Информатика

Вычислить множество значений функций
Y=1,2x² - L при L=0,2 x изменяющихся от 3 до 20 с шагом 3


Вычислить множество значений функций Y=1,2x² - L при L=0,2 x изменяющихся от 3 до 20 с шагом 3

👇
Ответ:
LAKI2280041
LAKI2280041
07.01.2020

Требуется написать программу, вычисляющую значение какой-либо функции у = f(x). Допустим, такой:

у = x – 2, если x > 0,

y = 0, если x = 0,

y = |x|, если x < 0.

Решение

При определении значений подобных функций переменная y вычисляется по-разному (по разным формулам) в зависимости от значения x.

Такие задачи решаются с конструкции условного оператора if - else. Поскольку в данном случае мы имеем три условия (x > 0, x = 0 и x < 0), то потребуется использование еще вложенной конструкции if - else, т. к. в языке Pascal нет оператора множественного ветвления (оператор case в данном случае не подходит).

В языке программирования Паскаль (да и в других тоже) желательно вложенные конструкции if - else помещать во внешнюю ветку else, а не if. Так проще не запутаться.

Таким образом, алгоритм вычисления значения функции может быть таким:

Если x > 0, то у = x - 2

Иначе (ниже идет вложенная конструкция)

Если x = 0, то y = 0

Иначе y = |x|.

В последнем пункте можно опустить оператор if с проверкой, что x < 0, так как если ход выполнения программы дошел до этого пункта, то x уже другим быть и не может (варианты, когда он больше или равен нулю, уже были исключены).

Для определения модуля (абсолютного значения) переменной можно использовать встроенную функцию abs() языка Pascal. В данном случае можно обойтись и без нее: поскольку уже известно, что x отрицателен, то, чтобы получить положительное число (модуль), нужно его умножить на -1.

var x, y: integer;   begin write ('x = '); readln (x);   if x > 0 then y := x - 2 else if x = 0 then y := 0 else y := abs(x);   writeln ('y = ', y);   end.

сорр

4,5(78 оценок)
Открыть все ответы
Ответ:
zarizatamara00
zarizatamara00
07.01.2020
Var a1, b1, c1, a2, b2, c2, p1, p2, s1, s2: real;
begin
  writeln('Введите строны первого треугольника: ');
  read(a1, b1, c1);
  writeln('Введите стороны второго треугольника: ');
  read(a2, b2, c2);
  p1 := (a1 + b1 + c1) / 2;
  p2 := (a2 + b2 + c2) / 2;
  s1 := sqrt(p1 * (p1 - a1) * (p1 - b1) * (p1 - c1));
  s2 := sqrt(p2 * (p2 - a2) * (p2 - b2) * (p2 - c2));
  if (s1 + 1e-3 > s2) and (s1 < s2 + 1e-3) then writeln('Равновеликие')
                                           else writeln('Неравновеликие');
end.
4,6(100 оценок)
Ответ:
sofia308
sofia308
07.01.2020

В n будем хранить количество чисел, которые ещё нужно вывести. a и b - предыдущее и текущее числа Фибоначчи. По определению, следующее число Фибоначчи равно сумме двух предыдущих, так что новое значение b будет a + b. Чтобы не заводить новую временную переменную, новое значение a можно будет найти, вычитая из нового b старое a, получится (a + b) - a = b.

Код процедуры:

procedure print_fib(n: integer);

var a, b, t: integer;

begin

   a := 0;

   b := 1;

   while n > 0 do

   begin

       write(b, ' ');

       b := a + b;

       a := b - a;

       n := n - 1;

   end;

end;

Пример основной программы:

begin

   print_fib(10)

end.

Вывод:

1 1 2 3 5 8 13 21 34 55

4,8(52 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ