<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>Latest topics posted by ココサブ</title><link>http://ja.doukaku.org/user/24/</link><description>Latest topics posted by ココサブ</description><language>ja</language><lastBuildDate>Sat, 03 Jan 2009 09:50:01 -0000</lastBuildDate><item><title>データの圧縮と展開</title><link>http://ja.doukaku.org/224/</link><description>&lt;p&gt;データを圧縮するcompress、展開するdecompressという関数やメソッドなどを書いてください。データはバイト列でもストリームでもそれ以外の形式でもOKです。&lt;/p&gt;
&lt;p&gt;圧縮形式は問いませんが、できるだけ一般的なフォーマット(zip,lzhなど)でお願いします。&lt;/p&gt;
&lt;p&gt;また、標準以外のライブラリを使う場合には出典の記載をお願いします。&lt;/p&gt;
&lt;p&gt;「○○でも実用的な圧縮/展開プログラムがかけるんだぞ!」というのを、ぜひ示してください。&lt;/p&gt;

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">mattsan</dc:creator><pubDate>Sat, 03 Jan 2009 09:50:01 -0000</pubDate><guid>http://ja.doukaku.org/224/</guid></item><item><title>麻雀ゲーム1</title><link>http://ja.doukaku.org/223/</link><description>&lt;p&gt;麻雀ゲームの部分的な作成がお題になります.
以下のメソッド/関数を組み込んで下さい.&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;n人のプレーヤでゲームをする機能; n = 2--4.&lt;/li&gt;
&lt;li&gt;牌をかき混ぜてから山を作成する機能.&lt;/li&gt;
&lt;li&gt;手牌を理牌する機能.&lt;/li&gt;
&lt;li&gt;山から牌を取る操作.&lt;/li&gt;
&lt;li&gt;手配を切る操作  (ツモ切りで構いません).&lt;/li&gt;
&lt;li&gt;河を保存する機能.&lt;/li&gt;
&lt;li&gt;3--5を繰り返す機能.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;ルールとしては,&lt;/p&gt;
&lt;ol class="loweralpha simple"&gt;
&lt;li&gt;配牌は親は14枚, 子は13枚.&lt;/li&gt;
&lt;li&gt;親から順に手牌を切る.&lt;/li&gt;
&lt;li&gt;自分の手番で始めにツモり, その後手牌を切る.&lt;/li&gt;
&lt;li&gt;手牌の数は最大14枚.&lt;/li&gt;
&lt;li&gt;山の牌が残り14枚になったら終了.&lt;/li&gt;
&lt;li&gt;牌全体としては, (3人プレーヤでも) 日本で通常用いられている34種類136枚を使用.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;と考えていただければ結構です.&lt;/p&gt;
&lt;p&gt;鳴き, あがり, 自風, 場風などは考慮していただかなくて結構です.&lt;/p&gt;

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">saws</dc:creator><pubDate>Sat, 27 Dec 2008 09:25:01 -0000</pubDate><guid>http://ja.doukaku.org/223/</guid></item><item><title>テキスト行の正規化</title><link>http://ja.doukaku.org/222/</link><description>&lt;pre class='compact'&gt;改行文字を複数個含むテキストデータを格納する文字列を
最大長の行を除く各行末に指定したパディング文字を適切な数だけ追加して、
すべての行が最大長の行と同じ長さに揃う文字列に変換する
手続あるいは関数を書いてください。

元の文字列の最後は改行です。
行の長さはその行に含まれる（行末の改行を除く）文字の数です。

変換前の文字列例
"○○○○\n○○○○○○○\n\n○○○○○\n"

上の文字列例をパディング文字'☆'を指定して変換した文字列
"○○○○☆☆☆\n○○○○○○○\n☆☆☆☆☆☆☆\n○○○○○☆☆\n"

