Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (x, y – действительные числа) и определяет принадлежность точки заштрихованной области, включая ее границы. Программист торопился и написал программу неправильно.
Вот она:
var x,y: real;
begin
readln(x,y);
if y<=3-x*x then
if y>=0 then
if y>=x+1 then
write('принадлежит')
else
write('не принадлежит')
end.
Последовательно выполните следующее:
1) приведите пример таких чисел x, y, при которых программа неверно решает поставленную задачу;
2) укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы; это можно сделать несколькими способами, поэтому можно указать любой способ доработки исходной программы.
Приложения:
![](https://st.uroker.com/files/ed9/ed9920e97f0b7077858180c73a4927d2.png)
![](https://st.uroker.com/files/a13/a13f1664d7f5ac57b70419775f10c621.png)
![](https://st.uroker.com/files/09e/09e934663dc961e9777fc21c66068e00.png)
Ответы
Ответ дал:
0
Пример (1;1)
var x,y: real;
begin
readln(x,y);
if y<=3-x*x then
if y>=0 and x>=0 or y>=x+1 and x < 0 then
write('принадлежит')
else
write('не принадлежит')
end.
var x,y: real;
begin
readln(x,y);
if y<=3-x*x then
if y>=0 and x>=0 or y>=x+1 and x < 0 then
write('принадлежит')
else
write('не принадлежит')
end.
Вас заинтересует
1 год назад
1 год назад
2 года назад
8 лет назад
8 лет назад
8 лет назад
8 лет назад