Dalam matematika, segiempat siklik adalah salah satu yang semua simpulnya terletak pada lingkaran yang sama. Dengan kata lain, setiap simpul ada di lingkaran ketiga. Untuk informasi lebih lanjut, lihat artikel MathWorld .
Contohnya
Segiempat ini adalah siklik:
Trapesium ini bukan siklik.
(Gambar dari Wikipedia)
Objektif
Dengan koordinat empat simpul dalam urutan berlawanan yang membentuk segiempat cembung, tentukan apakah segiempatnya siklik.
Koordinat akan menjadi bilangan bulat (namun, perhatikan bahwa koordinat circumcenter dan circumradius tidak harus bilangan bulat). Seperti yang tersirat dalam paragraf sebelumnya, tidak ada tiga poin yang akan co-linear dan tidak ada dua coincident.
I / O
Anda dapat mengambil input menggunakan format apa pun yang masuk akal. Secara khusus, [[x1,x2,x3,x4],[y1,y2,y3,y4]]
, [[x1,y1],[x2,y2],[x3,y3],[x4,y4]]
dan bilangan kompleks semua baik-baik saja.
Keluaran menggunakan nilai konsisten yang berbeda untuk benar dan salah.
Uji kasus
Benar:
[0,0], [314,0], [314,1], [0,1]
[-5,5], [5,-5], [1337,42], [42,1337]
[104, -233], [109, -232], [112, -231], [123, -224]
Salah:
[0,0], [314,0], [314,100], [0,99]
[31,41],[59,26],[53,58],[0,314]
sumber
JavaScript (ES6)
Menguji sudut, 114 byte
Cobalah online!
Menghitung determinan, 130 byte
Yang ini setara dengan jawaban ke-2 MishaLavrov , dengan matriks yang diputar.
Cobalah online!
sumber
TI-Basic (83 series), 21 byte
Mengambil input sebagai daftar dari empat bilangan kompleks di
Ans
. Mengembalikan1
jika segiempat adalah siklik dan0
sebaliknya.ΔList(augment(Ans,Ans
e^(ΔList(ln(
Saya melakukan yang terbaik untuk memeriksa apakah kesalahan numerik adalah masalah, dan sepertinya tidak, tetapi jika ada orang yang memiliki kasus pengujian yang baik untuk itu, beri tahu saya.
sumber
JavaScript (ES6) (101 byte)
Mengambil input sebagai
[x1,y1,x2,y2,x3,y3,x4,y4]
, menghasilkan Boolean.Cobalah online!
sumber
Jelly , 11 byte
Cobalah online!
Menggunakan pendekatan determinan dari solusi Mathematica Misha Lavrov . Output 1 untuk true, 0 untuk false.
Bagaimana itu bekerja
Jelly , 12 byte
Cobalah online!
Menggunakan pendekatan rasio silang berbelit-belit dari solusi TI-Basic Misha Lavrov . Output 1 untuk true, 0 untuk false.
Bagaimana itu bekerja
Saya percaya keduanya golf ...
sumber
APL (Dyalog Classic) , 25 byte
Cobalah online!
Teorema Ptolemy, kredit: jawaban Кирилл Малышев
sumber