必須ではありませんが、
テキストデータをトラバースする回数を減らす工夫をすると面白いかもしれません。
&lt;/pre&gt;
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nobsun</dc:creator><pubDate>Sat, 20 Dec 2008 08:25:01 -0000</pubDate><guid>http://ja.doukaku.org/222/</guid></item><item><title>道順を数える</title><link>http://ja.doukaku.org/221/</link><description>図.1のような。格子状の経路があるとします。&lt;br/&gt;&lt;br/&gt;(1)&amp;nbsp;&amp;nbsp;このときPからQまでいくのに何通りの経路があるか数えてください。ただし遠回りはせずかならずQに近づく方向に進む(右方向か下方向にだけ進む)とします。&lt;br/&gt;&lt;br/&gt;(2)&amp;nbsp;&amp;nbsp;(1)と条件は同じで、図.2のように経路の一部がない(通れない)場合に、PからQまでいくのに何通りの経路があるか数えてください。&lt;br/&gt;&lt;br/&gt;P-+-+-+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;P-+-+-+&lt;br/&gt;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&lt;br/&gt;+-+-+-+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;+-+-+-+&lt;br/&gt;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;|&amp;nbsp;&amp;nbsp;&amp;nbsp;|&amp;nbsp;|&lt;br/&gt;+-+-+-+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;+-+-+&amp;nbsp;+&lt;br/&gt;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&lt;br/&gt;+-+-+-+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;+-+&amp;nbsp;+-+&lt;br/&gt;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&amp;nbsp;|&lt;br/&gt;+-+-+-Q&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;+-+-+-Q&lt;br/&gt;&amp;nbsp;&amp;nbsp;図.1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;図.2&lt;br/&gt;&lt;br/&gt;経路の表現の仕方、記憶の仕方は自由とします。上記のようなキャラクタでの表現でもよいですし、最初からプログラムで扱いやすいデータとして持っていてもOKです。入力も外部からの入力でもよいですし、プログラム中にコーディングされていてもOKです。&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;※問題は、野﨑昭弘「離散数学『数え上げ理論』」(講談社&amp;nbsp;ブルーバックス)「第3章&amp;nbsp;道順を数える」から拝借させて頂きました。&lt;br/&gt;
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">mattsan</dc:creator><pubDate>Sat, 13 Dec 2008 03:40:01 -0000</pubDate><guid>http://ja.doukaku.org/221/</guid></item><item><title>数独の問題数を数え上げる</title><link>http://ja.doukaku.org/220/</link><description>&lt;pre class='compact'&gt;4×4のマスを2×2の4ブロックに区切り、いくつかのマスに1～4の数字を配置します。

以下、空白のマスすべてに数字を補い、縦、横、および各ブロックについて1～4の数字が
それぞれ一個ずつ含まれている状態にすることが可能で、かつその方法が一意であるもの、
つまり数独の問題として成立するもののみを考えます。

4 1 | 2           4 1 | 2 3
2   | 4 1         2 3 | 4 1
----+-----  ---&amp;gt;  ----+----
  2 | 3 4         1 2 | 3 4
3 4 | 1           3 4 | 1 2

このようなものの総数を「初期配置の数字の個数ごとに」カウントしてください。

余力のある人は、極小な配置に限定してカウントしてみてください。
ただし、極小な配置とは、どの数字を取り除いても数独の問題として
不成立になる配置を指すものとします。


まどろっこしい言い回しになってしまいましたが、
一言で言えば「数独の問題数を数え上げよ」という問題になります。

参考：http://ja.wikipedia.org/wiki/%E6%95%B0%E7%8B%AC&lt;/pre&gt;
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">ckbx</dc:creator><pubDate>Sat, 06 Dec 2008 02:05:01 -0000</pubDate><guid>http://ja.doukaku.org/220/</guid></item><item><title>行列式の計算</title><link>http://ja.doukaku.org/218/</link><description>&lt;p&gt;n×nの2次元配列を引数にとり、
これを行列とみなして行列式を返す
関数を作成してください。&lt;/p&gt;
&lt;p&gt;行列・線形代数のライブラリ等を
使用しないことが条件です。&lt;/p&gt;
&lt;p&gt;参考：http://ja.wikipedia.org/wiki/%E8%A1%8C%E5%88%97%E5%BC%8F&lt;/p&gt;

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">ckbx</dc:creator><pubDate>Thu, 27 Nov 2008 11:00:01 -0000</pubDate><guid>http://ja.doukaku.org/218/</guid></item><item><title>島の数をカウントする</title><link>http://ja.doukaku.org/219/</link><description>&lt;pre class='compact'&gt;m×nの長方形のマス目のうちいくつかを黒く塗りつぶします。
このとき、白の島、黒の島がそれぞれいくつあるかをカウントしてください。

ただし、2つのマスは、同色マスの上下左右の移動で移れるとき、
同じ島にあると定義します。

例：
□■■□
□□■□
□■□□
□■■□
白の島は2つ
黒の島は2つ

例：
□□□□
■□■□
□■□□
□□□□
白の島は1つ
黒の島は3つ&lt;/pre&gt;
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">ckbx</dc:creator><pubDate>Thu, 20 Nov 2008 05:10:01 -0000</pubDate><guid>http://ja.doukaku.org/219/</guid></item><item><title>スロットマシン</title><link>http://ja.doukaku.org/217/</link><description>&lt;p&gt;回転アニメーション付きのスロットマシンを作ってください。
回転アニメーションはちゃんと作ってください。&lt;/p&gt;

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">bast123</dc:creator><pubDate>Fri, 14 Nov 2008 19:46:07 -0000</pubDate><guid>http://ja.doukaku.org/217/</guid></item><item><title>inline/embeded bytecode assembly</title><link>http://ja.doukaku.org/216/</link><description>&lt;p&gt;Duff's deviceをinline bytecode assemblyを使って実装してください。C言語ではよくあるinline asmのほかの言語バージョンといったところです。copyのsrcとdstは呼び出し側から渡すようにしてください。（要はbytecode側で閉じていてはならない)&lt;/p&gt;
&lt;p&gt;Duff's deviceとは、
&lt;a class="reference" href="http://ja.wikipedia.org/wiki/Duff%27s_device"&gt;http://ja.wikipedia.org/wiki/Duff%27s_device&lt;/a&gt; に説明がありますが、ループ展開したコピーのコードです。もちろんbytecodeである時点で速度の話をするのはナンセンスです。&lt;/p&gt;
&lt;p&gt;bytecodeで速くするとかいう話よりも、ある言語で書かれたcodeの中にその言語で使用されているbytecodeが埋め込めるかどうか、どのようにできるのかが、このお題の意図です。面白い使い道があるならsiteしていただけると幸いです。&lt;/p&gt;
&lt;p&gt;また、1言語につき1種のbytecodeとは限りません。たとえば、PythonならCPythonのbytecode, JythonのJavaVMのbytecode, IronPythonのCIL/CLRなどがあります。
もちろん特定アーキテクチャのasmを呼んでもよいです。x86を書くことができるpyasmなんてものもあるらしいです。
&lt;a class="reference" href="http://members.verizon.net/olsongt/usersGuide.pdf"&gt;http://members.verizon.net/olsongt/usersGuide.pdf&lt;/a&gt;&lt;/p&gt;

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nori</dc:creator><pubDate>Fri, 14 Nov 2008 11:45:02 -0000</pubDate><guid>http://ja.doukaku.org/216/</guid></item><item><title>疑似並行処理</title><link>http://ja.doukaku.org/215/</link><description>&lt;p&gt;数値（たとえば1から10）と、アルファベット（たとえばAからJまで）を順に出力する別々のループ処理を並行に実行させ、共通の出力先に出力する極力シンプルなコードを書いてください。&lt;/p&gt;
&lt;p&gt;念のため、実行後、出力先に数値とアルファベットが混ざって出力されている（たとえば、数値がすべて出力されてからアルファベットが続く…というふうになっていない）ことを確認してください。混ざってさえいれば、それぞれ１文字ずつ交互である必要はありませんし、もちろん交互でも構いません。&lt;/p&gt;
&lt;p&gt;出力先や出力方法は自由です。標準出力、テキストファイル、コンテナオブジェクト（配列、リスト、コレクション）など使いやすいもので構いません。&lt;/p&gt;
&lt;p&gt;例として Squeak Smalltalk でのコードと結果を示します。シンプルなコードなので Smalltalk に馴染みがない人も、おおよその内容は掴めると思います。&lt;/p&gt;

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">sumim</dc:creator><pubDate>Thu, 06 Nov 2008 21:00:03 -0000</pubDate><guid>http://ja.doukaku.org/215/</guid></item><item><title>'('と')'の対応</title><link>http://ja.doukaku.org/214/</link><description>
&lt;p&gt;入力の'('と')'の対応をとってください。
&lt;/p&gt;
&lt;p&gt;ただし、コード中に'('と')'を含まないでください。
&lt;/p&gt;
&lt;p&gt;漢字の九九にinspireされました。
&lt;/p&gt;



