スキップしてメイン コンテンツに移動

Perl で 円周率 を計算する

円周率を計算するPerlプログラムを github で公開している人がいた。

https://gist.github.com/djsas/2083243

===ここから===
use strict;
use warnings;
use bigint;

my($t1,$t2);

my $n=2000;
my $a;
my $b;
my $i;

$t1=times;

$a = $b = 10 ** $n;
for($i = $n * 8 + 1; $i >= 3; $i -= 2) {
  $a = int(int($i / 2) * ($a + $b * 2) / $i);
}
$a -= $b;
print("3.$a\n");

$t2=times;

print "<".($t2-$t1).">";
===ここまで===



円周率の公式と計算法
http://www.kurims.kyoto-u.ac.jp/~kenkyubu/kokai-koza/H16-ooura.pdf

円周率を計算してみよう
http://w3e.kanazawa-it.ac.jp/e-scimath/contents/t16/textbook_t16_all.pdf

コメント

このブログの人気の投稿

Ubuntu で RAIDディスクをマウントする

謎のHDDが見つかった。 データを確認するためWindowsにつなぐもマウントされず。 これは extとかffsの辺りかなと思い、Linux(Ubuntu)に繋ぐ。 しかし、自動マウントされない。 取り敢えずマウントする。 # mount /dev/sdb1 /mnt/disk すると'linux_raid_member'とエラー表示された。 ということで、まずファイルシステムを確認。 # parted -l このコマンドでファイルシステムが表示される。 また、Gparted でも表示される。 そこでRAIDディスクを扱うためにmdadmパッケージをインストール。 # apt install mdadm ネットでは mountコマンドの -t オプションで明示的にファイルシステムを指定するとマウントできると書いてあったのでそれを試すとマウントできた。 # mount -t ext3 /dev/sdb1 /mnt/disk 内容を確認すると不要なデータだったのでデータを削除する。 # shred -v /deb/sdb この処理はとても時間がかかるので普段使わないコンピュータで処理をした。

自動ログイン on Lubuntu

Lubuntu 19.04 の 自動ログインを設定してみた。 グラフィカルログインを自動で行うようにしたいが、 ユーザー設定 の中に自動ログインの設定がない。 そこでコマンドラインから設定してみた。 まず、ログインをするときに使用しているディスプレイマネージャを確認する。 $ cat /etc/X11/default-display-manager /usr/bin/sddm sddm を使っているので、sddm の自動ログインを設定する。 OSは systemd で動いていると設定ファイルがないようなので作成する。 # sddm --example-config > /etc/sddm.conf.d/sddm.conf この設定ファイルに Autologin について書いてあるのでここにユーザ名を入力。 $ head /etc/sddm.conf.d/sddm.conf [Autologin] # Whether sddm should automatically log back into sessions when they exit Relogin=false # Name of session file for autologin session (if empty try last logged in) Session= # Username for autologin session User= ここの User= にユーザ名を書き込み保存後、再起動すると自動でログインされる。

ノートPC ( HP Pavilion TouchSmart 10 ) にXubuntuを入れた話

以前、次のような記事を書いた。 Na01mini に Ubuntu 19.04 をインストールした https://atsreport.blogspot.com/2019/06/na01mini-ubuntu-1904.html このときはハードウェアが32bitであった為32bitのUbuntuをインストールすることになった。 今回は次の64bitマシンをSSD化しXubuntuをインストールした。 スペック HP Pavilion TouchSmart 10-e003AU AMD A4-1200 APU (1.0GHz, 1MB L2キャッシュ) 2GB (2GB×1) (1066MHz,DDR3L SDRAM) オンボード AMD Radeon™ HD 8180 グラフィックス 10.1インチワイドHDブライトビュー・タッチディスプレイ (1366×768/最大1677万色) https://jp.ext.hp.com/lib/products/portables/personal/spec_pdf/pavilion_10e-000_touchSmart_dp.pdf もともとWindows8.1(64bit)であったのをWindows10Home(64bit)にアップグレードしてあったが、とても処理が重く使いみちがなかった。 処理が重い理由の1つがHDDだと思ったのでSSD120GBに交換した。 SSDはパソコン工房で2000円で買えた。厚さ7mmでないと入らない。 LITEON PH6-CE120 Pavilion TouchSmart 10-e003AU の分解については色んなページを参考にした。 ドライバは必須だが、スクレイパーが有るといい。無いと分解できなかったかも。 http://ayati.cocolog-nifty.com/blog/2014/06/pchp-pavilion-1.html https://wakeari.danman.jp/entry/paviion-ts-10-e021au-ssd http://h10032.www1.hp.com/ctg/Manual/c04019490.pdf 交換完了し、最初 FreeBSD12.1 をインストールした。 ところがタッチパネ...