Menulis rumus APL tanpa tanda kurung

Saya seorang pemula APL, Cara mengkonversi,

https://i.stack.imgur.com/YtD2Z.png

tanpa menggunakan orang tua?


person practronix512    schedule 26.09.2019    source sumber
comment
Akan membantu jika Anda menentukan dialek APL mana yang Anda gunakan, mis. APL2, Dyalog APL, GNU APL, NARS2000, dll.   -  person Adám    schedule 26.09.2019
comment
@ practronix512 saya tidak yakin stackoverflow mendukung LaTeX. bisakah saya mengedit pertanyaan Anda dan mengunggah gambar selain rumusnya?   -  person ngn    schedule 26.09.2019
comment
tapi saya menggunakan instruksi tutorial mathjax. (meskipun membosankan dengan telepon.) bantuan pengeditan sangat dihargai.   -  person practronix512    schedule 26.09.2019
comment
@ practronix512 Stack Exchange telah mengaktifkan MathJax untuk situs tertentu, bukan untuk keseluruhan jaringan. Stack Overflow tidak mengaktifkan MathJax. Bagaimanapun, Anda membuat indentasi kode MathJax Anda sehingga menjadi blok kode.   -  person Adám    schedule 26.09.2019


Jawaban (2)


Jika saya menafsirkan TeX Anda dengan benar, Anda ingin tahu apakah mungkin untuk menghapus tanda kurung

      (1÷2)*.5
0.7071067812

Hal ini dapat dilakukan menggunakan operator perjalanan ⍨:

      .5*⍨1÷2
0.7071067812

Jika f merupakan fungsi diadik, maka selain menulis X f Y, Anda juga dapat menulis Y f⍨ X yang dapat meningkatkan keterbacaan dan membantu menghindari tanda kurung. Cobalah di sini.

person MBaas    schedule 26.09.2019
comment
jadi orang tua diperlukan dalam situasi seperti itu, jika kita tidak menggunakan operator yang tidak biasa itu. - person practronix512; 26.09.2019
comment
Katakanlah tanda kurung diperlukan jika Anda ingin tetap dapat dibaca. Jika Anda menerima sejumlah mesin terbang jika hanya tanda kurung yang dapat dihindari, maka ini mungkin juga berhasil (menurut saya ⊣ hanya tersedia di Dyalog APL): x*0.5⊣x←1÷2 - person MBaas; 26.09.2019
comment
Ya, selalu ada x*0.5+0×x←1÷2 :-) - person Adám; 26.09.2019
comment
@ngn Saya pikir OP menginginkan metode umum daripada jawaban spesifik. Rumus yang ada di postingan saat ini juga bisa sangat disederhanakan. - person Adám; 26.09.2019
comment
@Adam ya, r-.÷x y - person ngn; 26.09.2019
comment
terima kasih, saya pikir notasi dapat menulis rumus aljabar apa pun hanya dengan menggunakan fungsi aritmatika, tetapi terkadang diperlukan beberapa operasi sederhana. - person practronix512; 26.09.2019
comment
@ practronix512 Tidak, APL pada dasarnya adalah matematika yang lebih baik. Jika Anda tidak menginginkan tanda kurung, lihat pemrograman berorientasi tumpukan. - person Adám; 26.09.2019

Disini menggunakan tanda kurung () dan {} tetapi tidak pada rumus untuk hasil perhitungan, hanya pada fungsi untuk konstruksi fungsi {} dan untuk mendapatkan angka pada variabel di ().

  f←{(x y r)←⍵⋄∣-/r×÷x y}
  f 1 2 3
1.5
person RosLuP    schedule 02.07.2020