</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nori</dc:creator><pubDate>Sun, 02 Nov 2008 15:15:01 -0000</pubDate><guid>http://ja.doukaku.org/214/</guid></item><item><title>世界時計</title><link>http://ja.doukaku.org/213/</link><description>プログラムを実行した端末のロケールと、グリニッジ標準時と、ロサンゼルスの現在時刻をそれぞれ表示してください。
時刻の表示はリアルタイムでなく、一回限りで構いません。
時刻のフォーマットは自由とします。
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">sawat</dc:creator><pubDate>Wed, 29 Oct 2008 15:05:01 -0000</pubDate><guid>http://ja.doukaku.org/213/</guid></item><item><title>漢数字で九九の表</title><link>http://ja.doukaku.org/212/</link><description>漢数字で九九の表を作ってください。&lt;br/&gt;ただし以下の条件をつけます。&lt;br/&gt;&lt;br/&gt;条件&lt;br/&gt;一．アラビア数字（0～9）禁止。&lt;br/&gt;　　プログラムにも出力結果にもアラビア数字を含んではいけない。（全角・半角とも）&lt;br/&gt;二．結果の数字は、「七」とか「一○」(=10)とか「六四」(=64)のような形式とする。&lt;br/&gt;三．九九の結果をそのままプログラム中に書き込んではいけない。&lt;br/&gt;&lt;br/&gt;
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">syat</dc:creator><pubDate>Thu, 23 Oct 2008 21:35:02 -0000</pubDate><guid>http://ja.doukaku.org/212/</guid></item><item><title>デバッグ用出力</title><link>http://ja.doukaku.org/211/</link><description>&lt;pre class='compact'&gt;まいど、raynstardです。
今や、時代遅れかもしれませんが、
開発中にデバッグ目的で、その時々の状況を
出力することはよくあると思います。

デバッグ目的用の出力方法を教えてください。
また、もしあれば、投稿した方法で
デバッグ出力をすることの利点もあるとうれしいです。

下記のコードは僕がC言語でよくやる方法です。
普段はヘッダファイルとMakefileで制御しています。
ヘッダファイルだけで実現できることと、コンパイル単位に
出力量を制御できるのが気に入っています。

// gcc -Wall -std=c99 -DDEBUG_OUTPUT_LEVEL=1  debug.c -o debug_normal
// gcc -Wall -std=c99 -DDEBUG_OUTPUT_LEVEL=2  debug.c -o debug_detail
// gcc -Wall -std=c99 -DDEBUG_OUTPUT_LEVEL=3  debug.c -o debug_trace
// gcc -Wall -std=c99 -DDEBUG_OUTPUT_LEVEL=3  -DDEBUG_PRINT_TRACEONLY debug.c -o debug_traceonly
// gcc -Wall -std=c99 -DDEBUG_PRINT_TRACEONLY debug.c -o debug_traceonly

