Diberi dua titik A
dan B
, cari sudut dari garis AO
ke garis BO
tentang titik di O
mana titik O
asal ( (0,0)
). Selain itu, sudut mungkin positif atau negatif tergantung pada posisi titik (lihat contoh). Masukan akan berupa poin A
dan B
, dan dapat diberikan dalam bentuk apa pun yang mudah. Output akan menjadi sudut dalam derajat (tetapi positif jika AO
diputar berlawanan arah jarum jam tentang asal untuk mendapatkan BO
dan negatif jika diputar searah jarum jam). Jika sudutnya 180 derajat Anda dapat mengembalikan output negatif atau positif. Demikian pula, sudut dapat menjadi versi positif atau negatif dari sudut yang sama ( 90 deg
sama dengan -270 deg
). Contoh:
Input:
A(5,5) B(5,-5)
Output:-90
(AO
diputar-90
derajat untuk mendapatkanBO
).Input:
A(5,-5) B(5,5)
Output:90
(AO
diputar90
derajat untuk mendapatkanBO
).
Ini adalah kode-golf , jadi kode terpendek dalam byte menang!
sumber
(0,0)
?AO
danBO
biasanya akan disebut sudutAOB
.Jawaban:
Pyth, 11 byte
Demonstrasi
Masukan diberikan dalam format:
Jika diinginkan bahwa A lebih dulu, ini dapat diubah untuk 1 byte.
Penjelasan:
sumber
TI-BASIC, 13 byte
Untuk kalkulator TI-83 + / 84 + series.
Untuk menggunakan program ini, masukkan daftar
{x1,x2}
melalui variabel Ans, dan{y1,y2}
saat diminta.sumber
ΔList(
, masing-masing satu byte . Ini termasukR►Pθ(
.CJam, 14 byte
Ini adalah program lengkap yang membaca input sebagai
[[Ax Ay] [Bx By]]
dari STDIN.Cobalah online di penerjemah CJam .
Bagaimana itu bekerja
sumber
Minkolang 0,9 , 112 byte
Saya benar - benar ingin menerapkan fungsi trigonometri sebagai bawaan sekarang ... tapi ini menyenangkan! (Peringatan: ini menghasilkan perbedaan sudut positif, bukan perbedaan sudut yang ditandatangani. Mengingat keterbatasan saya, saya pikir itu dibenarkan.)
Coba di sini.
Penjelasan
Saya akan memposting penjelasan yang lebih lengkap jika ada yang menginginkannya, tetapi intinya adalah:
sumber
:D
Apakah itu tantangan Hello World yang Anda perhatikan komentarnya (FYI penerjemah yang saya buat untuk Simplex berjalan di "mode" yang berbeda: mode string dan mode komentar. Itu membuatnya sangat mudah untuk menguraikan dan memungkinkan Anda untuk mengabaikan karakter sinyal dari satu mode sementara yang lain.)Mathematica, 22 byte
Contoh:
sumber
{{0,1},{1,0}}
Javascript, 66 byte
demo
sumber
let f=
, dan itu masih dianggap valid sebagai fungsi anonim.Julia,
1825 byteIni mengasumsikan bahwa "segala bentuk yang mudah" sudah memungkinkan
A
danB
diberikan sebagai bilangan kompleks. Kemudian, bilangan aritmatika kompleks melakukan semua pengangkatan berat.Sunting: cuplikan yang dikonversi berfungsi. Versi 18 byte hanya berfungsi di REPL Julia.
sumber
Python 2.7, 73 Bytes
Uji:
sumber
*
di beberapa tempatOktaf, 43 byte
Input output:
sumber
CJam, 15 byte
Kupikir aku akan masuk ke game CJam juga. Cobalah online . Input dalam bentuk
bx by ax ay
. Sayangnya, ini adalah metode terpendek untuk melakukan tantangan ini tanpa menyalin jawaban Dennis.sumber
TeaScript, 28 byte
Saya benar-benar harus menerapkan fungsi trig ...
Coba input online ini
a.x a.y b.x b.y
Penjelasan
sumber
Ruby,
64, 58 bytePemakaian
sumber
JavaScript, 49 byte
Input diambil dalam bentuk:
[aY, aX], [bY, bX]
(perhatikan pembalikan x / y)sumber
Simplex v.0.7 , 13 byte
Saya senang saya menambahkan
mathrelations
: D Sayangnya, saya tidak dapat mengambil input yang tepat. Jadi, saya memasukkan setiap titik sebagai angka yang terpisah (Ax, Ay, Bx, By). (Saya menggunakan ini sebagai sumber daya.)Saya dapat menyimpan char jika saya dapat mengambil input sebagai (Ay, Ax, By, Bx):
sumber
C, 88 byte
Membutuhkan kompilasi dengan GCC untuk mengambil keuntungan dari
M_PI
didefinisikanmath.h
sebagai bagian dari konstanta matematika bawaan GCC . Cobalah online - karena ideone tidak menggunakan GCC (tampaknya), beberapa byte tambahan diperlukan untuk enough angka yang cukup agar akurat.sumber
45/atan(1)
alih-alih180/3.14159....
(dalam demo online).