Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Python2019-2
Search
sk
May 16, 2019
Education
0
62
Python2019-2
sk
May 16, 2019
Tweet
Share
More Decks by sk
See All by sk
Python講座演習4.pdf
shuy_k3
0
73
Python講座第3回.pdf
shuy_k3
0
62
Python2019-1
shuy_k3
0
89
Other Decks in Education
See All in Education
仮説の取扱説明書/User_Guide_to_a_Hypothesis
florets1
4
310
20250625_なんでもCopilot 一年の振り返り
ponponmikankan
0
200
2025/06/05_読み漁り学習
nag8
0
140
JOAI2025講評 / joai2025-review
upura
0
160
マネジメント「される側」 こそ覚悟を決めろ
nao_randd
10
5.3k
Course Review - Lecture 12 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.7k
GitHubとAzureを使って開発者になろう
ymd65536
1
100
Webリテラシー基礎
takenawa
0
5.6k
2025年度春学期 統計学 第2回 統計資料の収集と読み方(講義前配付用) (2025. 4. 17)
akiraasano
PRO
0
140
Implicit and Cross-Device Interaction - Lecture 10 - Next Generation User Interfaces (4018166FNR)
signer
PRO
2
1.7k
Common STIs in London: Symptoms, Risks & Prevention
medicaldental
0
130
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019538FNR)
signer
PRO
1
2k
Featured
See All Featured
Music & Morning Musume
bryan
46
6.6k
Optimizing for Happiness
mojombo
379
70k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Balancing Empowerment & Direction
lara
1
390
How to train your dragon (web standard)
notwaldorf
94
6.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
How STYLIGHT went responsive
nonsquared
100
5.6k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
RailsConf 2023
tenderlove
30
1.1k
Transcript
Python講座演習 ~第二回~ 計算技術研究会(K3) IN2019
前回の復習 問1 Inputで入力したリストに対して最大値と 最小値を出力。(maxとminを利用しないで) evalの使い方: 結果:合計:6 Tip eval()という 命令を利用し よう。
evalは文字 列を評価して くれる。
解答例
解説 inputの中身をchar型からlistに読み直すためにevalを利用する。 リストの大小を比べたい。For文でリストの要素を比較する。 比較する要素はリストの中の要素でなければならないので一番大きい要素を格納する変数と小さい要 素を格納する変数はリストの一番最初のものを見る。 一番最初のものを見る理由→キーボード入力するためリストの長さが一定でないため。
一番大きいものを探すときは格納する変数より大きいとき変数に今比較している要素を代入 同じく小さいものはより小さい要素を格納するため格納していた要素より小さいものを変数に代入。
今回の目標 関数が使えるようになる
関数とは? ある入力に対してある出力がでるもの。 大雑把に種類分けすると「組み込み関数」と「ユー ザー定義関数」がある
組み込み関数 print,input,eval,len,sum,max,minなど pythonやその言語自体が提供する関数のこと。
ユーザー定義関数 自分でプログラミングして作った関数。 これから作り方を説明するよ☆
ユーザー定義関数 「def」で関数の作りはじめを宣言する。その横の 「plus」は作りたい関数の名前。その横の(x,y)は引数。 引数:関数内で利用したい 外部の変数 [return]はplus関数を呼び出したときに戻り値(返却 される値)を定義している。ここではzが戻り値。 Tips: ここのdefは 英語の
define(定義 する)から来 ているよ
ユーザー定義関数 使い方の例
演習問題① キーボードで入力した値に3が足される関数を作ろ う。
解答例
解説 作成する関数に値を入れたときその値に3を足して出力させたい 例:y=x+3 xが入力、yが出力
演習問題② 入力したint型のリストを引数にとって、その合計値 を返す関数を作成せよ。 入力例:[1, 5, 6, 9]
解答例
解説 入力したリストを読み込んでひとつひとつの要素を足していけばよい
演習問題③ キーボードで入力した速度vと角度θで斜方投射を行 うとき、その初速度のy成分が出力(表示)される ような関数を作成せよ。(mathを使ってもよい) θ v
解答例
解説 Mathを利用したいのでimport mathを書く Mathを利用したmath.sin(x)はxをラジアンとして入力しなければならないので math.radian(角度)によってラジアンに変更する。 ある速度vと角度θのときy成分はv*sin(θ)になるのでそれを出力する関数を作成 する
演習問題④ キーボード入力した任意の範囲の素数(1を含む) の列挙(表示)をする関数を作成せよ
解答例
解説 素数の条件はwikipediaより: 素数(そすう、英: prime number)とは、1 より大きい自然数で、正の約数が 1 と自分自身のみであるもののことである。正の約数の個数が 2
である自然数と言 い換えることもできる。1 より大きい自然数で素数でないものは合成数と呼ばれる (原文ママ) ある数字を持ってきたときそれが2以上の約数があるときそれは表示しないようにす ればよい。
参考元 https://ja.wikipedia.org/wiki/%E7%B4%A0%E6%95%B0