&lt;/pre&gt;
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">raynstard</dc:creator><pubDate>Wed, 22 Oct 2008 20:36:11 -0000</pubDate><guid>http://ja.doukaku.org/211/</guid></item><item><title>π</title><link>http://ja.doukaku.org/210/</link><description>&lt;p&gt;円周率を計算してください。&lt;/p&gt;
&lt;p&gt;積分を計算するも、素朴な方法も、速さを目指すも、LLで計算する意味を問うもあるでしょう。&lt;/p&gt;
&lt;p&gt;&lt;a class="reference" href="http://ja.wikipedia.org/wiki/%E5%86%86%E5%91%A8%E7%8E%87"&gt;http://ja.wikipedia.org/wiki/%E5%86%86%E5%91%A8%E7%8E%87&lt;/a&gt;&lt;/p&gt;

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">nori</dc:creator><pubDate>Fri, 10 Oct 2008 12:00:01 -0000</pubDate><guid>http://ja.doukaku.org/210/</guid></item><item><title>タブ区切りデータの処理</title><link>http://ja.doukaku.org/209/</link><description>&lt;p&gt;タブ区切りのデータを読み込んで操作をし書き出す方法を教えてください。
読み込み・書き出しの方法は任意とします。&lt;/p&gt;
&lt;p&gt;与えられるデータは:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;レコードの区切りは改行、カラムの区切りはタブです。&lt;/li&gt;
&lt;li&gt;最初のレコードはヘッダで、カラムの名前が書いてあります。&lt;/li&gt;
&lt;li&gt;それ以降はデータで、第1,4カラムは整数値、第2,3カラムは文字列値です。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;この入力データに対して以下の操作をしたものを書き出してください:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;第1カラムの値でデータを昇順にソートする。&lt;/li&gt;
&lt;li&gt;第2カラムと第3カラムをヘッダを含めて入れ替える。&lt;/li&gt;
&lt;li&gt;第4カラムの値にそれぞれ1を加える。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;入力の例:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
ID      Surname Forename        Age
1       Sato    Hanako  17
0       Suzuki  Taro    18
...
&lt;/pre&gt;
&lt;p&gt;出力の例:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
ID      Forename        Surname Age
0       Taro    Suzuki  19
1       Hanako  Sato    18
...
&lt;/pre&gt;

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">ika</dc:creator><pubDate>Thu, 02 Oct 2008 22:05:01 -0000</pubDate><guid>http://ja.doukaku.org/209/</guid></item><item><title>数値リストの圧縮</title><link>http://ja.doukaku.org/208/</link><description>&lt;div class="section"&gt;
&lt;p&gt;整列済みの number のリストがある。&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;[1, 3, 4, 5, 6, 12, 13, 15, 20, 25, 26, 27]&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;このようなリストで数が3つ以上連続している部分を[1, 2, 3] -&amp;gt; [1, 3] のように両端のみを書くような記法を導入する。&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;ただし2個とびや3個とびなどn個とびの場合、[1, 3, 5, 7] -&amp;gt; [1, 7, 2]のように[start, stop, step]のような並びにする。&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;最初の例のリストであれば以下のようになる。&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;[1 [3, 6] 12, 13, [15, 25, 5], 26, 27]&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;このようなリストに変換をするコードを書いてください。&lt;/p&gt;
&lt;/div&gt;
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">morchin</dc:creator><pubDate>Sat, 27 Sep 2008 15:36:57 -0000</pubDate><guid>http://ja.doukaku.org/208/</guid></item><item><title>LL Golf Hole 9 - トラックバックを打つ</title><link>http://ja.doukaku.org/207/</link><description>
&lt;p&gt;&lt;a href="http://ll.jus.or.jp/2008/blog/archives/38"&gt;LL Golf Hole 9のリリースをアナウンスしているエントリ&lt;/a&gt;にトラックバックを打ってください(&lt;a href="http://ll.jus.or.jp/2008/blog/archives/38/trackback"&gt;トラックバックURL&lt;/a&gt;)。マシンガンのようには打たないでください。ただし、このエントリにはスパムフィルタが搭載されているため、寄せることはできてもカップインできないかもしれません。その場合は&lt;a href="http://ja.doukaku.org/user/148/"&gt;takano32&lt;/a&gt;が用意させていただきました&lt;a href="http://d.hatena.ne.jp/takano32/20080905"&gt;打ちっ放し場&lt;/a&gt;にてガンガン試し打ちください(&lt;a href="http://d.hatena.ne.jp/takano32/20080905"&gt;トラックバックURL&lt;/a&gt;)。
&lt;/p&gt;
&lt;p&gt;余力のあるものは感想を&lt;a href="http://ll.jus.or.jp/2008/"&gt;公式ブログ&lt;/a&gt;の&lt;a href="http://ll.jus.or.jp/2008/blog/archives/35"&gt;感想エントリ&lt;/a&gt;にトラックバックくしてください。
   余力がなくても感想をトラックバックしてくれるとスタッフがよろこびます。
