Написать программу и составить блок-схему для функции, заданной в виде графика - Free Pascal
Формулировка задачи:
Нужно мне разобраться с задачей. По возможности объясните или дайте ссылку на объяснение. А то, о том как это делать мне в универе не объяснили или объяснили непонятно.
Нужно написать программу и составить блок схему, которая по введенному значению аргумента вычисляет значение функции, заданной в виде графика. Параметр R вводится с клавиатуры.
Решение задачи: «Написать программу и составить блок-схему для функции, заданной в виде графика»
textual
Листинг программы
- var x, r: real;
- begin
- write('x = '); readln(x);
- repeat
- write('R = '); readln(r);
- if r <= 0 then writeln('Invalid radius, reenter.')
- until r > 0;
- if (x < -4) or (x > r + r + 1)
- then writeln('y is undefined') {за пределами графика}
- else begin
- write('y = ');
- if x < 0
- then writeln(-x / 2:0:8) {первая прямая}
- else if x < r
- then write(r - sqrt(r * r - x * x):0:8) {первый сектор}
- else if x < r + r
- then writeln(sqrt(r * r - sqr(x - r)):0:8) {второй сектор}
- else writeln(r + r - x:0:8) {вторая прямая}
- end;
- readln
- end.
Объяснение кода листинга программы
- Объявлены две переменные: x и r (строки 1 и 2).
- В цикле while с помощью функции readln считываются значения переменных x и r (строки 3-11).
- Если значение переменной r меньше или равно нулю, выводится сообщение об ошибке и цикл повторяется (строки 12-14).
- Если значение переменной r больше нуля, выполняется проверка на соответствие значения переменной x графикам функций (строки 15-20).
- Если значение переменной x меньше нуля или больше суммы двух радиусов, выводится сообщение об ошибке (строки 21-22).
- В зависимости от значения переменной x выводится соответствующее значение y (строки 23-27).
- Цикл while завершается (строка 28).
- Программа завершается (строка 29).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д