ホーム » 2010 (ページ 7)
年別アーカイブ: 2010
SQLiteで相関副問い合わせ動かない?
先週より引き続きの演習にて、 SQLを実際に使ってもらう課題。 テーマとしては、副問い合わせを含むSQLも試すこと…としていた。 しかし学生さんから、教科書記載の「相関副問い合わせ」が動かないとの問い合わせがあった。
実際に、実行してみるけど、以下のように表示され動かない。うーむ。 SQLiteは、簡易型データベースだし、完全に実装されていないのかな…
((教科書記載の相関副問い合わせの例)) select * from G where 'S4' in (select SG.業者番号 from SG where SG.商品番号=G.商品番号) ; ((SQLiteで実行した時のメッセージ)) Warning: sqlite_query() [function.sqlite-query]: no such column: G.商品番号 in ...
エラーメッセージを見るからには、主問い合わせのテーブルGが、 副問い合わせの中に含まれているだけで、no such column と出ているようだし、 相関副問い合わせ自体をサポートしていないような….
インターンシップ報告会評価結果
先日行われた、インターンシップ報告会の評価シートの結果の集計を行った。
教員評価 | 学生評価 | ||
---|---|---|---|
1位 | 久世さん | 1位 | 飯田君 |
2位 | 片岡君 | 2位 | 久世さん |
3位 | 原君 | 3位 | 青山君 |
以上の優秀発表者には、図書券を送らせて頂きます。
OSの基本機能と役割
先週のインタプリタとコンパイラの話の続き。 特殊な事例として、Javaにおけるバイトコードインタプリタ方式を説明。 Javaでは、この方式によりあらかじめJavaソースをコンパイルした、OS,CPUに依存しない バイトコードを、仮想マシン(VM)でインタプリタ方式で実行する。これにより、 機械語に近いバイトコードであるため、極端な速度低下をすることなく実行できる。
機械語の実行の話としては、コンパイルの流れとして、コンパイラにより中間コードが生成され、 次にリンカ(リンケージエディタ)により、ライブラリと組み合わされて実行プログラムが生成されることを説明する。また、ライブラリが、実行プログラム内に組み込まれる(静的リンク方式)と、マルチタスクOSでは、 同じ機械語コードがメモリに複数存在しメモリのムダが発生するとともに、 ライブラリに間違いがあった場合の修正が手間となる。 このため、最近では動的リンク方式(Dynamic Link Library)がとられ、 OSがライブラリのコードを必要に応じて読み込む方式を説明。
OSの基本機能と役割
OSの機能として、カーネルと呼ばれる制御プログラム、開発環境としてのコンパイラ・リンカ・デバッガの説明、ユーティリティプログラムとしてのコマンドラインインタプリタ・GUI・エディタなどを紹介。
OSの導入により、プログラマは資源の使い方の共通化により プログラム作成が容易になることを説明する。 また、プログラムの説明として、処理単位プロセスを解説し、 サービス視点のジョブや、プロセス内の並列化のスレッドなどを紹介する。
クマ!クマ!緊急連絡システム
今年も、猛暑の影響なのか、クマやイノシシ出没情報が多いみたい。 学校にも鯖江市より以下のような注意喚起の連絡があった。
10月23日(土)午後11時30分ごろ 鯖江市別司町の光常寺の境内で、クマ一頭を目撃
昨日は、ちょうど学校の作業停電があり、緊急連絡システムを含むネットワークが 普通不通だった。でも、越前市の方から自宅に「使えないんですけど…」の連絡が入る。 クマの出没の緊急連絡を予定していたとのことであった。 ということで、メールトラヒックも2週ほど前から送信数も増えている。
# 越前市担当の方、作業停電の連絡忘れてすみませんでした…

