スライド 1: cs-11. 式と変数,条件分岐,リストとその操作,繰り返し処理
スライド 2
スライド 3: アウトライン
スライド 4: プログラミング
スライド 5: プログラミングの楽しさと達成感
スライド 6: trinket
スライド 7: trinket でのプログラム実行
スライド 8: 11-1. 式と計算
スライド 9: 変数,代入
スライド 10: 式の実行結果
スライド 11: 変数への代入
スライド 12: 式の中に変数を含めることができる
スライド 13: 式と変数の Python プログラム
スライド 14: 演習1 変数 x, y を使って計算
スライド 15
スライド 16
スライド 17
スライド 18
スライド 19: 答え合わせ
スライド 20: 11-2. 条件分岐
スライド 21: 条件分岐
スライド 22: 条件分岐の Python プログラム
スライド 23: 演習2 条件分岐,if,else
スライド 24
スライド 25
スライド 26: 条件分岐 まとめ
スライド 27: 11-3. 演習問題
スライド 28: 条件分岐
スライド 29: 正解の例
スライド 30: 11-4. リストと繰り返し
スライド 31: Python のリスト
スライド 32: リストと繰り返し
スライド 33: 演習3.リストと繰り返し,for
スライド 34
スライド 35
スライド 36
スライド 37
スライド 38
スライド 39
スライド 40: リストのプログラム例
スライド 41: for による繰り返し
スライド 42: 演習4. 繰り返しでの変数値の変化
スライド 43
スライド 44
スライド 45: 1×2×3×4×5の計算
スライド 46
スライド 47: 答え合わせ
スライド 48: 全体まとめ
スライド 49: 今回の授業の学ぶ意義と満足感
cs
-1
1.
式と変数,条件分岐,リスト
とその操作,繰り返し処理
(コンピューターサイエンス)
URL:
https://
www
.kkaneko.jp/
cc/cs/index.htm
l
1
金子邦彦
①式と変数
:変数は,値を保存し参照する仕組
み。計算に利用。
②条件分岐(
if else
)
:条件に応じて処理を変
える制御構造。
③リスト
:複数の要素を順序付けて格納する
データ型。
④繰り返し処理
:同じ処理を複数回実行する制
御構造
プログラミングの基本になる変数,条件分岐,
リスト,繰り返しの理解.
オン
ラインツール
(
trinket
)を活用した実践的な演習
2
アウトライン
1.
式と計算
2.
条件分岐
3.
演習問題
4.
リストと繰り返し
3
プログラミング
•
プログラミング
は
人間の力を増幅
し、私たちができること
を大幅に広げる
•
プログラミング
はさまざまな分野で活用されている
•
シミュレーション:複雑な現象をモデル化し、予測や
分析を行います
•
大量データ処理:データの収集、加工、分析
•
AI
システムの開発
•
W
eb
サイト,アプリケーションなどのソフトウェア
•
プログラミングはクリエイティブな行為
•
さまざまな
作業を自動化
したいとき、
問題解決
したいとき
にも役立つ
4
プログラミングの楽しさと達成
感
•
楽しさ
•
未来の技術を学ぶ
ことは楽しい。
•
プログラミングは
自分のアイデアを形
にできる
クリエイ
ティブな行為。
•
視覚的なプログラムを書くことで、ゲーム感覚をもって
楽しみながら学習することも可能。
•
達成感
•
プログラミング
を通じて
問題解決のスキルを身につける
ことは、大きな達成感につながる
•
新しいソフトウェアや技術を生み出す。
5
trinket
•
T
rinket
は
オンライン
の
Py
thon
、
HTML
等の
学習サイト
•
有料の機能と無料の機能がある
•
自分が作成した
Python
プログラムを公開し、他の人に実
行してもらうことが可能
(そのとき、書き替えて実行も可
能)
•
Py
thon
の標準機能
を登載、その他、次のモジュールや
パッケージがインストール済み
math, matplotlib
.pyplot
,
numpy
, operator
, processing, pygal
,
random, re, string, time, turtle, urllib.request
6
•
trinket
は
Python, HTML
などのプログラムを書き実行できる
サイト
•
https://trinket.io/python/0fd5939
2c8
のように、違うプログラムには違う
URL
が割り当てられる
•
実行が開始しないときは、「
実行ボタン
」で
実行
•
ソースコードを
書き替えて再度実行
することも可能
trinket
でのプログラム実行
7
ソースコードの
メイン画面
実行結果
実行、
ST
OP
ボタン
11
-
1.
式と計算
8
変数,代入
•
変数
:プログラム内で名前を付けて利用する
オブジェ
クト
で,
値を保存
し,後から
参照
できる
•
代入
:「
x = 100
」のように書くことで,
x
という名前
の変数に、値
100
が保存
される
9
x = 100
例
式の実行結果
式
の実行結果として,
値が得られる
10
プログラム
実行結果
変数への代入
プログラムで,「
x
= 100
」のように書くと,
x
の値が
100
に変化
する
11
プログラム
実行結果
式の中に変数を含めることがで
きる
12
プログラム
実行結果
式と変数の
Python
プログラム
変数
x, y
に
100
を足して表示
13
x
に
100
を足す
x = 100
y = 200
x = x + 10
0
y
= y
+ 100
print("x =", x
)
print("y
=", y)
y
に
100
を足す
print
は,メッセージ(文字
列)や変数の値を表示
実行結果
演習1
変数
x, y
を使って計算
ページ12~17
【
トピックス
】
•
trinket
の利用
•
式と変数
•
確認クイズに自主的に挑戦
14
①
trin
ket
の次のページを開く
https://t
rinket.io/l
ibrary
/trinkets/1e
414fec8
0
②
実行結果が,次のように表示されることを
確認
15
③
確認クイズ
x, y
を
2倍する
プログラムはどちらが正しいですか?
なお,掛け算には「
*
」を使う.
正解だと思う方を,自分でコンピュータに入れて,正しいか
を確かめてください
16
x = 100
y = 200
x = x * 2
y
= y
* 2
print("x
=", x)
print("y =", y
)
x = 100
y = 200
2 * x = x
2 * y
= y
print("x
=", x)
print("y =", y
)
④
確認クイズ
x, y
の値を
半分にする
プログラムはどちらが正しいですか?
なお,割り算には「
/
」を使う.
正解だと思う方を,自分でコンピュータに入れて,正しいか
を確かめてください
17
x = 100
y = 200
x = 2
y
= 2
print("x
=", x)
print("y =", y
)
x = 100
y = 200
x = x / 2
y
= y
/ 2
print("x
=", x)
print("y =", y
)
⑤
確認クイズ
x
と
y
を足した値を新しい
x
の値にする
プログラムはどちら
が正しいですか?
正解だと思う方を,自分でコンピュータに入れて,正しいか
を確かめてください
18
x = 100
y = 200
x = x + y
print("x
=", x)
print("y
=", y)
x = 100
y = 200
x + y
print("x
=", x)
print("y
=", y)
答え合わせ
③
④
⑤
19
11
-
2.
条件分岐
20
条件分岐
条件分岐
では,
変数や式の値
によって
結果が
変わる
などの判断を行う
age
の値が
11
以下
→
500
12
以上
→
1800
21
条件式は「
age
<= 1
1
」のようになる
条件分岐の
Python
プログラム
age
の値が
11
以下
→
500
12
以上
→
1800
22
条件式は「
age
<= 1
1
」のようになる
age = 18
if age <= 1
1:
print(500)
else:
print(1800)
演習2
条件分岐,
if
,
else
資料:
21
~
23
【
トピックス
】
•
条件分岐
•
if
•
else
23
①
trin
ket
の次のページを開く
https://t
rinket.io/p
ython/0f
d59392
c8
②
実行する。
1800
が表示されることを確認
24
③
「
age =
18
」を「
age =
10
」に書き替える
④
実行する。
500
が表示される
ことを確認
⑤
age
の値が
8, 9, 10, 1
1
のときは
500
になり、
12, 13, 14, 15
のときは
1800
になることを確認
25
条件分岐
まとめ
•
条件分岐
は、特定の条件に基づいて、異なる結果を得るこ
とを可能にする
•
Python
の
条件分岐
では、
if, else
などのキーワードを使用
ある映画館で、
11
歳以下のチケットと,
12
歳以上のチケット
で値段の違いがあるとき、条件分岐を使用して、チケット料
金を算出できる
26
age = 18
if age <= 1
1:
print(500)
else:
print(1800)
age <= 11
のときは、
print(500)
が実行される
そうでないときは、
print(1800)
が実行される
11
-
3.
演習問題
27
条件分岐
•
次のプログラムを作成
28
①
weight
と料金の関係は次の通り
weight
の値が
100
以下
→
0
100
より大きい
→
1000
②
weight
= 80
に設定してテスト実行
正解の例
29
trink
et
のページ
ht
tps://trink
et.io/python/62f74
d3bf
c
11
-
4.
リストと繰り返し
30
Python
のリスト
•
リスト
は,
複数の要素
を
順序付けて保持
できる
•
リストの要素には順序を持ち、
順序の番号
は
0から開始
する
•
リストの要素は変更可能(
新しい要素の挿入
,
既存の要素
の削除
が可能)
31
4
を末尾に挿入
8
の削除
リストと繰り返し
•
リスト
と
繰り返し
は密接に関連
•
リスト
の
各要素
に対して
同じ操作を行う場
合
、
繰
り返し処理
を使用すると効率的
32
演習3.リストと繰り返
し,
for
資料:
31
~
38
【
トピックス
】
•
リスト
•
繰り返し
•
for
33
①
trinket
の次のページを開く
https://trinket.i
o/python/88a728c
3cb
②
実行する。
30, 31
が表示
されることを確認
③
8
月や
9
月について表示できるように、プログラ
ムを変更し実行
してみる
34
1.月の日数
6
月は
30
日まである.
7
月は
31
日まである.
※
うるう年のことは考えないことにする
35
リストの
組み立て
6番の要素、7番の要素の表示
①
trinket
の次のページを開く
https://trinket.io/python/cc2c13d793
②
実行する。
結果が5つ表示
されることを確認
36
2.計算の繰り返し
37
リストの
組み立て
「
y[
i] = x[i] * 1.1
」を
i
の値を変えながら
5
回繰り返す
①
trinket
の次のページを開く
https://trinket.io/python/e2770
2ef75
②
実行する。
結果が表示
されることを確認
38
3.重力と落下距離
物体を落とすと
9.8
×
(
時間
)
2
÷
2
の分,落ちてい
く.空気抵抗は無視する.
(この式は,等加速度運動の式)
①
trinket
の次のページを開く
https://trinket.io/python/f33df42c8d
②
実行する。
結果が表示
されることを確認
39
4.リストの組み立て,要素の
挿入と削除
x = [15, 8, 6, 3
2 ,23]
prin
t(x)
x.append(4)
prin
t(x)
x.r
emove(8)
prin
t(x)
リストのプログラム例
40
for
による繰り返し
•
Py
thon
の
for
ループ
は、
指定された範囲
に対して
繰り返し処
理
を行う
•
「
range(10)
」は,数の並び
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
の意味
•
「
for i in
range(10)
」の場合,
i
の値
は,
0, 1, 2, 3, 4, 5, 6, 7,
8, 9
と変化
する.ループは,それぞれに対して1回ずつ実行
される
41
プログラム
実行結果
演習4.
繰り返しでの変数値の変化
ページ40~44
【
トピックス
】
•
for
による繰り返し
•
for i in range(5)
での
i
の値
の変化
•
確認クイズに自主的に挑戦
(アクティブラーニング)
42
①
trin
ket
の次のページを開く
https://t
rinket.io/p
ython/27
f6ebe1d
a
②
実行結果が,次のように表示されることを
確認
Python
で「
i * '&'
」は,
&
を
i
個
の意味になる
43
③
確認クイズ
&
を
9
個まで表示
したい(下図のように)ときは,
どのようにプログラムを書き換えますか?
自分でチャレンジ
してください
44
このプログラムを書き換える
このような結果を得る
1×2×3×4×5の計算
④
trin
ket
の次のページを開く
https://t
rinket.io/p
ython/b7
eb5324
53
⑤
実行す
る。1×2×3×
4×5の計算が行われる.
120が表示される
45
⑥
確認クイズ
1×2×3×4×5×
6×7×8
を
表示
したい(下図のよう
に)ときは,どのようにプログラムを書き換えますか?
自分でチャレンジ
してください
46
このプログラムを書き換える
このような結果を得る
答え合わせ
③
⑥
47
全体まとめ
•
条件分岐
では、変数や式の値によって結果が変わるなどの
判断
を行う。
年齢(
age
)が
11
以下
であれば
500
を、それ
以上であれば
1800
を出力するといった場合、
条件式
は
「
age <= 11
」となる。
•
Python
の
リスト
は、
複数の要素を一度に保持
できる。リス
トの要素は順序を持ち、
番号は
0
から始まる
。
months = [""
, "Januar
y"
,
"F
ebruar
y"
, "March"
,
"Apr
il"
,
"May"
,
"June"
, "July"
, "August"
, "September"
, "October"
,
"Nov
ember"
, "Dec
ember"]
print(month
s[6])
•
繰り返し
:
繰り返し計算では、特定の計算を
何度も行う
。
48
①
変数、条件分岐、リスト、繰り返し
を理解
.
Py
thon
以
外のプログラミング言語でも通用する
知識
の習得.論理的
思考力を向上.達成感を獲得
②
オンラインツール
trinket
を活用した実践的なスキル
.
自分でプログラムを書き換えて
,間違
いがあったと
きは
自
分で対処する
.自主性向上,プログラ
ミングスキル向上
③
コンピューターの動作原理やアプリケーシ
ョンの仕組み
を理解.
コンピュータとプログラミングの幅広い可能性
に
気づく
④
デジタル時代に有用なスキルを獲得
.将来
は,データ分
析,アプリ開発,
AI
等の先端技術学習への
足がかりを獲得
49
今回の授業の学ぶ意義と満足感