わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

情報教育

プログラミングの学習と学修

趣味でRubyしててもいいじゃないか - http://rubikitch.com/に移転しました経由です. 私が言いたいのは、「関数に分割して、関数を書く」能力のことだ。 PHP でいうのなら「ライブラリ」を作る能力だ。先程出した例でいうと、一口に歴史といっても、有力な…

演習初回

一昨日,これまでC復習学習案 - わさっきや問題作り - わさっきで書いた件の初回授業を実施しました. 大小いろいろトラブルもありましたが,一番興味深かったのは,関数呼び出しに絡んだエラーが,リンクエラーではなく「incompatible types in assignment…

問題作り

4月からまた新たな科目を担当することになり,その準備をしています. 学修支援科目という位置づけで,他学科の進め方を参考にしつつ,プログラミングの補習というかスキル向上に関して,学習効果の高くなる方法を模索している段階です. これまでの経験から…

二人羽織プログラミング

プログラミングにおけるコミュニケーション能力を向上させる方法を,考えてみました. その名も「二人羽織プログラミング」です. 共通ルール 「タイプする人」と「指示をする人」の2人からなります.それと別に「審判」を置くことにします.なお,うまく運…

再帰の問い方

今年のCプログラミングの試験問題は,ひどいものでした.授業をきちんと聞けば正解は分かる(正解が答えられるよう準備できる)けれども,語句について,2年以降の授業で使うのか定かでないものを問うていました. 典型的なのが,再帰の問題です.

C復習学習案

1年後期のCプログラミング講義を落とした人,または合格したけど勉強し直したい人に向けて,90分×14週で復習授業をするとしたら,どんな内容にすればいいか,ちょっと考えてみました.

レポート課題を振り返る

プログラミングの講義で,2回のレポート課題を出しています.出題意図など,学生に十分に説明できていないので,ここで整理することにします. 2つの課題に共通しているのは,こちらは紙に打ち出したソースファイルを用意し,学生にはそれを演習室または自宅…

再帰でカウントダウン,カウントアップ

プログラミングの準備運動 - trotrの日記 プログラミングの準備運動: メニュー案 - わさっき http://d.hatena.ne.jp/trotr/20080108/1199771570 こちらで挙げた課題を順にコードにされていて,嬉しいのですが,再帰メソッドでカウントダウン・カウントアップ…

pptファイルの作り込み方

ここのところ,自分の授業資料,学生の学会発表,研究グループのゼミ発表で,PowerPointファイル(pptファイル)を見たり,手入れしたりしています. 過去に,1年生に贈るプレゼンテーションのコツ(4) - わさっきというのを書いたのですが,そこに,次のことを…

あまりよくない問題のようだ

「ゆとり世代」がなじめない - わさっき にて,正答率の低い問題を二つ載せましたが,それぞれ,要補足の内容でした. まず, Xは,宣言文を実行するたびにオブジェクトが生成され,ブロックを終えると破棄される.Xに入るものは何か. static変数 auto変数 …

続・CUIスキル向上〜出力を遡りたいとき

Shift + PageUp / PageDown 端末でコマンドを実行して,その出力が1画面を超えるとき,マウスに手が伸びたりしていませんか? 多くの端末エミュレータで,Shiftを押しながら「Page Up」*1というキーを押すと,出力を遡って見ることができます.この操作を「バ…

続・CUIスキル向上〜エイリアス

キータイプ数を減らすために,コマンドの別名(エイリアス)を積極的に活用するのもいいでしょう. alias memo='cat > /dev/null' alias ymd="date +%Y%m%d" alias la='ls -aFl --color --show-control-chars' alias ..='cd ..' ~/.bashrcに書いておいて,新た…

続・CUIスキル向上

シェル*1の便利なキー操作を習得しましょう. 上矢印を使って,前に実行したコマンドは打ち直さないようにします. 長いファイル名は,先頭何文字かを打ったらTabで,補完できます.2度Tabを叩いて,補完ができなかったら,複数候補があるか,タイプミスをし…

続・正規表現

授業準備で本を読んでいて,気になる記述があったので,ちょっと紙と鉛筆を使って求め,Rubyで確認してみました.たぶん間違いないはず.

無限集合について知っておきたいこと

有限の情報の集合が無限集合になる - わさっきの続きです. 情報の学科に入って,大学1〜2年のうちに,無限集合の厄介さ,もしくは奥深さについて,いくつか知っておくといいことを並べてみます. 前のエントリでも書きましたが,無限集合Aについては,Aから…

テキストモードでファイルを開く

test.txtファイルからテキストを読み込むプログラムを以下に示す.何の不思議もない,ごく一般的なプログラムである. ▼fgets.c #include <stdio.h> int main(void) { FILE* fp ; char buff[256]; /* オープン */ if( (fp = fopen( "test.txt", "rt" )) == NULL ) ret</stdio.h>…

