Форум программистов, компьютерный форум CyberForum.ru

Фонарики - C++

Восстановить пароль Регистрация
 
Farruh Turgunov
0 / 0 / 0
Регистрация: 10.03.2013
Сообщений: 5
17.03.2013, 19:36     Фонарики #1
«Одна голова хорошо, а две лучше. Одна лампочка хорошо, а две лучше!» - подумал Миша, и решил собрать фонарик с двумя лампочками. Теперь он хочет узнать, насколько фонарик с двумя лампочками лучше, чем фонарик с одной. Для этого Миша посветил фонариком на стену, и каждая из лампочек осветила на ней круг.

Эффективность фонарика Миша хочет оценить через площадь освещенной части стены. Миша догадался измерить координаты центров освещенных кругов и их радиусы (которые оказались одинаковыми). Причем, площадь, освещаемая фонариком с одной лампочкой известна, т.к. описана в документации, прилагаемой к фонарику. Но что делать дальше он не знает. Напишите программу, которая поможет Мише.

Входные данные

В первых двух строчках входного файла INPUT.TXT содержатся координаты (x1,y1) и (x2,y2) - центры кругов от лампочек собранного Мишей фонарика. В третьей строке задан радиус r описанных выше кругов, а четвертая строка содержит площадь освещения s фонариком из одной лампочки. Все числа целые и удовлетворяют следующим ограничениям: 1 ≤ x1,y1,x2,y2,r ≤ 100, 1 ≤ s ≤ 105. Так же заметим, что площади, освещаемые разными фонариками, отличаются друг от друга более чем на 10-3.

Выходные данные

В выходной файл OUTPUT.TXT выведите «YES», если Мишин фонарик лучше старого (т.е. освещает большую площадь) и «NO» в противном случае.

Примеры

№1 INPUT.TXT
1 2
3 4
2
22
OUTPUT.TXT
YES

№2 INPUT.TXT
1 1
100 100
1
7
OUTPUT.TXT
NO

Добавлено через 2 часа 22 минуты
my code don't accepted ---> 10 - test . Can you help me , please!!!

this is my code

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# include <iostream>
# include <string>
# include <iomanip>
# include <algorithm>
# include <vector>
# include <math.h>
# include <cmath>
# include <map>
# include <queue>
# include <stack>
# include <stdio.h>
#define PI 3.141592653589793
using namespace std;
//ifstream cin("input.txt");
//ofstream cout("output.txt");
int main()
{
long double x1,x2,y1,y2,r1,r2,r,Area,d,area,getter,area2,alpha,alpha2,p1,p2,p3;
cin>>x1>>y1>>x2>>y2>>r2>>Area;
 
d=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
r=r2+r2;
 
area=PI*r2*r2*2;
 
if(d==0){
      getter=r2*r2*PI;
       }
    else{
             alpha=(acos(d/(2*r2))*180/PI)*2;
             
             double inarea=(PI*r2*r2*alpha)/360-(r2*r2*sin(alpha*PI/180))/2;
             getter=inarea*2;     
              
          }
          
if(area-getter>=Area)
          cout<<"YES";
          else cout<<"NO";
system("pause");
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2013, 19:36     Фонарики
Посмотрите здесь:

Фонарики Pascal

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
18.03.2013, 00:40     Фонарики #2
см комментарии:

Цитата Сообщение от Farruh Turgunov Посмотреть сообщение
C++
1
2
if(area-getter>=Area)
 cout<<"YES";// по условию YES выводится когда Мишин фонарик освещает большую площадь, а у Вас будет выводится и когда площади равные
Yandex
Объявления
18.03.2013, 00:40     Фонарики
Ответ Создать тему
Опции темы

Текущее время: 13:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru