Membiarkan zmenjadi bilangan kompleks. zadalah akar primitif kesatu jika untuk bilangan bulat positif tertentu n
dan untuk bilangan bulat positif k < n
.
Tantangan
Tulis sebuah program atau fungsi lengkap yang, diberi bilangan bulat positif nsebagai input, mengeluarkan semua akar keaslian primitif. Anda dapat menampilkannya dalam bentuk kutub ( e^θiatau e^iθ, argumen harus berupa desimal dengan setidaknya 2 tempat desimal) atau bentuk persegi panjang ( a + biatau bentuk yang serupa, bagian nyata dan imajiner juga harus desimal), dan mereka dapat ditampilkan dalam daftar bahasa Anda / Format array atau sebagai string dengan angka yang dipisahkan oleh spasi atau baris baru. Built-in yang menghitung n akar persatuan atau akar n primitif persatuan tidak diperbolehkan.
Ini adalah kode-golf , jadi kode terpendek dalam byte menang.
Input dan Output Sampel
6 -> e^1.05i, e^-1.05i # polar form
3 -> e^2.094395i, e^-2.094395i # any number of decimal places is OK as long as there are more than 2
8 -> 0.707 + 0.707i, 0.707 - 0.707i, -0.707 + 0.707i, -0.707 - 0.707i # rectangular form
1 -> 1 + 0i # this is OK
1 -> 1 # this is also OK
4 -> 0 + i, 0 - i # this is OK
4 -> i, -i # this is also OK