2023情報I 2学期
第8回 授業の振り返りより
質問より
- 新しいプログラムにするごとに数字が増えていく[]があると思うのですがそれはどうしてアスタリスクになるのですか。それとアスタリスクになってしまったとき毎回新しいタブを開いていたのですが他の方法はありますか?/Jupyterで命令を実行するとき、Runを押しても動作せず、新しくJupyterを開き直したら動作するようになったのですが、何が原因ですか?
- JupyterNotebookのことですね。時々勝手にPythonはお休みしてしまうのです。プログラムを入力する枠の右側に番号が表示され、一つずつ増えていきます。アスタリスクになるのは、正常に動作していないサインです。このときはJupyter上部の[▶Run][■]の右にあるボタンをクリックしてください。Pythonがリスタートし、正常に動きます。これでもダメな場合は新しいタブを開いてみましょう。
- 中間テストではプログラミングを書く問題か結果を書く問題のどちらが出ますか。
- 書く問題は筆記になるので、出題が難しいです。穴埋め式のプログラムを作る問題は出るでしょう。当然、結果を問う問題は出ます。ちなみに、この解答は中間テストの実施日に打っています。
- 一つの結果を出すのにも、多くのプログラムのやり方があって、自分のやっているやり方が先生が求めているやり方かどうかがわかりません。この授業が終わったら答えを教えてほしいです。
- 答えは一つではありません。出力例のように出力されるプログラムを作ります。答えを見て安心したいのはよくわかりますが、答えと同じものを作ることを要求しているのではありません。
- A!=Bの「!=」はノットイコールを表しているということですけど、「/=」の方がノットイコールの形に近く、分かりやすいと思ったのですが、わざわざ「!」にしたわけなどがあったら知りたいです。
- /は割り算の記号として使うので、使っていない文字を使ったのではないでしょうか。
- for文の掛け算などの仕組みがよくわからなかったです
- トレースという手法があって、繰り返しを一つずつ追っていくことで、動作を理解する方法があります。iが0の時、iが1の時のように、1つ1つ追ってみてください。
- s=s+iとs=(s+i)はどちらでもいいのですか?
- 足し算なのでどちらでも同じです。括弧はいりませんよね。
- 合計を表示するときに使うsとは何ですか?
- sという変数をおいただけです。goukeiという変数にしてもかまいません。sがよく使われるのは、合計iはsumという英単語で表されるからです。
- 10~0まで、2ずつ減少させて表示する」というときに終了値が-2になるのはなぜですか
- 0まで表示するには、終了値は含まないので、0より小さくなければなりません。-2でなくても-1でも大丈夫です。
- S=S+iがどういう動作なのかわからないです
- 右辺を計算した結果を左辺に代入するということです。この説明、1学期に丁寧にしたはずです。
- for i in range で値の範囲を決めるときに私は例えば1から100だったら(1,101)と打つ方が後で楽なのでそっちにしていますが先生の見本では(100)とうち,後で+1にしていることが多かったです。それは先生はそちらの方がやりやすいと感じているからですか?それともこれから発展していくと私のやっている方では不都合が起こるからですか?
- どちらでもかまいません。お好きな方で。授業ではrange(10)で10回実行→実は0~9を発生→1足すと1~10にできる という手順で説明しているので、後から1を足しています。最初にrange()の使い方を全部覚えてもらうのであれば、range(1,101)の方が楽ですよね。
感想より
- 夏の課題をやらなかったツケが回ってきました。行ける時にパソコン室行って進めたいと思います。
- もう高校生ですから、課題は「やったかどうか」ではなく、「できるかどうか」が問われます。しっかりやってください。
- 夏休みに課題をやったときには、プログラミングは難しいと感じていたのですが、練習を重ねていくにつれて一人でできる手ごたえがついてきました。スライドの右側にあったフローチャートに従ってやると正しいプログラミングができたので、アルゴリズムの力はすごいと思いました。
- フローチャートをプログラミングで表現できると言うことは、それなりにきちんと理解していることの現れですね。
- 家でもう1回夏課題のプログラミングを解き直してきたのに、いざパソコンで打ってみようとすると、エラーが5回くらい起こってしまったり、「:」を忘れたりと多くのミスがあった。プログラミングは数学や国語などと違い、最後まで正しいプログラミングを書き続けなくては、1つも成果を得られないものなので、プログラミングをかきこむときは、頭の中でプログラムを表示させて、1つ1つ確認しながら作業して、無駄な時間を省きたい。
- 一つ間違えるとエラーが出るのは面倒ですよね。その点では数学につながるものもありますよね。パパっと作ってエラーを見ながら直すのか、エラーが出ないようにプログラムを書くのか、どちらが効率が良いのかは悩ましいところです。
- できないできないと焦っていたら、printのあとに=を入れてしまっていた。一つずつ落ち着いて、エラーが出たらその指示の通りに直して実行する大切さを知った。
- エラーは焦らず、しっかり読んで対処すれば大丈夫です。ただ、あまりに単純な打ち間違えのエラーを検索して調べると、とても難しいページが表示されることがよくあります。基本的な記法の問題は、自分で解決できるようにしておく必要があります。
- splitから難しくなって分からなかった。家でじっくり見たいと思う。
- input().split( )ですね。こういった初めての命令は、簡単なプログラムを書いてどうなるか試すと理解しやすいです。例えば
A=input().split( )
print(A)
として実行すると、どうなるのかよくわかります。
- if構文にelseが無くても動くのが意外だった。
- if文は「もし○○なら□□」であって、「そうでなければ何もしない」ってこともありますよね。else文を書いたら、必ず次の命令を書く必要がありますから、何もしない場合はelse文を書いてはいけないのです。
- 完璧に書けたと思っても空白が足りなくてエラーが出ることなどがあり、空白なんて入れずにもっと単純な規則にすればいいと思った。これから社会でプログラミングが当たり前になっていったら、子供や学習していない人でも高度なプログラミングが書けるように単純な規則を使ったプログラミングアプリ(パイソンみたいなアプリ)が登場しそうな気がする。
- 正しい手順で入力すれば、空白は自動的に入ります。Pythonはとても整った形のプログラムの書き方を要求しますが、だからこそ単純な規則で構造がわかりやすくなっています。他のプログラミング言語は記号を使って構造を表しますが、Pythonのように読みやすくはなりません。空白が気になるのは、おそらく構造がよくわかっていないのか、入力のルールに従わず、:(コロン)を入力すべき時に入力していないかのどちらかではないでしょうか。
- a=0
n=int(input('Number?'))
for i in range (n):
a=a+i
if a%4==0:
print(a)
というプログラムに16を入力すると、0 28 36 120という一見不規則な数字が出てきて驚いたが、よく見ると1から16の総和で4の倍数を表示していたと気づいた。先に疑問が出てきてから仕組みが分かると数倍面白く、これは自分で意欲的にどんどん進めていかないと得られない面白さだなと思いました。 - 「何でそうなるのか」を考えると、仕組みがとてもよくわかります。思っていたような結果が得られない、言ってみれば失敗な訳ですが、そこから学べることが重要ですよね。
- 前回よりも打ち込むのに慣れてきて結構進めることができた。ここからここまでの数字の和と積の打ち方の違いに最初は苦戦していて、正しい答えとなかなか一致しなかったりエラーが出てきてうまくいかなかったが、今までのやった問題との違いなど見比べて何が違うのか見つけることができた。プログラミングはやりながら覚えていかないとだめだということを強く感じた。できるようになると楽しいのでもっとプログラミングに積極的に取り組みたいと思ったし、頑張りたいと思った。
- プログラミングを夏休みに一周したけれど、一周では足りないと言うことがわかった。家で今後もcheat sheetの内容を解けるように、覚えていきたいなと思った。
- 総合問題で手こずってしまった。いろいろな構造を使ってプログラミングを書いて成功するときに感じる達成感が楽しくてプログラムを書くモチベーションになっている。ただ、少し終わらなかったので家で仕上げてくる。
- 制御構造を意識したことで、どの動作を繰り返すのかなどを論理的に考えることができ、夏休みにやった時よりもプログラミングを楽にかくことができた。
- 練習していくうちにだんだんこの命令の時はこの文字を使うんだなということが分かってきた。プログラミングはとにかく練習をして数をこなしていくことが一番の近道だと思う。
- フローチャートが横に掲載されていたのでプログラム全体の流れが分かりやすくどんどんプログラミングできた。しかし、フローチャートに書いてあるコードだけをみて行うと内容理解できないのでその点は注意したい。
- 一問解けるたびに、キター!!と叫んでしまった。もっとできるようになったらきっと楽しいので、Pythonを使って練習するようにしたい。また、エラーが出たとき簡単なものなら下の文章をみてなおせるようになった。
- プログラムには、同じ出力結果を出すのに何通りもの方法があるのだとわかりました。友達と見比べてみて、どちらのプログラムの方がわかりやすく、簡単なのか考えてみるのも面白いと思いました。
- 前回分からなかったことを友達に聞いたらとても分かりやすく教えてくれて助かりました。そして私も友達の分からない部分を教えてあげました。わからないことをお互いに教えあえると楽しいなと思いました。
- 文字を使う時点を打つのを忘れたりイコールをふたつ書くのを忘れることが多かったので気をつけたい。夏休みの予習は慣れるまで少し難しかったがやっておいてよかったなと思った。友達に教えることでさらに理解することができた。
自己評価集計
ワードクラウド
- 3つのキーワード
- 感想や気づき
テキストマイニング 無料ツール by ユーザーローカル
前のページに戻る