Определить, принадлежит ли точка фигуре - C (СИ) (75281)
Формулировка задачи:
ВОбщем нужно определить принадлежит ли точка этой фигуре. Координаты точки (х,у) а так же значения а,b вводятся с клавиатуры.Вот и фигура собственно
Решение задачи: «Определить, принадлежит ли точка фигуре»
textual
Листинг программы
#include <math.h>
#include <stdio.h>
#include <stdlib.h>/*for system("pause')*/
int main(){
float x,y,a,b;
float f1,f2,f3,f4;
/*
f1 это прямая из 2й четверти
f2 прямая из 3й четверти
f3 четвертькруг(полукруг) из 1й
f4 четвертькруг(полукруг) из 4й
*/
printf("enter plz x=");
scanf("%f",&x);
printf("y=");
scanf("%f",&y);
printf("a=");
scanf("%f",&a);
printf("b=");
scanf("%f",&b);
if(x>0){
f3=sqrt(b-x*x);
f4=-f3;
if(y>=f4&&y<=f3){
printf("point inside");
}else{
printf("point outside");
}
}else{
f1=-x*(b/a)+b;
f2=-f1;
if(y>=f2&&y<=f1){
printf("point inside");
}else{
printf("point outside");
}
}
system("pause");
return 0;
}
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы для работы с математикой, вводом/выводом и для использования функции pause
- Объявляем переменные типа float для хранения координат и параметров фигур
- Задаём имена и значения переменных, которые будут использоваться в последующем коде
- Выводим сообщение с просьбой ввести координаты точки
- Считываем значения координат с помощью функции scanf
- Проверяем знак значения переменной x
- В случае, если x больше нуля, вычисляем значения переменных f3 и f4, а затем проверяем, находится ли точка внутри полукруга с помощью условного оператора if
- Если точка находится внутри полукруга, выводим соответствующее сообщение
- Если точка находится снаружи полукруга, выводим соответствующее сообщение
- Если x меньше или равно нулю, вычисляем значения переменных f1 и f2, а затем проверяем, находится ли точка внутри полупрямой с помощью условного оператора if
- Если точка находится внутри полупрямой, выводим соответствующее сообщение
- Если точка находится снаружи полупрямой, выводим соответствующее сообщение
- В конце программы вызываем функцию pause для приостановки выполнения программы до нажатия клавиши
- Возвращаем 0, чтобы указать, что программа успешно завершилась