NOEMBLEM/エンブレムが設定されていません。

メールの詳細(メール表示)

件名:

Re: casval

差出人: TDaさん <tda…>
送信日時 2002/03/16 14:30
ML.NO [beginers:0131]
本文:

casval様

> C言語の参考書は、いろいろありますが、どの程度理解しているか確認するのに問題集というの
> は意外と少ないような気がしています。

前回参考になりましたら幸いです。
理解度の確認という意味では先月号のC magagineのC習熟度検定試験(なんか
こんなタイトル)あたりはどうでしょう。書店で取り寄せればすぐに手には
いると思います。そういえば私はこのテストやってないや。恐ろしい結果に
なりそうで。

> そこで、C言語の問題集の皆さんのお勧めと、C言語のテキストの難易度順位について良ければご
> 意見いただければ と思います。 宜しくお願いします。

こんなサイトがあります。
http://tito.fc2web.com/2ch/tech/index.html
2ちゃんねるかよと思うかもしれませんがここはフィルタがかかっているの
で大丈夫でしょう。少なくとも間違い、勘違いだらけの悪書はないんじゃな
いかと思います。(訳に問題ありというのならばあるかも。K&R 2ndとか)

前回挙げた「プログラミング講義C++」(柴田望洋)ですが全くの初心者を対
象にしているので読みづらくて仕方ありません。C入門書を読み終えている
のならおすすめできません。

演習問題ですがcasvalさんはプロのプログラマになりたいのでしょ。それな
らば何か一本自分の作りたいものを書いてみたらどうでしょうか。たとえど
んな単純なものでも仕様を考えてそれをどのようにコードにしていくか考え
ることは大事なことです。

演習問題によくあるようなパターンは
『n個の中からr個選ぶ組み合わせの数を求める関数
int combiation(int n, int r) {/* この部分をコーディングせよ */ }を
書け』
こんな感じですがこのプロトタイプ宣言をみればコーディングの半分は終わ
ったようなものです。本当に効率的で汎用的なアルゴリズムはアルゴリズム
辞典のようなものを当たればいいと思います。学校の試験じゃないので覚え
ることはそんなに大事じゃありません。必要なときにそのアルゴリズムを取
り出せればいいのです。

//================================================================
話はちょっとずれますがプログラマに一番必要なスキル(どんな技術者でも
同じですが)って言うのはこの「必要なものを調べる」ことですよね。学生
の頃にunixを初めてさわったときにはfindとmanを覚えてそれだけで何時間
もドキュメント読んでました。それだけでgrepを覚えなかったのは不覚だっ
たと思うけど。結局基礎的なとこを眺めただけで大学からは離れたのでもう
unixのことは忘れちゃったのですが。
//==================================================================


どんなものを作ればいいのか想像もつかないと言うのであればたとえばK&R
の演習問題でもすべて回答できれば基礎は十分と言っていいのではないでし
ょうか。その要求仕様を満たした上で入力部分のインターフェイスに凝った
りエラー処理をきちんと行うというようなことを考えると意外とプログラム
は複雑になります。

combination関数を使うサンプルプログラムを考えてみてもコンピュータに
不慣れな人にも使えるようにしようとすれば整数以外を入力したときにもプ
ログラムがきちんと対応するようにとか繰り返し値を求めたいとか結果をフ
ァイルにとっておきたいとか。

/************************************************/
/****** TDa ************/
/****** mailto:tda@… ************/
/************************************************/

このエントリーをはてなブックマークに追加
添付:

このメールは下記のメールに対する返信です:

  • └[beginers:0130]  casval   ( さん)

更新順メールリスト