Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
FR_08_13 - Matematostenes i funkcje trygonometryczne |
Matematostenes jest dosyć ekscentrycznym mieszkańcem Programinii. Krótko mówiąc udaje Greka. Chodzi w todze, na nogach ma koturny, a jego twarz okrywa długa, siwa broda. Często chodzi po głównych rynkach niektórych miast Programinii (gdzieniegdzie zwanych main’ami) i zadaje przypadkowym przechodniom pytania z informatyki i matematyki. Tym razem tym szczęściarzem jesteś Ty i otrzymałeś takie pytanie:
„Azaliż czyliż istnieje sposobność, aby funkcje trygonometryczne dla kąta dowolnego bez użycia funkcji wbudowanych, lecz tylko trygonometrycznych wyznaczyć? Jeżeli twa odpowiedź twierdzącą jest, jak też byś to uczynił?”
Nieco zdziwiony i speszony tak archaiczną mową odpowiedziałeś, że tak istnieje taka możliwość, lecz musisz się nad tym zastanowić. Program z odpowiedzią na to nurtujące pytanie prześlesz Matematostenesowi listem, a on go oceni, akceptując, bądź wytykając błędy.
Wejście
W pierwszym wierszu wejścia znajduje się jedna liczba naturalna t (<=103) oznaczająca liczbę zestawów danych. Każdy zestaw składa się z jednej liczby całkowitej k (-1012<=k<=1012), która oznacza dany kąt (podany w stopniach), którego wartości funkcji trygonometrycznych (sinus, kosinus, tangens, kotangens) należy wyznaczyć. Uwaga oto lista fraz niedozwolonych: sin, cos, tan, cot, Sin, Cos, Tan, Cot, SIN, COS, TAN, COT.
Mała podpowiedź od autora: w C++ w słowie using jest zawarte słowo sin.
Wyjście
Na wyjściu należy podać wartości funkcji trygonometrycznych dla danego kąta w kolejności: sinus, cosinus, tangens, kotangens. Wartość funkcji należy zaokrąglić do dwóch miejsc po przecinku. Uwaga, jeśli wartość pewnego kąta dla danej funkcji nie istnieje należy wypisać nie istnieje (chodzi tu np. o tangens 90 stopni).
Przykład
Wejscie:1
45
Wyjście:0.71 0.71 1.00 1.00
Dodane przez: | melehean |
Data dodania: | 2017-11-24 |
Limit czasu wykonania programu: | 1s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | GAWK MAWK BF C-CLANG C NCSHARP CSHARP C++ 4.3.2 CPP CPP14 CPP14-CLANG C99 D FSHARP FORTH FORTRAN GO HASK JAVA JULIA LUA PAS-GPC PAS-FPC PERL PERL6 PHP PYTHON PYPY PYPY3 PYTHON3 R RUBY TEXT UNLAMBDA WHITESPACE |
ukryj komentarze
|
|||||
2017-12-02 22:06:43
No cóż, podpowiedź tkwi w tytule ;) |
|||||
2017-12-02 21:50:25
No to naprawdę niezły haczyk tam musi być. |
|||||
2017-12-02 21:49:40
Tak, ale sędzia jest ustawiony na ignorowanie białych znaków, więc nie powinno mieć to większego znaczenia |
|||||
2017-12-02 21:42:46
Czy poszczególne zestawy powinny być oddzielone "enterem"? |
|||||
2017-12-02 21:26:05
Tak to prawidłowe wyjście |
|||||
2017-12-02 20:51:07 Jaroslaw Konczak
Czy jeżeli któraś wartość nie istnieje to wypisujemy pozostałe wartości dla tego testu i nie istnieje pomiędzy nimi? Np: 1.00 0.00 nie istnieje 0.00 to prawidłowy out? |
|||||
2017-12-02 20:07:58
Oj przepraszam, nie istnieje należy wypisać bez cudzysłowu, jak najszybciej to poprawię |
|||||
2017-12-02 20:01:26
Czy "nie istnieje" należy wypisać w cudzysłowie ? |
|||||
2017-12-02 19:00:56
Zero należy wyświetlić jako 0.00 |
|||||
2017-12-02 18:49:38
Czy 0 należy wyświetlać jako 0, czy jako 0.00? |