[問題] 如果有虛部就取絕對值,反之則不做動?

看板Mathematica作者 (阿泰斯)時間12年前 (2012/11/18 16:20), 編輯推噓2(205)
留言7則, 4人參與, 最新討論串1/1
要怎寫? 如果有虛部就取絕對值,沒虛部就不取絕對值 有辦法寫得出來嗎? 感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.37.42

11/18 16:50, , 1F
直接用Abs, Abs[{2, 2 + I, 2 - I}]
11/18 16:50, 1F

11/18 17:06, , 2F
失敗@@,2+I不就變成2+I了嗎?(不是原本的2)
11/18 17:06, 2F

11/18 17:07, , 3F
因為我打Abs[{1,1+I,1-I}],結果答案是{1,根號2,根號2}
11/18 17:07, 3F

11/18 17:16, , 4F
那就 If 吧 (If[Im[#]==0,#,Abs[#]]&)/@{1,-1,1+I,1-I}
11/18 17:16, 4F

11/18 17:38, , 5F
問一下,#、/@是甚麼意思?
11/18 17:38, 5F

11/18 21:49, , 6F
前者參看Function(#配&算符)用法,後者見Map用法
11/18 21:49, 6F

11/19 21:31, , 7F
感謝!
11/19 21:31, 7F
文章代碼(AID): #1Gg9ete7 (Mathematica)
文章代碼(AID): #1Gg9ete7 (Mathematica)