&lt;/p&gt;



</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">takano32</dc:creator><pubDate>Fri, 05 Sep 2008 15:52:47 -0000</pubDate><guid>http://ja.doukaku.org/207/</guid></item><item><title>2^i * 3^j * 5^k なる整数</title><link>http://ja.doukaku.org/206/</link><description>&lt;p&gt;2^i * 3^j * 5^k の形で表される整数を小さい方から順に 100 個列挙するプログラムを書いてください。 i, j, k は 0 以上の整数です。アルゴリズムのオーダーについても考えてみてください。&lt;/p&gt;
&lt;p&gt;例えば最初の 10 個は次のようになります:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
 1 = 2^0 * 3^0 * 5^0
 2 = 2^1 * 3^0 * 5^0
 3 = 2^0 * 3^1 * 5^0
 4 = 2^2 * 3^0 * 5^0
 5 = 2^0 * 3^0 * 5^1
 6 = 2^1 * 3^1 * 5^0
 8 = 2^3 * 3^0 * 5^0
 9 = 2^0 * 3^2 * 5^0
10 = 2^1 * 3^0 * 5^1
12 = 2^2 * 3^1 * 5^0
&lt;/pre&gt;
&lt;p&gt;※解答では i, j, k の各値を示す必要はありません。&lt;/p&gt;

</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">leque</dc:creator><pubDate>Wed, 17 Sep 2008 03:25:01 -0000</pubDate><guid>http://ja.doukaku.org/206/</guid></item><item><title>起動オプションの解析</title><link>http://ja.doukaku.org/205/</link><description>&lt;pre class='compact'&gt;いわゆる、コマンドライン引数の取得(http://ja.doukaku.org/118/)からの派生です。
やっぱ、自分のコマンドってオプションつけたいですよね(笑
タグに「クックブック」なんてつけてみました
長文なのはご容赦ください^^;;
-----
次の起動インタフェースを持つコマンドを作成してください。

書式：cmdopt -o [-q] -d{0|1|2} 文字列 [文字列 ...]

書式を説明すると
- オプション「o」
  必須オプションです。指定されていない場合、異常終了してください。
- オプション「q」
  選択オプションです。
  省略されていても問題有りません。
- オプション「d」
  引数付きオプションです。
  「0」「1」「2」のいずかが続いて指定されます。
- 文字列
  パラメータです。
  1つ以上であればいくつでも指定できます。
  指定されていなかった場合、異常終了してください。

オプションの開始が「-」になっていますが
「+」や「/」でもかまいません。
余力があればロングオプションに対応してもよいです。

起動例：(すべて許容されるのが望ましいです)
1. cmdopt -o AAA
2. cmdopt -o AAA BBB CCC
3. cmdopt -oq AAA
4. cmdopt -o  -q AAA
5. cmdopt -o -s1 AAA
6. cmdopt -o -s 1 AAA
7. cmdopt -q -s2 -o AAA

出力例：
[オプション情報]
o(output)： ON|OFF
q(quote)： ON|OFF
d(debug)： 0|1|2 

[パラメータ情報]
指定数： N
1： 文字列1
2： 文字列2
...
N： 文字列N
&lt;/pre&gt;
</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">raynstard</dc:creator><pubDate>Tue, 09 Sep 2008 12:05:01 -0000</pubDate><guid>http://ja.doukaku.org/205/</guid></item></channel></rss>