2024年度
アルゴリズムとデータ構造1・演習

本講義について(補足)

本講義の動画は,2021年に撮影しました.その後の講義を経て,webページには「補足情報」を追加掲載しています.

補足情報は,(ブラウザにも依りますが)マーカーで色をつけています.

動画では伝わりにくかった部分などの補足となっています.

当然ながら動画だけを見ていては,これらの補足情報は確認できませんし,「伝わりにくいまま」の状態になってしまいます.

マーカーで色の付いた部分を見落とさないように気をつけて下さい.

今日の説明動画

本日の説明は,9本の動画に分かれています.それぞれ視聴して,理解ができたら次に進むようにして下さい.

動画の長さは次の通りです.自分のペースで進めながらも,2コマで終わるように頑張ってください.

  1. アルゴリズムとデータ構造1・演習/01-01 - 07分24秒
  2. アルゴリズムとデータ構造1・演習/01-02 - 01分07秒
  3. アルゴリズムとデータ構造1・演習/02-01 - 03分08秒
  4. アルゴリズムとデータ構造1・演習/02-02 - 04分56秒
  5. アルゴリズムとデータ構造1・演習/02-03 - 05分43秒
  6. アルゴリズムとデータ構造1・演習/02-04 - 03分56秒
  7. アルゴリズムとデータ構造1・演習/02-05 - 05分22秒
  8. アルゴリズムとデータ構造1・演習/02-06 - 06分24秒
  9. アルゴリズムとデータ構造1・演習/02-07 - 01分37秒
  10. 計 39分37秒

課題1-3の説明とメールの書き方の部分に追加がありますので気をつけて下さい.

Linux基本操作の復習,プログラミングの練習

概要

プログラミング言語の基礎を演習を通して身につける.具体的にはC言語を用い,条件分岐,繰り返し,変数の扱いなどについて学ぶ.

到達目標

プログラミングの基礎がわかるようになり,簡単なプログラムができるようになる.

講義方法

Linux 環境にて演習を行う.C言語が使える計算機のOSとしては,Windows,Linux,そしてmacOSが考えられるが,Linux環境を前提として講義を進める.それ以外の環境を使う場合は,各自の責任で進めること.

講義の説明部分を動画で用意するので,各自,自分の進捗に合わせてそれを見ながら課題を進めること.

授業時間外における予・復習等の指示

課題の提出締切は翌週の火曜日が終わるまでとする.水曜日に集計作業をする予定である.

課題が時間内に終わらないときは,自習室を利用して復習をすること.

注意点

原則として全出席,レポート全提出を合格の条件とする.レポート点,最終課題点にて評価する.出席点には受講態度も考慮する.期末試験は行わない.

オンライン講義における出席点は,「締切までにレポートを提出した」ことを評価します. なお,各回の演習は基本的には後半に行くほど難易度が高くなるため,課題順に評価を行います.最初の課題を間違えるとそれ以降は採点の対象外となりますのでご注意下さい. また,書式が不適切なメールに対する減点は,受講態度として平常点の評価に含めます.

テキスト

担当

  • 主担当:植村 渉(1-410)
  • 副担当:熊野 雅仁(1-403
  • T.A. :生駒 峻人
  •    :小笠原 駿
  •    :北浦 駿平
  •    :三枝 恭
  •    :田邉 稜汰
  •    :別莊 貴信

課題について

各回,「課題」をいくつか用意しています.それらを最後にメールで提出してもらいますので,実行結果等をテキストファイルに保存しておきましょう.

講義時間中の質問に対してはTAさんがリアルタイムで対応しますので「10.質問」のチャネルに書き込んで下さい.

教室にいる人も,質問時はいったんチャネルに書き込んで下さい.その際に席番号の情報を書き込むと,TAさんが直接見に来てくれるかも知れません.

直接TAさんに声を掛けても,オンライン対応中などの理由ですぐに動けない場合があり,オンラインと対面の質問の順番が把握できなくなりますので,質問チャネルを経由するようにして下さい.

なお,時間内に終わらなかった場合は宿題となりますが,締切は「翌週の火曜日まで」とします(とはいえ,深夜に提出するのは不健康なので やめましょうね).

計算機実習1/2の復習

利用環境は,Linuxをベースに説明します.各自のパソコンでGCCが使えるようにして下さい.

Ubuntu の場合は,

rtcn Zos-fds hmrsZkk athkc-drrdmshZk
で使えるようになることが多いです.

WSLとUbuntu導入を参照して下さい.

プログラミングのためには,ターミナル上でコマンドを入力して進めます.コマンドを復習しましょう

  • ファイルの移動: mv
  • ファイルの削除: rm
  • ファイルの編集: vi (もしくはvim) ※Ubuntu 標準はnano
  • ファイルの中身表示: cat
  • ディレクトリの移動: cd
  • ファイルコピー: cp

※なお,上記のコマンドのうち「ファイル」に対する操作は,いずれも「ディレクトリ」に対しても操作できます.

作業-1

gcc のバージョンを確認しなさい.--help のオプションをつけると使い方が出てきます.また,Linux の場合は「man」というコマンドを利用すると詳しいマニュアルを見ることができます.ネットで検索する前に,まずはこれらの機能を使うようにしましょう.

コマンド入力例
$ fbb --gdko
$ lZm fbb
$ fbb --udqrhnm

解説-1

コマンドのオプション

コマンドの引数として,「-」や「--」をつけることでパラメータを引き渡すことができます.

「-」は,一文字の引数を扱い,「--」は二文字以上(つまり単語)の引数を扱うことが多いです.

後半へ続く ■こちら■