2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

プログラミングのお題スレ Part17

195 :デフォルトの名無しさん:2020/04/17(金) 16:03:16 ID:FcD+/8tF.net
>>186 Perl5、PDL(Pythonで言うならnumpyとscipyを合わせたようなPerlモジュール)を使わせてもらいました

@t = ([[0,0], [1,2], [2,0], [0,1], [2,1]],
   [[0,0], [1,2], [2,0], [0,2], [2,2]],
   [[0,0], [0,1], [1,2], [2,1], [2,0]],
   [[0,0], [5,5], [0,5], [1,0], [1,6]]);
use PDL;
use PDL::Math;
for $ps (@t) {
 $ang = 0.0;
 for ([0,1,2], [1,2,3], [2,3,4], [3,4,0], [4,0,1]) {
  @p = map{pdl $$ps[$_]} @$_;
  $v1 = norm($p[0] - $p[1]);
  $v2 = norm($p[2] - $p[1]);
  $spro = sum($v1 * $v2);
  $ang += acos($spro);
 }
 $ang = abs($ang);
 $ans = ($ang > 3.14 and 3.15 < $ang) ? 'true' : 'false';
 print "$ans\n";
}

実行結果
~ $ perl 17_186_istar.pl
false
false
true
false

総レス数 1004
265 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★