第1回 プログラミング入門 演習

はじめに〜コンピュータとは

【主な内容】

これはプログラミング入門の第1回目の演習課題です。講義内容を復習し、コンピュータに慣れるためのコマンド入力練習をしてもらいます。 それではまず、ここをクリックして「補足資料」を読んで下さい。
ファイルやディレクトリの用語は理解できましたか?理解できなければ TAや教員に質問して下さい。

演習課題

以下の3つのレベル(初級レベル、中級レベル、上級レベル) の全ての課題に回答しなさい。各々の課題毎にファイルを作成し、提出コマンドを実行して提出しなさい。 提出コマンドで提出された回答だけが採点対象になります。
今回は初めてなので、問いの直後に手順や説明を入れてあります。

今回の課題にはテキスト(文書)ファイルで回答を提出するものがあります。ファイル名は各課題で指定してあるので、厳密にその指示に従って下さい。また、ファイル名に".txt"という拡張子をつけて下さい。

なお、文中の実行例やコマンドなどの赤色の字はキーボードから入力したもの、深緑の字はコンピュータからの表示を示しています。また、%はプロンプト(皆さんの環境ではstd1dc1{s1160000}1:等に相当する)を示しており、皆さんが入力するのはその次の文字からになります。

初級レベル

(A-1)
解答ディレクトリの作成

いま、みなさんはこのウエブページを読んでいます。 忘れないように、プログラミング入門トップページをブックマーク登録して下さい。
次に、Webブラウザを立ち上げた青いウィンドウ (kterm と呼ばれています) をマウスで選択し、以下のコマンドを打ち込んでください。
なお、少し上にも書きましたが、%はプロンプト(皆さんの環境ではstd1dc1{s1160000}1:等に相当する)を示しており、皆さんが入力するのはその次の文字からです。
% cd                   (ホームディレクトリに移動)
% mkdir Prog0          (ディレクトリ Prog0 を作成)
% cd Prog0             (ディレクトリ Prog0 に移動)
% mkdir Ex01 Ex02 Ex03 (Ex01 などを作成)
% ls -F                (ディレクトリ名を表示)

[ls -Fコマンドの実行結果]
Ex01/   Ex02/   Ex03/
最後に実行したlsコマンドの結果から、現在、Ex01とEx02とEx03というディレクトリが出来ていることが 分かります。これらのディレクトリが、各演習課題ファイルを置く場所になります。
ディレクトリ名に含まれる大文字と小文字は区別されますので正確に入力してください。 大文字・小文字が正しく入力できているか常に確認してください。
本演習はエクストラも含めると14回分ありますので、Ex14まで残りの ディレクトリを作成し、最後に以下のコマンドを実行してみてきちんとできているかを確認してください。
% ls -F
Ex01/   Ex02/   Ex03/   Ex04/   ...   Ex14/
本演習で使用するコマンドをメニュー形式で実行できる menu コマンド が用意されています。
試しに、以下のようにこのコマンドを実行し、動作を確認してください。
ここでは、表示されたメニューの中から4番目の「ディレクトリ確認」を選びます。
もし×が表示されたら、英語のつづりや大文字小文字が間違っていないか確認して下さい。
もし△が表示されたら、教員かTAを呼んで対処して下さい。
以下の***は人によって異なります。
% ~prog0/bin/menu
【プログラミング入門 メニュー】

0. メニュー終了 (exit menu)
1. 課題提出 (submit)
2. 提出済みファイル確認 (submitcheck)
3. 作成ファイル確認 (filecheck)
4. ディレクトリ確認 (dircheck)
どれを実行しますか?(数字を入力して下さい)
4


「ディレクトリ確認」が選択されました
実行日時        アカウント名
【プログラミング入門 演習用ディレクトリ作成状況】
***/あなたのアカウント名/Prog0を調べます
(○:存在する、×:存在しない、△:読めない)
---------------------------
○ ***/あなたのアカウント名/Prog0/Ex01
○ ***/あなたのアカウント名/Prog0/Ex02
                 ・
                 ・
                 ・
○ ***/あなたのアカウント名/Prog0/Ex13
---------------------------
上記コマンドを実行するために入力する1文字目のキー(~)は、 キーボードの白い文字盤の一番上の行の一番右(BackSpaceキーの上)にあります。
シフトキー (Shift) を押しながらこのキーを押してください。
なお、この文字を「チルダ」と言います。