有限の情報の集合が無限集合になる

いきなりですが問題です. 任意の長さのビット列全体からなる集合は,無限集合であることを証明しなさい. ここでは0と1で構成される,長さ0以上有限長の並びを「ビット列」とし,すべてのビット列からなる集合を考えます.この集合をBと書くことにします. …

研究室は有限集合,研究課題は無限集合

いよいよ今日から,学科の3年生研究室配属イベントが始まります. どこに行きたいか迷っている学生に参考になるか,ならないかは分からないけど,エールをこめて. つつがなく4年生になれば,卒業研究をすることになります.課題を一つ設定して,1年間,取り…

「〜すればいいのでは?」の前に

アリスが「ボブと通信したい」と申し出たとき,鍵配布センターはセッション鍵というものをわざわざ新しく作り,それを暗号化してアリスに渡しました. どうして鍵配布センターは,「ボブの鍵」をアリスの鍵で暗号化してアリスに渡さなかったのでしょうか. (…

ディバッグの「ディ」

発端は ステート・マシンをもつ実際のプログラムでは,システムの設計やプログラムのディバッグが進むにつれ,状態値やイベント値の増減がよく発生する. (ここが変だよC言語 下, p.39) 上の引用の前後で,列挙型の効用を説いています.例を含めて,なるほど…

プログラミング能力底上げの手段を可能な限り挙げてみる

授業改善 プログラミングの時間を増やす 予習? 復習? 発展問題? そもそも今何時間やってるの? 時間と能力の関係は? どんな能力? どう測る? 問題をたくさん解く 問題を作る? これまでの授業の問題を,整理する? 問題集を使う? 正解をチェックする方法は? 授業…

++と--の呼び方

自分が見聞きしたものを一覧にしてみます. 「++」をインクリメント,「--」をデクリメント. 「++」をインクレメント,「--」をデクレメント.K&Rの日本語訳より. 「++」をプラスプラス,「--」をマイナスマイナス. 「++」をプラプラ.あまりにも有名な俗…

プログラミング能力底上げで,関係する人々

昨年度は,学科のプログラミング能力を上げるために,「何をするか?」から考え始めて実施しました. 学科学生が身につけるプログラミング能力の私案(1) - わさっき,学科学生が身につけるプログラミング能力について(2) - わさっきでは,「何をゴールにする…

Cの糖衣構文について

Cの糖衣構文(シンタックスシュガー)にどれだけあるか,調べてみました. 糖衣構文とその意義については,http://ja.wikipedia.org/wiki/%E7%B3%96%E8%A1%A3%E6%A7%8B%E6%96%87をご覧ください.「配列のアクセス」と「for文」が記載されているので,以下では…

学科学生が身につけるプログラミング能力について(2)

昨日の続きです. 今日は,卒業の時点で身につけてもらいたいプログラミング能力を,思い描いてみます.次の2点です. 卒業研究で作成したプログラムの目的(または用途),入出力,用いた技術を説明できる. 対象(データ)があるときに,適切な目的を自分で定…

計算機の利用およびプログラミングに関する20個ほどの基本語句

計算機の利用およびプログラミングに関する基本的な語句について,いつ質問されても適切な答えを言えるようにすること. 語句案です. ディレクトリ Linux テキストエディタ(エディタ) HTML Google 2の補数 アルゴリズム コンパイラ int ループ 文字列 ポイ…

学科学生が身につけるプログラミング能力の私案(1)

自分の学科の学生に,どんなプログラミング能力が身についてくれているといいかを,妄想してみました. もっと検討し,学科教員*1の了承を得てから,授業や研究室指導に活用していきたいと考えていますが,現時点では「個人の経験に基づく発想」に過ぎないこ…

デザイン能力について調査

この日記ではときどき「デザイン能力」や「エンジニアリングデザイン」という言葉を用いています. 2年前の今ごろに,JABEEの研修会に出席し,この考え方に強く感銘を受けましたI was so impressed by the notion.それ以来,自分の能力の範囲内でどのように…

デバッグコンテスト

今月の情報処理学会の会誌「情報処理」で,プログラミングコンテストが取り上げられていました. Short Coding ~職人達の技法~は,私が知る限り,オンラインジャッジについて触れた数少ない(もしかして初めて?)本です.処理系の特性を深く理解して,字数を減…

コードをきれいにする試み

自他のプログラミング能力,プログラミング指導能力を向上させるために,何ができるか考えながら,次の記述を見かけました. コードをきれいにではなく適切に書くことに価値を感じているのは大学だけではない。これは実社会でも起こることであり、残念ながら…