SlideShare une entreprise Scribd logo
1  sur  44
XMLPro 16回目
前回の復習
配列をソート + 問題
2
配列のソート
3
問題
• 整数で表した 10 個のデータがあります。その 10 個
のデータを読み込んで、その中で、高い順から3つ
出力して終了するプログラムを作成して下さい。
• 記録
1819 ,2003, 876, 2840 ,1723 ,1673, 3776 ,2848, 1592,
922
4
解答
•
5
問題2
• 整数 n を入力し、n の階乗を出力して終了するプロ
グラムを作成して下さい。
• ただし、n は、1 以上 20 以下とします。
6
解答
7
問題3
• 正の整数 a, b を入力したとき、a と b の最大公約数
と最小公倍数を出力して終了するプログラムを作成
して下さい。
8
解答
9
• ソースは第15回にxmlpro0619ans.zipとしてあ
げてあります
10
本日の内容
メソッド
11
はじめに
• プログラムでは同じような処理を何度も記述
しなければならないことがあります
• そんな処理を一つの機能としてまとめて、必
要に応じて利用できるようにしておくと便利で
す。
↓
• その纏めた処理の塊をメソッドといいます
12
メソッドとは?
• 数学的には、f(x) = 2x + 3 とか書いたりする物です。
• プログラム的には上の数学的なものも作れるし、実
際それもあるのですが、一般的には
「名前をつけて定義した、一連の処理」
というものです。
いままでのプログラム
15
←パッケージ宣言
←クラス名の宣言
←クラスの終了
プログラムを実行するとこのmainメ
ソッド内の処理を上から順に実行しま
す!!
16
↓mainメソッド!!
←パッケージ宣言
←クラス名の宣言
←クラスの終了
メソッドをつくろう
書いてみて
18
↓mainメソッド!!
↓作ったメソッド!!
←メソッドを呼び出す
実行
• 実行すると・・・
19
メソッドが呼び出されると・・・
• ①普通の出力
• ② ←メソッドの呼び出し
メソッドの中身を処理
20
動作の流れ
21
• 理解してほしいことはプログラムを実行したと
き、処理の順番はmainメソッド内の上から順
番です!!
• mainメソッド内で呼び出されなければ作ったメ
ソッドは処理されません!!
22
書き方の例
修飾子 戻り値の型 メソッド名(引数1, 引数2, ....){ }
①戻り値なし
public void show() {
}
②戻り値あり
public int sum() {
return ******;
}
23
やってみて
• 名前と学年、学部を表示するメソッドを作成す
る
• 作ったメソッドを10回表示する処理を作成す
る。
24
答え
25
戻り値
さっきのに追加 書いてみて
27
• 実行するとmain文の出力にreturnの部分に
書いたものが出力されているこれを
戻り値、返り値と呼んでいる
28
戻り値
• メソッドには戻り値を指定することができます
戻り値とはそのメソッドを呼び出したときに
返される値です
戻り値がある場合は必ず
「return 戻り値;」
が必要です!!
29
return
• 関数の最後に、return (値)
と書くと、関数はその値を「返す」
ことになります。
• 関数が値を「返す」と、関数を「呼び出した」
ところが、変数みたいにその数値になります。
• あと、値を返すには、関数の宣言のときに
「返す変数の型」を決めておかないとダメです。
戻り値なし
• 戻り値なしのときはvoidを記述します
例:
public void show() {
System.out.println("さよなら世界");
}
31
戻り値あり(int,String,double,boolean
などなど)
• 戻り値ありならreturn文が必要です。
• returnの半角スペース空けたあとに記述した
部分が戻り値になります 「return 戻り値;」
例:
public int sum() {
return 5+4;
}
32
戻り値あり(int,String,double,boolean
などなど)
戻り値ありのメソッドは処理が別のところに書い
てある変数や計算と同じ
33
引数
機能その2 関数の引数
• 関数は、数学の関数がそうであるように、
呼ばれるときに数をもらう事ができます。
• 関数がもらう数を「引数」と呼びます。
• 数をもらう関数の書き方と
関数に数をあげる方法を、
実際に見てみましょう。
書いてみて
36
実行結果
• 2行目の4がshow()が実行されたときの出力
37
引数
• メソッドを作成するときmainメソッドから値をそ
のメソッドに渡すことができます。
この数を引数といいます
38
引数2
• 引数を渡す方法はメソッドを呼び出すときに
渡したい値を入れます↓
• そしてメソッドには受け取った引数にあった型
の変数を用意します この変数はこのメソッド
内で使用できます
39
引数3
「,」で区切れば複数渡せます
show(4,5,”HelloWorld”);
40
使用例
• 3倍して5足すメソッド
public static int function(int a){
int num=a*3+5;
return num;
}
41
引数図解
問題
引数を2つを受け取り、BMIを返すBMIメソッドを
作成
BMIは体重(kg)÷身長(m)^2
で求められる
例)170cm,60kgで計算する
60/(1.7*1.7) = 20.76124567474048
43
追加問題
• 身長を渡すとBMIにもとづいて適正体重を返
すBMIメソッドをを作成する
• 適正体重はBMIが22の時の体重とする。
44
まとめ:関数の定義方法図解
いつも書くも
の
返り値の
型
関数
名前
引数
の型
引数の
名前
返り値
の値