2010年10月24日(第187回)
放送時間の関係で収録でお送りしました!
- 高専の推薦入試について、体験談
- 数学の部屋 第53回 MMM研究会の高専祭の活動報告 長水先生
math101024.mp3
次年度のプロコンに向けて
先日のプログラムコンテストを終え、 ITフォーラム会場にて次年度のプロコンに向けたアイデアを考えてみた。
- ハロもどき
- 今年のプロコンで興味のあったネコの作品では、レーザーポインタをリモート操作して ネコをあそばせるシステムがあった。その動くバージョンで、 Arduino+XBee制御の車体でネコをあそばせるものを作れないかな… Arduino Nanoとかを使って、ガンダムのハロ的な丸いボディでじゃれつかれても 復帰できるような車体が作れたらいいなぁ…
- LEGO-NXTでロボカップ
- 以前、高専プロコンの作品として、赤外線リモコンで動くデジQを使った、 ロボカップもどきを応募したことがあったが、車体をMindStorms NXTにして、 画像処理部には ARToolkit を使い、NXT車体上にARタグを置けば、 画像処理も既存技術で、車体コントロールもBluetoothで最大7台コントロールできるはず。
- AR+どうぶつ将棋
- ARToolkitで、動きのある駒で将棋ができたら面白いと思ったが、 1画面内に大量のARタグはつらいので、単純なルールのどうぶつ将棋(ライオン・ぞう・きりん・ヒヨコ)×2の8コマなら作れるだろう….
第21回高専プロコン自由部門敢闘賞
先日、高知にて開催された、第21回高専プログラミングコンテストに、 無事予選を通過した、自由部門「砂であそぼう」チームと、 競技部門「4セルで十分ですよ」チームが参加しました。
自由部門では、 Wiiのリモコンの赤外線センサー機能を使っていたため、 会場にて動きが変になるトラブルも、いろいろな対策で 乗り越え、プレゼンテーション審査・デモンストレーション審査・ マニュアル審査を終え、 最終的に敢闘賞となりました。 参加した、久世さん・本山くん・森さん・ツェンデ君ご苦労様でした。
競技部門では、 ネットワーク対戦で、仮想的な水を汲んだり排出したりで得た土地の陣取り合戦でしたが、 進入不可能な所の水瓶につられて、動けなくなるというトラブルがあったり、 その修正をして望みましたが、敗者復活戦で残念ながら負けてしまいました。
ビジネスプランコンテスト投票

ふくいITフォーラム2010
北陸技術交流テクノフェアの併設イベントの、ふくいITフォーラム2010に、 電子情報工学科にて出展してきました。 先日の高専プロコン自由部門の「砂であそぼう」のデモと、 歯みがきロボットコンテストの参加車体を展示しました。 それと、プロジェクタでは、高専プロコン競技部門の決勝戦風景を、 上映していました。

2分木の生成
2分木へのデータの追加処理の説明を行う。 以下のようなコードを示しながら、ポインタの移動などを図を交えながらの解説とした。
struct Tree { int data ; struct Tree* left ; struct Tree* right ; } ; void main() { struct Tree* top = NULL ; int key ; while( scanf( "%d" , &key ) == 1 ) { struct Tree** ppt = &top ; while( (*ppt) != NULL ) { if ( (*ppt)->data == key ) break ; else if ( (*ppt)->data > key ) ppt = &( (*ppt)->left ) ; else ppt = &( (*ppt)->right ) ; } if ( (*ppt) == NULL ) { (*ppt) = tcons( key , NULL , NULL ) ; } } }
この動作確認の後、10,20,30,40,50,60… といったデータを順次与えた場合、 どのような木構造ができあがるのかを考えてもらい、 処理時間が、 であるべき所が、
となってしまう欠点を説明する。 この改善策として、木の枝のつなぎかえを行って、右の枝・左の枝の大きさをそろえる AVL木などの紹介をする。
情報処理技術者試験の問題をみる
後半は、演習室に移動して、2分木の課題に取り組んでもらう。 演習中は暇だったので、先週末に実施された情報処理技術者試験の問題を 持っている人がいたので、問題を見てみる。
前半の試験問題でも、データベースやオブジェクト指向といった用語も多く、 自分の授業での説明の不足していそうな点の参考にする。 後半の試験問題を見ていると、なかなか面倒な問題も多い。 Javaでは、リスト構造や、スレッド起動を含む通信プログラムの出題もあり、 時代の違いを感じるとともに、ほかの出題と比べ難易度たかくねぇ?との感想。 問題を見せてくれた学生さんは、言語選択は表計算を選んだそうだ。
ちょうど、3年の授業では、構造体のネタを説明しているが、C言語の出題では、 typedef struct … が普通になっているみたい。自分の授業では、typedef せずに、 struct キーワード連発なんだが…. 例年、説明はしているけど、 改めて typedef の説明忘れないようにしないと…. しかしながら、構造体もリスト構造での出題でもないし、まだわかりやすい問題だったように思う。