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
基礎情報処理演習 (3)PADその2
Search
自然言語処理研究室
September 27, 2013
Programming
0
2.2k
基礎情報処理演習 (3)PADその2
自然言語処理研究室
September 27, 2013
Tweet
Share
More Decks by 自然言語処理研究室
See All by 自然言語処理研究室
データサイエンス14_システム.pdf
jnlp
0
380
データサイエンス13_解析.pdf
jnlp
0
490
データサイエンス12_分類.pdf
jnlp
0
340
データサイエンス11_前処理.pdf
jnlp
0
460
Recurrent neural network based language model
jnlp
0
140
自然言語処理研究室 研究概要(2012年)
jnlp
0
130
自然言語処理研究室 研究概要(2013年)
jnlp
0
98
自然言語処理研究室 研究概要(2014年)
jnlp
0
120
自然言語処理研究室 研究概要(2015年)
jnlp
0
190
Other Decks in Programming
See All in Programming
AIでLINEスタンプを作ってみた
eycjur
1
230
CloudflareのChat Agent Starter Kitで簡単!AIチャットボット構築
syumai
2
510
アセットのコンパイルについて
ojun9
0
130
Putting The Genie in the Bottle - A Crash Course on running LLMs on Android
iurysza
0
140
OSS開発者という働き方
andpad
5
1.7k
Oracle Database Technology Night 92 Database Connection control FAN-AC
oracle4engineer
PRO
1
470
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
340
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
240
私の後悔をAWS DMSで解決した話
hiramax
4
210
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
620
Testing Trophyは叫ばない
toms74209200
0
890
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The Cult of Friendly URLs
andyhume
79
6.6k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Context Engineering - Making Every Token Count
addyosmani
3
58
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
Typedesign – Prime Four
hannesfritz
42
2.8k
Documentation Writing (for coders)
carmenintech
74
5k
Fireside Chat
paigeccino
39
3.6k
Transcript
基礎情報処理演習 (3) PAD その2 山本和英 長岡技術科学大学 1
配列 配列とは一列に並んだ「箱」である。 • 箱の一つ一つは変数と同じ働きをする。 • それぞれの箱には数字を一つだけ入れることができる。 • 配列も、必要なだけ作ってよい。 配列の呼び方 •
配列全体で一つの名前をつける。 • 個々の箱(要素)には、配列の何番目という呼び方 をする。ただし、0番目から数えるところが違う。 長岡技術科学大学 電気系 基礎情報処理演習 2
配列の例 長岡技術科学大学 電気系 基礎情報処理演習 3
繰り返し(範囲) 範囲を指定した繰り返しを行う。例えば、 (a) 回数が決まっている場合(例:10回何かしたい) (b) 変数の値を変動させたい場合(例: p を20~40にしたい) このような場合に使う。 ここで、(a)
のように単に10回何かしたい場合も、変数を 変化させることで繰り返しを行う。例えば、 変数 w (変数名は何でもいい) を 1~10 (101~110でも何でもいい)に変化させる という操作で繰り返しを行う。 長岡技術科学大学 電気系 基礎情報処理演習 4
a ← 1 ~ 10 "こんにちは" どの変数を (変数名は何でもよい) いくつからいくつまで 減少方向(例:10~1)にはできない
何をする (処理は一つとは限ら ない。複数ある場合は 下に続ける) 長岡技術科学大学 電気系 基礎情報処理演習 5 書き方(例1)
a ← 5 ~ 14 "こんにちは" 単に同じ処理を10回繰り返すだけなら 変化させる数字は (右の数字が左の数字+9になっていれば) 何でもよい
長岡技術科学大学 電気系 基礎情報処理演習 6 書き方(例2)
a ← 1 ~ 10 変数の値を使って何かしたい場合 繰り返し変数 a の値を 表示させている
長岡技術科学大学 電気系 基礎情報処理演習 7 書き方(例3) "a回目の数字は p です!" p
i ← 1 ~ 5 S ← S + i
S ← 0 S S を初期化 i を 1,2,3,4,5で繰り返して S に S+i を代入 S を出力 長岡技術科学大学 電気系 基礎情報処理演習 8 書き方(例4)
繰り返し(前判定) 繰り返し(後判定) 長岡技術科学大学 電気系 基礎情報処理演習 9 どちらも、ある条件を満たす間はずっと繰り返す。 繰り返す回数を指定するのではなく、 それ以外の変数の値(例: k
が 0 かどうか)によって 繰り返しを続けるかどうかを決める。 これを繰り返し1回ごとに毎回判断する。 前判定と後判定は非常によく似ているが 使われ方が少し違う。次のスライドを参照。
a > 0 "あと a 回" (動作説明) a ← 10
a > 0 をチェックしてOK "あと10 回" a が 9 になる(a ← a – 1) a > 0 をチェックしてOK "あと9 回" a が 8 になる(a ← a – 1) … a > 0 をチェックしてOK "あと1 回" a が 0 になる(a ← a – 1) a > 0 をチェックしてNG (プログラム終了) 長岡技術科学大学 電気系 基礎情報処理演習 10 書き方(例1:カウントダウン) a ← a - 1 a ← 10
a > 4 a > 4 長岡技術科学大学 電気系 基礎情報処理演習 11
まず a > 4 をチェックして、正しければ右の処理を実行する。 条件によっては、右の処理が1回も実行されない。 まず右の処理を1回実行し、その後 a > 4 をチェックする。 どんな条件でも右の処理が最低1回は実行される。 前判定と後判定の違い どちらがいいという問題ではなく、場合によって使い分ける。
i < 5 S ← S + i S ←
0 S i ← i + 1 i < 5 i 継続条件 (もしこうなら右の処理を行う) ① ② 長岡技術科学大学 電気系 基礎情報処理演習 12 書き方(例2)
i < 5 S ← S + i S ←
0 S i ← i + 1 i < 5 i ① ② 条件のチェックよりも 処理を先に行う 長岡技術科学大学 電気系 基礎情報処理演習 13 書き方(例3) 例2と例3は同じ動作をしますか? それとも何か違いが出てきますか?