以後、ログインするたびに 以下のコマンドをktermの青い画面上で実行し、 その回の演習を行うディレクトリに移動します。
また、昼食などで一旦ログアウトし、再度ログインした場合も このコマンドを実行して各回演習ディレクトリに戻って下さい。
% cd ~/Prog0/Ex##

##には演習番号が入ります。今日は第1回演習なので01が入ります。


(A-2)
コンピュータの構成要素を述べなさい。

ファイル名:ex01a2.txt

上記の「ファイル名:」の右側にある文字列が提出ファイル名です。
まず、前問に従って本日の第1回演習のディレクトリに移動して下さい。
更に次のコマンドを実行し、正しいディレクトリにいるかどうか確認して下さい。
% pwd

[実行結果]
/***/あなたのアカウント名(s1160000など)/Prog0/Ex01
***は人によって異なります。このディレクトリでエディタemacsを 立ち上げて解答を書き込むようにしてください。
下の例では、emacsの引数としてファイル名が与えられています。
% emacs ex01a2.txt&

オリエンテーションで日本語変換を習わなかった人は、次のように 日本語を使えるようにしてください。
emacsウインドウを選択し、コントロールキー(Control: キーボードの左側の方にある)を押しながら バックスラッシュ(チルダキーの左隣)を押して、それからローマ字入力で何か 単語を打ち込んで下さい。 更にスペースキーを押すとカナ漢字変換できます。一番下の欄に 何かファイルを作るという質問が何回か出るので、漢字変換が されるまで全てyと打ち込んでください。

これで問題に答えることができます。問題の答を書き込んだら、 コントロール+x (小文字)、コントロール+s (小文字) でファイルに保存してください。


(A-3)
次の目的で用いるハードウェアの例をあげなさい。
ファイル名:ex01a3.txt

いま、あなたは ex01a2.txt ファイルを開いています。このまま次の問題を解答してコントロール+X、 コントロール+S を打って保存してしまうと、前の解答を上書きしてしまいます。 そうならないよう、新しいファイル(バッファ)を開きます。コントロール+X、コントロール+Fとタイプし、 本問題のファイル名 ex01a3.txt をタイプして下さい。emacs の下の黒い帯のファイル(バッファ)名が 正しく変わったことを確認してから、問いに答え、ファイルを保存して下さい。


(A-4)
プログラミングとは何をすることであるか述べなさい。

ファイル名:ex01a4.txt

以下、同様に解答を続けてください。



中級レベル

(B-1)
コンピュータプログラミング言語の使用目的を説明しなさい。

ファイル名:ex01b1.txt



(B-2)
ディレクトリ (directory) および ファイル (file)とは何かを説明しなさい。

ファイル名:ex01b2.txt



(B-3)
ワークステーションオリエンテーションやリテラシーで学んだコンピュータのコマンド(lsなど)の使用目的と使い方(使用例)を説明しなさい。 コマンドは5つ以上とします。

ファイル名:ex01b3.txt




上級レベル

(C-1)
課題B-3で述べた全てのコマンドに対して、manを用いてオプションを3つ以上調べ、それぞれ使用目的を説明しなさい。但し、以下のようにします。
  1. manで説明が見つけられない(No manual entry for ....)場合には、「マニュアルが見当たらない」と書く。
  2. オプションが全くない場合には、「オプションがない」と書く。
  3. オプションが3つ以上存在しない場合には、オプションの種数を示した上で、ある分だけの説明を書く。

ファイル名:ex01c1.txt

なお、コンピュータのコマンドの使い方を以下のように、manコマンドで調べることができます。
% man ls
man は manual(マニュアル)の略です。 上のコマンドを実行し、表示される画面を見ると OPTIONS の項目があります。 これを見ると各々のコマンドにはオプション(OPTIONS)をつけて実行することができることがわかります。


(C-2)
上の課題 C-1で取り上げたものそれぞれの関連コマンドを挙げなさい。

ファイル名:ex01c2.txt

manを用いると、関連するコマンドが "SEE ALSO" の項目に書かれています。もちろん、無いものもあります。


(C-3)
man コマンドにもオプションがあります。 オプション -k の用例を man で調べ、例えば man -k logoutman -k telnetrc を実行した結果を参考にして、このオプションの機能を説明しなさい。なお、man で表示したものを単にカット&ペーストするだけではダメです。和英を問わず、一通り読んで必要な個所を絞り込み、簡潔に自分の言葉で説明すること。

ファイル名:ex01c3.txt




何か疑問や間違いがあれば以下に連絡して下さい。
プログラミング入門演習問題担当(prog0)