コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
最近の更新
未作成ページ
おまかせ表示
ヘルプ
MonoBook
検索
検索
ログイン
個人用ツール
ログイン
ログアウトした編集者のページ
もっと詳しく
投稿記録
トーク
「
GHCi
」を編集中 (節単位)
ページ
議論
日本語
閲覧
編集
ソースを編集
履歴表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
編集
ソースを編集
履歴表示
全般
リンク元
関連ページの更新状況
特別ページ
ページ情報
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
==計算例== ===基本の四則計算=== 見たまんまである。 <pre>Prelude> 2*2+2/2 5.0</pre> ===累乗と剰余=== [[フェルマーの小定理]]の計算をしている。 <pre>Prelude> (12345^65536) `mod` 65537 1 Prelude> mod (77777^65536) 65537 1</pre> ===関数の定義=== 非負[[整数]]の[[階乗]]を計算する関数を定義し、それを利用して計算している。 <pre>Prelude> let fact n = if n<=1 then 1 else n*(fact (n-1)) Prelude> fact 5 120 Prelude> fact 13 6227020800</pre> ===一度の計算指示で複数の値に対する計算結果を表示する=== 0以上63以下の整数Nについて、2のN乗を計算している。 <pre>Prelude> map (\a -> (a,2^a)) [0..63] [(0,1),(1,2),(2,4),(3,8),(4,16),(5,32),(6,64),(7,128),(8,256),(9,512),(10,1024), (11,2048),(12,4096),(13,8192),(14,16384),(15,32768),(16,65536),(17,131072),(18,2 62144),(19,524288),(20,1048576),(21,2097152),(22,4194304),(23,8388608),(24,16777 216),(25,33554432),(26,67108864),(27,134217728),(28,268435456),(29,536870912),(3 0,1073741824),(31,2147483648),(32,4294967296),(33,8589934592),(34,17179869184),( 35,34359738368),(36,68719476736),(37,137438953472),(38,274877906944),(39,5497558 13888),(40,1099511627776),(41,2199023255552),(42,4398046511104),(43,879609302220 8),(44,17592186044416),(45,35184372088832),(46,70368744177664),(47,1407374883553 28),(48,281474976710656),(49,562949953421312),(50,1125899906842624),(51,22517998 13685248),(52,4503599627370496),(53,9007199254740992),(54,18014398509481984),(55 ,36028797018963968),(56,72057594037927936),(57,144115188075855872),(58,288230376 151711744),(59,576460752303423488),(60,1152921504606846976),(61,2305843009213693 952),(62,4611686018427387904),(63,9223372036854775808)]</pre> ===ファイルから関数を読み込む=== まず、以下の内容をcollatz.hsというファイルに保存する。 <pre>collatz n | n<=1 = 0 | (mod n 2)==0 = 1+(collatz (div n 2)) | otherwise = 1+(collatz (succ (n*3))) </pre> 次に、保存したcollatz.hsがある[[ディレクトリ]]が[[カレントディレクトリ]]になるようにGHCiを起動し、以下のように操作する。 <pre>Prelude> :l collatz.hs [1 of 1] Compiling Main ( collatz.hs, interpreted ) Ok, modules loaded: Main. *Main> collatz 2382487059571037193129 2284</pre> ===GHCiを終了する=== ghciを終了するには[[キーボード]]から「:q」と打ち込む。 <pre> Prelude> :q </pre>
編集内容の要約:
MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MonoBook:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の確認用の質問に回答してください (
詳細
):
1たす1は?(全角で入力してください)
キャンセル
編集の仕方
(新しいウィンドウで開きます)
このページは 1 個の隠しカテゴリに属しています:
カテゴリ:スタブ
本文の横幅制限を有効化/無効化