Контрольная работа по "Алгоритмизации"
Автор: orlovapolina • Март 14, 2024 • Контрольная работа • 1,428 Слов (6 Страниц) • 94 Просмотры
Контрольная работа
По алгоритмизации
- Даны действительные числа x и y. Получить (|x| – |y|) / (1 + |x·y|).
- Найти значение функции
[pic 1]
- Даны два действительных числа. Вывести первое число, если оно больше второго, и оба числа, если это не так.
- Определить имеется ли среди трех чисел хотя бы одна пара неравных.
- Посчитать количество четных чисел среди трех.
- Вычислить значение функции [pic 2] в точках 0, 2, 4, 6, …, 20.
Задача 1
Даны действительные числа x и y. Получить (|x| – |y|) / (1 + |x·y|).
РЕШЕНИЕ
Алгоритм решения этой задачи линейный, поскольку область определения данной функции – все вещественные числа. Исходные данные – значения х и y вещественного типа, результат – значение f вещественного типа.
[pic 3]
Рисунок 1.1 – Блок-схема алгоритма решения задачи 1
Program Ex1; {название программы}
Uses Crt; {подключение библиотеки Crt}
Var x,y,f: Real; {раздел описания переменных}
Begin {начало программы}
Clrscr; {оператор очистки экрана}
Writeln (‘введите значение х’); {оператор вывода на экран фразы ‘введите значение х’ }
Readln (x); {оператор ввода значения х}
Writeln (‘введите значение y’); {оператор вывода на экран фразы ‘введите значение y’ }
Readln (y); {оператор ввода значения y}
f:=(abs(x)-abs(y))/(1+abs(x*y)); {оператор присваивания переменной f значения выражения (|x| – |y|) / (1 + |x·y|) }
Writeln (‘f=’,f); {оператор вывода на экран значения f}
Readkey; {задержка экрана – после вывода результата программа ожидает нажатия клавиши для
завершения работы}
End. {конец программы}
[pic 4]
Рисунок 1.2 – Скриншот программного кода решения задачи 1
На рисунке 1.3 показан результат выполнения программного кода решения задачи 1.
[pic 5]
Рисунок 1.3 – Скриншот результат работы программы решения задачи 1
Таким образом, задача 1 успешно решена.
Задача 2
- Найти значение функции
[pic 6]
РЕШЕНИЕ
Алгоритм решения этой задачи ветвящийся, т. к. функция меняет свой вид для различных диапазонов значений х. Исходные данные – значение х, результат – значение f. Обе переменные вещественного типа.
[pic 7]
Рисунок 2.1 – Блок-схема алгоритма решения задачи 2
Program Ex2; {название программы}
Uses Crt; {подключение библиотеки Crt}
Var x,f: Real; {раздел описания переменных}
Begin {начало программы}
Clrscr; {оператор очистки экрана}
Writeln (‘введите значение x’); {оператор вывода на экран фразы ‘введите значение x’}
Readln (x); {оператор ввода значения x}
if (x<=2) then {проверка условия a>b}
f:=x*x+4*x+5; {вычисляем значение функции f}
else
f:=1/(x*x+4*x+5); {вычисляем значение функции f}
Writeln (‘f =’,f); {оператор вывода на экран значения f}
end;
Readkey; {задержка экрана – после вывода результата программа ожидает нажатия клавиши для завершения работы}
End. {конец программы}
[pic 8]
Рисунок 2.2 – Скриншот программного кода решения задачи 3
На рисунке 2.3 показан результат выполнения программного кода решения задачи 2.
[pic 9]
Рисунок 2.3 – Скриншот результат работы программы решения задачи 3
Таким образом, задача 2 успешно решена.
Задача 3
Даны два действительных числа. Вывести первое число, если оно больше второго, и оба числа, если это не так.
РЕШЕНИЕ
Алгоритм решения этой задачи ветвящийся, поскольку для ответа на вопрос необходимо осуществить проверку условия. Условие имеет вид: Исходные данные: два числа – a, b (вещественного типа); результат – число а (в случае a>b) или a, b (в случае a ≤ b).
[pic 10]
Рисунок 3.1 – Блок-схема алгоритма решения задачи 3
Program Ex4; {название программы}
Uses Crt; {подключение библиотеки Crt}
Var a,b: Real; {раздел описания переменных}
Begin {начало программы}
Clrscr; {оператор очистки экрана}
Writeln (‘введите значение a’); {оператор вывода на экран фразы ‘введите значение a’}
...