Contenu connexe

Similaire à 基礎構文班 16回目 メソッド

新しくプログラミング言語・・・Rubyでやってみた
新しくプログラミング言語・・・Rubyでやってみた新しくプログラミング言語・・・Rubyでやってみた
新しくプログラミング言語・・・RubyでやってみたTomoaki Ueda
 
ji-5. 繰り返し計算
ji-5. 繰り返し計算ji-5. 繰り返し計算
ji-5. 繰り返し計算kunihikokaneko1
 
基礎構文班13回目 問題回
基礎構文班13回目 問題回基礎構文班13回目 問題回
基礎構文班13回目 問題回XMLProJ2014
 

Similaire à 基礎構文班 16回目 メソッド (6)

cp-7. 配列
cp-7. 配列cp-7. 配列
cp-7. 配列
 
新しくプログラミング言語・・・Rubyでやってみた
新しくプログラミング言語・・・Rubyでやってみた新しくプログラミング言語・・・Rubyでやってみた
新しくプログラミング言語・・・Rubyでやってみた
 
ji-5. 繰り返し計算
ji-5. 繰り返し計算ji-5. 繰り返し計算
ji-5. 繰り返し計算
 
基礎構文班13回目 問題回
基礎構文班13回目 問題回基礎構文班13回目 問題回
基礎構文班13回目 問題回
 
Lt会01_uetch
Lt会01_uetchLt会01_uetch
Lt会01_uetch
 
Test12 16
Test12 16Test12 16
Test12 16
 

Plus de XMLProJ2014

Plus de XMLProJ2014 (20)

Java班講義資料第3回
Java班講義資料第3回Java班講義資料第3回
Java班講義資料第3回
 
Java班講義資料第2回
Java班講義資料第2回Java班講義資料第2回
Java班講義資料第2回
 
第1回Java講義資料
第1回Java講義資料第1回Java講義資料
第1回Java講義資料
 
00環境構築
00環境構築00環境構築
00環境構築
 
Mash up awards(クリスマス会)
Mash up awards(クリスマス会)Mash up awards(クリスマス会)
Mash up awards(クリスマス会)
 
きのこたけのこ戦争
きのこたけのこ戦争きのこたけのこ戦争
きのこたけのこ戦争
 
クリパ用Lt2014
クリパ用Lt2014クリパ用Lt2014
クリパ用Lt2014
 
ポケモン解説
ポケモン解説ポケモン解説
ポケモン解説
 
クリスマス会Lt
クリスマス会Ltクリスマス会Lt
クリスマス会Lt
 
一年ツイッター
一年ツイッター一年ツイッター
一年ツイッター
 
C++班
C++班C++班
C++班
 
C#班
C#班C#班
C#班
 
Web班
Web班Web班
Web班
 
Web 11
Web 11Web 11
Web 11
 
Web 09
Web 09Web 09
Web 09
 
Android班第4回
Android班第4回Android班第4回
Android班第4回
 
Web 10
Web 10Web 10
Web 10
 
OpenSource
OpenSourceOpenSource
OpenSource
 
百合について
百合について百合について
百合について
 
Web 08
Web 08Web 08
Web 08
 

基礎構文班 16回目 メソッド

Notes de l'éditeur

  1. { ~~~~ } で範囲を区切ってる
  2. { ~~~~ } で範囲を区切ってる
  3. メソッドを呼び出さないで実行とメソッドを呼び出して実行で比べてみる
  4. 修飾子の話はクラスのときします publicだとどこからでもアクセスできますよ ってことなのでとりあえずpublicにしておけばおk