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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
sk
May 16, 2019
Education
0
66
Python2019-2
sk
May 16, 2019
Tweet
Share
More Decks by sk
See All by sk
Python講座演習4.pdf
shuy_k3
0
75
Python講座第3回.pdf
shuy_k3
0
64
Python2019-1
shuy_k3
0
94
Other Decks in Education
See All in Education
NUTMEG紹介スライド
mugiiicha
0
870
【ZEPホスト用メタバース校舎操作ガイド】
ainischool
0
170
1014
cbtlibrary
0
520
Leveraging LLMs for student feedback in introductory data science courses (Stats Up AI)
minecr
0
160
2025年度伊藤正彦ゼミ紹介
imash
0
160
都市の形成要因と 「都市の余白」のあり方
sakamon
0
150
Evaluation Methods - Lecture 6 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
1.3k
The browser strikes back
jonoalderson
0
360
核軍備撤廃に向けた次の大きな一歩─核兵器を先には使わないと核保有国が約束すること
hide2kano
0
230
0121
cbtlibrary
0
120
1216
cbtlibrary
0
140
The Next Big Step Toward Nuclear Disarmament
hide2kano
0
210
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
2.2M
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
49
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
320
Being A Developer After 40
akosma
91
590k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
We Have a Design System, Now What?
morganepeng
54
8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Paper Plane (Part 1)
katiecoart
PRO
0
4k
The SEO identity crisis: Don't let AI make you average
varn
0
64
[SF Ruby Conf 2025] Rails X
palkan
0
740
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
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