こんばんは
B2の野沢です。秋ABのテストが始まりましたね。
つらいですが、頑張って乗り切りましょう!
本日の質問と回答です。
========================================
<知識情報演習I>
Q1. 以前つくったOPACが全学計算機リプレース後、動かなくなってしまった。
A1. ローカルでHTMLファイルを開いていたため、指摘しました。
<プログラミング演習II>
Q2. 課題2(木曜クラス)で、対象のテキストを文ごとに分割して配列に格納したいが、上手くいかない。
A2. 対象のテキストファイルを1行ずつ読み込み処理をしようとしていたのですが、1文が2行以上に渡る場合もあるため、そのことを考慮して処理する必要があると伝えました。
Q3. 課題2(木曜クラス)で、分散を計算する際に、分母である文中の単語数の値が0のため、割ることができない、というエラーが出てしまうが原因が分からない。
A3. 読み込んだ行ごとに処理しており、空行(単語数が0)に対しても分散を求めようとしていたため、エラーとなっていたため、指摘しました。
Q4. 課題2(木曜クラス)で、文ごとに単語数を数える方法が分からない。
A4. まず文ごとに区切り、それぞれの文に対して単語数を数える処理をすればよいのではないかと伝えました。
Q5. 課題2(木曜クラス)で、テキストを読み込んだ後に改行を空白に置換したら、文の最後にも空白が追加されてしまった。
最後の空白はいらないのだが、どのように処理したらいいか。
A5. 改行を空白に置換した後に、正規表現を用いて最後の空白だけ除けばいいと伝えました。
Q6. 課題2(木曜クラス)で、1文あたりの単語数の分散を求めようとしたら、明らかに異なる値が計算されてしまう。
A6. 1文あたりの単語数ではなく、文字数で計算していたので、指摘しました。
Q7. 正規表現をif文で使うときの書き方がよくわからないので解説してほしい。
A7. 教科書の正規表現の章を参照しながら、正規表現と文字列がマッチするかどうか調べるためには「=~」を使う必要がある、など解説しました。
Q8. 課題2(木曜クラス)で、(3)で文章の単語の大きさの平均と分散を出したいが、やり方がわからない。
A8.やりたい処理を確認したところ、配列に対してsizeメソッドを使おうとしていたので、今回は文字列の大きさを求めたいことから「楽しいRuby」で該当するページを確認してもらいました。
Q9. 課題2(木曜クラス)で、文章の単語の大きさの平均と分散の値が解答例と異なってしまう。
A9. splitで分割した文字列を出力して確認してみたところ、文字列としてカウントしては行けない要素も計算に含まれていたので、指摘しました。
回答 Q1-Q7:鈴木, Q8-Q9:野沢
========================================
プログラミング演習の話を少し。
私の場合。例えば、splitメソッドを使いたいとき、splitメソッドはどんなクラスに対して使えるのか。(クラスというのはArrayとかHashとかStringなどなど)
また処理をしたいのはどんなクラスなのかを確認してプログラムを組んでいます。文字列の処理や配列の処理で似ているところがあって混同してしまうことがあるので、扱っているのがどのクラスに属しているのかを意識するといいかもしれません。(確認するメソッドはあります、楽しいRubyかGoogleに聞いてみましょう)
(文責 : 野沢 [twitter: nozawa0301] )