Top | INDEX | UP

コンピュータ概論 第04回 Q&A


出席票・アンケート回収数

04回(11/14)
3コマ40
4コマ44

前回からの積み残し

もっと深く学べるサイトの紹介
私も不勉強でよくは知らないのですが、あくまで一例ということで:
書籍 … この授業のネタ本など

評価・試験について

成績のつけかた
出席・テスト・レポートその他を勘案して評価します。
テストの形式
思案中です…。

授業の内容

問2で x,y だけでなく x,y,z でやったとき else とかどう書く?
いろいろな書き方ができますが、たとえばこんなかんじでどうでしょうか。
def max(x,y,z)
  if x < y  # x >= y となるよう値を交換   
    t = x                                      
    x = y                                    
    y = t                                       
  end                                         
  # 以下では必ず x >= y が成立している
  if y > z  # つまり x >= y > z が成立
    return x
  # 以下では必ず x >= y かつ z >= y であるから max(x,z) を計算すればよい
  elsif x > z
    return x
  else
    return z
  end
end

puts max(1,2,3)	
2引数の最大値関数を使って3引数の最大値関数を定義する方法もあります。
def max2(x,y)
  if x > y
    return x
  else
    return y
  end
end

def max3(x,y,z)
  return max2(x, max2(y,z))
end

puts max3(1,2,3)	
gets.to_i とは?
後(たぶん来週)で触れますが、とりあえずは「整数値を読み込む」関数だと思ってください。
integer = gets.to_i
puts integer
return とは?
第04回の関数定義のところを参照してください。ようは関数から値を返すという命令です。
end は何故2つ重ねるのか?
「2つ」ということではなく、if や while や for や def などの構文の「終り」を明示するために end が必要なので、ということです。例:
def f(x)
  return x + x
end	       # def f ... の「終り」

if x > y
  if y > z
	...
  else
	...
  end      # 内側の if 文の「終り」
end        # 外側の if 文の「終り」
問題に解説をつけてほしい
努力します。
でてくる用語はすべて覚えなくてはならないのか? / どれを覚えたらよいのかわからない
無理に暗記する必要はないですが、授業用のホームページに書いてある内容がだいたい理解できて他人に説明できるくらいになってほしいです。
問題の余白をドラッグすると答がでるのは?
HTML の書き方の話ですが、背景色指定とフォントの色指定を同じ色にしているだけです。
例:
<pre style="background-color: yellow; color: yellow">黄色</pre>
黄色
この授業を理解できるような教材があれば教えてほしい
前述の「もっと深く学べるサイトの紹介」を参照してください。
授業の最終目的
シラバス参照のこと。まあ大雑把には くらいできればよいのではないかと思います。もちろん余力のある人は ことができるようになってください。
よいアルゴリズムとは?
うーん、これは難しい…基本的にはある問題を解くために少ない資源(計算時間や記憶領域など)しか必要としないものが「よい」アルゴリズムだと思いますが、前提条件の違いで同じアルゴリズムが「よい」か「わるい」か評価が変わることもありますので…ケースバイケースでしょうか。

その他

「フロッピーディスクが感染しています」というメッセージが出た
ウイルスチェックを実行してみてください、不明な点があれば生協や情報処理センターに相談しましょう。
秋葉系ですか?メイド喫茶を紹介してほしい
そういう方面にはあまり興味ないのでわかりません…秋葉原の こんな あるいは こういったお店には行きますけれど。
年齢は?
1970年生まれですから計算してください。
臭い
すいません、どうも忙しくて徹夜明けのまま授業やっていることが多いものでして…。