Консультация № 199336
16.10.2020, 13:52
0.00 руб.
1 5 1
Здравствуйте! Прошу помощи в следующем вопросе:

Помогите, пожалуйста. Очень срочно нужно.
Прикрепленные файлы:
5b2c7a0582106e3a613a0cc0c01b2ffa60eb35f4.jpg

Обсуждение

давно
Посетитель
399424
894
16.10.2020, 13:53
общий
Это фигура
Прикрепленные файлы:
4491e2dca6c983937be3820f7110ab2f.jpg
давно
Студент
400828
51
20.10.2020, 21:51
общий
Кажется здесь всё несложно:
разбиваем задачу на подзадачи:
1. определяем вхождение точки x, y в заштрихованную область;
2. считаем площадь заштрихованного.
Задача 1:
Считаем, что x, y, r уже введены.
Если точка в первой четверти, то считаем переменную a1 как
a1=(x>0) && (y>0)
Далее:
a1=a1 && (y>-x+r) && (x*x+y*y<r*r)
Если точка во второй четверти, то считаем переменную a2 как
a2=(x<0) && (y>0)
Далее:
a2=a2 && (y<x)
Если точка в третьей четверти, то считаем переменную a3 как
a3=(x<0) && (y<0)
Далее:
a3=a3 && (r*r>x*x+y*y)
Четвёртая не интересует.
Дальше с первой подзадачей просто:
printf("%s", (a1 || a2 || a3) ? "Yes" : "No");

Надеюсь, что с вычислением площадей Вы справитесь.
Писать код без указания "доп" сведений: от языка программирования до требований к интерфейсу не вижу смысла.
Об авторе:
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
давно
Посетитель
399424
894
20.10.2020, 22:08
общий
Адресаты:
Благодарю)
давно
Старший Модератор
17042
808
21.10.2020, 11:01
общий
Адресаты:
Оформите ответ?
Об авторе:
We have but faith: we cannot know;
For knowledge is of things we see;
And yet we trust it comes from thee,
A beam in darkness: let it grow.
-----
https://www.linkedin.com/in/andreynkuznetsov
https://www.researchgate.net/profile/Andrey_Kuznetsov11
http://www.researcherid.com/rid/K-8824-2014
давно
Студент
400828
51
21.10.2020, 23:59
общий
это ответ
Здравствуйте, svrvsvrv!
Это может быть что-то такое:
Код:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
const pi=3.14159;
int n,a1,a2,a3;
float x,y,r,s;
printf("what do you want?\nif point is in area input 0\nif shaded area square input 1\nany other number to exit\n");
// Выбор подзадачи:
scanf("%d",&n);
switch(n){
case 0:{
printf("input x, y, r");
scanf("%f%f%f",&x,&y,&r);
a1=(x>0) && (y>0);
a1=a1 && (y>-x+r) && (x*x+y*y<r*r);
a2=(x<0) && (y>0);
a2=a2 && (y<x);
a3=(x<0) && (y<0);
a3=a3 && (r*r>x*x+y*y);
printf("%s", (a1 || a2 || a3) ? "Yes" : "No");
break;
}
case 1:{
printf("input r");
scanf("%f",&r);
s=pi*r*r/4-r*r/2 + r*r/2 + r*r - pi*r*r/4;
printf("%f",s);
break;
}
return 0;
}
5
Об авторе:
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Форма ответа