コードの例
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/10/12 09:36 UTC 版)
ルイ14世の大暗号(ロシニョールが作成): コードブックは「act=486、ion=102、…」のように音節単位で3桁の数に対応させる(600個程ある)。暗号文「486-102」を復号すると act-ion になる。19世紀末フランス軍の暗号解読者バズリが解読を発表した。 日露戦争で使われた暗号文:「アテヨ イカヌ ミユトノケイホウニセツシ、ノレツ ヲハイタダチニヨシスコレヲワケフ ウメルセントス、ホンジツテンキセイロウナレドモナミタカシ」。コードブックは「アテヨ=敵、イカヌ=艦隊、ノレツ=連合艦隊、…」のように秘匿したい単語をカナ3文字に対応(2文字目は単語の最初と同じ音にもなっている)させている。平文は「敵 艦隊見ユトノ警報ニ接シ、連合艦隊 は直チニ出動、コレヲ撃沈 滅セントス、本日天気晴朗ナレドモ波高シ」となる。 真珠湾攻撃で使われた暗号文:「ニイタカヤマノボレ1208」(=12/8に日米開戦、事前に決めておいたフレーズを合図とし、更に1文字ごとに五連数字に換えた)。なお、「ト」の連打(=全軍突撃せよ)、「トラ」の反復(=我、奇襲に成功せり)などもよく知られているが、これらは正確には電信(モールス符号)の聞き分け易い音を合図としたものである。日本海軍機が搭載していたのは無線電話機(音声通信)ではなく、無線電信機(モールス符号通信)であった(航空通信に無線電話が導入されるのは1950年代に入ってから)ため、交戦時に複雑な電文の送信・聴取は困難なことから、和文電信で聞き取りやすい符号の組み合わせとなった。 「ト」は(・・―・・)、「ラ」は(・・・)で、[ト][ト][ト]...=・・―・・ ・・―・・ ・・―・・...=全軍突撃せよ) [トラ][トラ][トラ]...=・・―・・ ・・・ ・・―・・ ・・・ ・・―・・ ・・・ ...=我、奇襲に成功せり) を合図としたものである。 ちなみに陸軍のマレー作戦の暗号は「ヒノデハヤマガタ」である。 単語を暗号書(コードブック)で対応する数字に変え、さらに乱数表から一定の法則で抜き出した数字を加える二部制の暗号もある。復号には、暗号作成時に使用したものと同一の乱数表と暗号書が必要。太平洋戦争における日本海軍がこうした二部制の暗号を使用していた。
※この「コードの例」の解説は、「暗号」の解説の一部です。
「コードの例」を含む「暗号」の記事については、「暗号」の概要を参照ください。
コードの例
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/08/03 16:20 UTC 版)
「CPL (プログラミング言語)」の記事における「コードの例」の解説
ピーター・ノーヴィグが記述したMAX関数: Max(Items, ValueFunction) = value of§ (Best, BestVal) = (NIL, -∞)while Items do §(Item, Val) = (Head(Items), ValueFunction(Head(Items)))if Val > BestVal then (Best, BestVal) := (Item, Val)Items := Rest(Items) §⃒result is Best §⃒ (開始シンボル"§"に対応した終了シンボル"§⃒"は縦線が含まれたものである。このシンボルはUnicodeでは"§⃒"となるが、これは§(U+00A7, SECTION SIGN) と ⃒ (U+20D2, 縦棒の重ね合わせ)であり、ブラウザ上では正しく表示されないものと思われる。)
※この「コードの例」の解説は、「CPL (プログラミング言語)」の解説の一部です。
「コードの例」を含む「CPL (プログラミング言語)」の記事については、「CPL (プログラミング言語)」の概要を参照ください。
コードの例
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/12/27 06:25 UTC 版)
1987年「Best One Liner」受賞、デビッド・コーン作。 main() { printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);} 説明:一見コンパイルが通らないように見えるが、上記コードは正常にコンパイルされ、実行すると「unix」と表示される。UNIX上でコンパイルした場合トークンunixが1としてマクロ定義(#define unix 1)されており、配列要素のアクセス方法で配列と添字が交換可能であることなどのテクニックを利用している。 下記の例は1988年の大会にエントリーされた、円周率を計算するプログラムである。 #define _ -F<00||--F-OO--;int F=00,OO=00;main(){F_OO();printf("%1.3f\n",4.*-F/OO/OO);}F_OO(){ _-_-_-_ _-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-__-_-_-_-_-_-_-_-_-_-_-_-_-_-_-__-_-_-_-_-_-_-_-_-_-_-_-_-_-_-__-_-_-_-_-_-_-_-_-_-_-_-_-_-_-__-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_ _-_-_-_} なお、上のプログラムはK&RのCでは動作するが、ANSI Cでは修正しないと動作しない。 次のものは1998年の大会で優勝した、フライトシミュレータのプログラムである。 #include
※この「コードの例」の解説は、「IOCCC」の解説の一部です。
「コードの例」を含む「IOCCC」の記事については、「IOCCC」の概要を参照ください。
コードの例
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/12/14 06:21 UTC 版)
「RPG (プログラム言語)」の記事における「コードの例」の解説
次のプログラムは入力として顧客番号を受け取って名前と住所を出力する。コメントの訳は次の通り。 「自由書式が許される環境もあるが、歴史的にRPGはコラムに従って記述する。第7コラムの星印(*)はコメント行を意味する。行の目的は第6コラムの文字で決まる。」 「'F'はファイルその他の入出力装置の仕様を示す。」 「'D'は変数定義である。」 「'C'は実行すべき文を示す。パラメタは plist 及び parm 命令で定義される。」 「'chain' コマンドは(検索用)キーのあるファイルのランダムアクセスを行う。」 「RPGはスイッチを利用する。その一つ'LR'<最終レコード>の意味で、プログラムの実行を停止する。」
※この「コードの例」の解説は、「RPG (プログラム言語)」の解説の一部です。
「コードの例」を含む「RPG (プログラム言語)」の記事については、「RPG (プログラム言語)」の概要を参照ください。
コードの例
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/23 01:45 UTC 版)
ケン・トンプソンによるUsers' Reference to Bより /* 以下の関数は負でない整数nをb進数の形で出力する(ただし2<=b<=10)。 このルーチンはASCIIキャラクタのコードの値が 0から9まで連続しているということを利用している。*/printn(n, b) { extrn putchar; auto a; /* Wikipedia による注釈: この auto キーワードは自動変数(関数スコープの変数) を宣言している。C++11 の型推論の auto とは別もの。 */ if (a = n / b) /* 代入文であり、比較演算子ではない*/ printn(a, b); /* 再帰 */ putchar(n % b + '0');} /* 次のプログラムはネイピア数の小数点以下の部分を4000桁まで計算し、 1行5文字のグループに分けて50文字を出力する。 この手法は以下を単純に拡張した物であり、 1/2! + 1/3! + ... = .111.... それぞれ2桁、3桁、4桁…に対応する。 */main() {extrn putchar, n, v;auto i, c, col, a;i = col = 0;while(i<n)v[i++] = 1;while(col<2*n) {a = n+1 ;c = i = 0;while (i<n) {c =+ v[i] *10;v[i++] = c%a;c =/ a--;}putchar(c+'0');if(!(++col%5))putchar(col%50?' ': '*n');}putchar('*n*n');}v[2000];n 2000;
※この「コードの例」の解説は、「B言語」の解説の一部です。
「コードの例」を含む「B言語」の記事については、「B言語」の概要を参照ください。
- コードの例のページへのリンク