デジタル表現論・第4回

Similar documents
デジタル表現論・第6回

スライド 1

Microsoft PowerPoint - prog03.ppt

明解Javaによるアルゴリズムとデータ構造

(1) プログラムの開始場所はいつでも main( ) メソッドから始まる 順番に実行され add( a,b) が実行される これは メソッドを呼び出す ともいう (2)add( ) メソッドに実行が移る この際 add( ) メソッド呼び出し時の a と b の値がそれぞれ add( ) メソッド

プログラミングA

Method(C 言語では関数と呼ぶ ) メソッドを使うと 処理を纏めて管理することができる 処理 ( メソッド ) の再実行 ( 再利用 ) が簡単にできる y 元々はC 言語の関数であり 入力値に対する値を 定義するもの 数学では F(x) = 2x + 1 など F(x)=2x+1 入力値 (

プログラミング基礎I(再)

Prog1_6th

Java講座

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

Microsoft Word - java a.doc

新・明解Javaで学ぶアルゴリズムとデータ構造

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問

情報処理Ⅰ

JavaプログラミングⅠ

r1.dvi

ガイダンス

JavaプログラミングⅠ

Prog1_15th

PowerPoint プレゼンテーション

<4D F736F F D2091E F196E291E889F090E C4816A82CC838C E646F6378>

明解Java入門編

JAVA入門

Microsoft PowerPoint - chap10_OOP.ppt

Prog1_3rd

3 Java 3.1 Hello World! Hello World public class HelloWorld { public static void main(string[] args) { System.out.println("Hello World");

Microsoft PowerPoint ppt

新・明解Java入門

Program Design (プログラム設計)

新・明解Java入門

Javaプログラムの実行手順

プログラミング入門1

3,, となって欲しいのだが 実際の出力結果を確認すると両方の配列とも 10, 2, 3,, となってしまっている この結果は代入後の配列 a と b は同じものになっていることを示している つまり 代入演算子 = によるの代入は全要素のコピーではなく 先をコピーする ため 代入後の a と b は

プログラミング入門1

問題 01 以下は コンソールより年齢を入力させ その年齢にあった料金を表示するプログラムである 年齢ごとの金額は以下の通りである 年齢の範囲金額 0 歳以上 6 歳以下 120 円 7 歳以上 65 歳未満 200 円 65 歳以上無料 package j1.exam02; import java

JavaプログラミングⅠ

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def

Microsoft PowerPoint - prog09.ppt

本サンプル問題の著作権は日本商工会議所に帰属します また 本サンプル問題の無断転載 無断営利利用を厳禁します 本サンプル問題の内容や解答等に関するお問 い合わせは 受け付けておりませんので ご了承ください 日商プログラミング検定 STANDARD(Java) サンプル問題 知識科目 第 1 問 (

Microsoft PowerPoint - prog09.ppt

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 条件判断文 3 switch 文 switch 文式が case の値と一致した場合 そこから直後の break; までを処理し どれにも一致しない場合 default; から直後の break; までを処理する 但し 式や値 1

プログラミング入門1

メソッドのまとめ

JavaプログラミングⅠ

基本情報STEP UP演習Java対策

Javaによるアルゴリズムとデータ構造

問題1 以下に示すプログラムは、次の処理をするプログラムである

PowerPoint プレゼンテーション

明解Javaによるアルゴリズムとデータ構造

Week 1 理解度確認クイズ解答 解説 問題 1 (4 2 点 =8 点 ) 以下の各問いに答えよ 問題 bit 版の Windows8.1 に Java をインストールする時 必要なパッケージはどれか 但し Java のコンパイルができる環境をインストールするものとする 1. jdk

2

Prog1_2nd

メソッドのまとめ

break 文 switch ブロック内の実行中の処理を強制的に終了し ブロックから抜けます switch(i) 強制終了 ソースコード例ソースファイル名 :Sample7_1.java // 入力値の判定 import java.io.*; class Sample7_1 public stati

Microsoft PowerPoint - prog04.ppt

K227 Java 2

プログラミング入門1

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt)

プログラムの基本構成

Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN Exam's Question and Answers 1 from Ac

情報実習Ⅱ

プログラミング入門1

プログラミング入門1

DVIOUT-exer

JavaプログラミングⅠ

問 次の Fortran プログラムの説明及びプログラムを読んで、設問に答えよ。

ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする ) ためには 同期処理を用いるこ とが必要になる 同期処理は 予約語 synchronized で行うことができる ここでは sy

オブジェクト指向プログラミング・同演習 5月21日演習課題

Microsoft PowerPoint - ruby_instruction.ppt

基礎計算機演習 実習課題No6

文字列操作と正規表現

Microsoft PowerPoint Java基本技術PrintOut.ppt [互換モード]

JavaプログラミングⅠ

12.1 インターネットアドレス インターネットアドレス インターネットアドレス 32 ビットの長さを持つインターネットに接続されたマシンを識別するのに使う インターネットアドレスは ピリオドで区切られたトークンの並びで表現されることもある インターネットアドレス

Java言語 第1回

Microsoft Word - keisankigairon.ch doc

JavaプログラミングⅠ

2

Prog1_10th

JAVA とテンプレート

System.out.println("char : " + (int)character.min_value + "~" + (int)character.max_value); System.out.println("float : " + Float.MIN_VALUE + "~" + Flo

2016 年度 JAVA 講座第六週目 目次 パッケージ... 2 パッケージの作成... 2 パッケージの使用方法... 3 異なるパッケージ同名クラスの宣言... 4 パッケージの側面から見たアクセス修飾子... 4 ラッパークラス... 5 ラッパークラス利用法:キャスト... 5 ラッパーク

IT プロジェクト

GEC-Java

新・明解Javaで学ぶアルゴリズムとデータ構造

Microsoft Word - NonGenTree.doc

コンピュータ中級B ~Javaプログラミング~ 第3回 コンピュータと情報をやりとりするには?

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String

第二回独習 Java ゼミ 第二章クラスとメソッド 2.1 メソッドの構造 2.2 静的メソッドと静的変数の概要 2.3 インスタンスメソッドとインスタンス変数の概要 2.4 Integerクラス 2006/04/19 神津健太

JavaプログラミングⅠ

Microsoft Word - problem3.doc

できるプログラマーを本気で育てる Java 超 Webプログラマーへの第 歩 第 3 回コレクションと例外処理 テクノロジックアート 瀬嘉秀

Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲

JavaプログラミングⅠ

JavaプログラミングⅠ

2

た場合クラスを用いて 以下のように書くことが出来る ( 教科書 p.270) プログラム例 2( ソースファイル名 :Chap08/AccountTester.java) // 銀行口座クラスとそれをテストするクラス第 1 版 // 銀行口座クラス class Account String name


PowerPoint プレゼンテーション

Transcription:

デジタル表現論 第 4 回 劉雪峰 ( リュウシュウフォン ) 2016 年 5 月 2 日 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 1 / 14

本日の目標 Java プログラミングの基礎 出力の復習 メソッドの定義と使用 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 2 / 14

出力 Systemoutprint() と Systemoutprintln() は文字列を端末に出力するためによく使用されるメソッドである 変数 s を文字列とする 1) Systemoutprintln(s) は文字列 s の最後に自動的に改行 ( \n = n ) を加える 2) Systemoutprint(s) は改行なし 文字列 s を端末に出力する 3) Systemoutprintln(s) = Systemoutprint(s+ \n ) 例 : print s = " A " Systemoutprint(s); Systemoutprint(s); 出力 : A A println s = " A " Systemoutprintln(s); Systemoutprintln(s); 出力 : A A 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 3 / 14

メソッドの使用 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 4 / 14

メソッドを使ってみる 前回の授業の演習では 標準体重の計算をメソッドとしてまとめることができる import java util Scanner; public class Code4_1{ public static double Weight( double h){ return h*h*22; public static void main( String args[]){ double height; Scanner scan = new Scanner( Systemin); System out print(" Input height (m) : "); height = scan nextdouble(); System out println(" Standard weight:"+ Weight( height) + "kg"); 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 5 / 14

メソッドの定義 [ 修飾子 ] 戻り値のデータ型 メソッド名 ( 引数 1, 引数 2, ){ // メソッドの中身 説明 : 1) 修飾子は public static などを使用する 修飾子はそのメソッドがどこからアクセス可能なのかなどを示している 2) 戻り値のデータ型は int, double, String など 戻り値がない場合 void を使用すること 3) メソッド名はアルファベットまたはアンダーラインから始まる 数字で始まるのはいけない 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 6 / 14

メソッドの呼び出し メソッドの呼び出しは以下の形で行う // 戻り値のある場合変数 = メソッド名 ( 引数 1, 引数 2, ); // 戻り値のない場合メソッド名 ( 引数 1, 引数 2, ); 注意 : メソッドの呼び出し元の変数とメソッド内の変数は互いに独立である メソッド内の処理によって外部の変数を直接に修正することのはできない 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 7 / 14

メソッドの使用例 public class Code4_2{ public static void func1(){ System out println(" This is method 1"); System out println(" No input and no output"); public static int func2( int n){ return 2* n; public static void main ( String[] args) { func1(); int x=func2(10); System out println(" The return value of func2 is:"); System out println(x); //main //Code4_2 プログラムの実行の流れに注意しなさい 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 8 / 14

変数の有効範囲 メソッドの呼び出し元の変数とメソッド内の変数は互い独立である メソッド内の変数の有効範囲はメソッドの内部に限る 以下の例の結果を確認しましょう public class Code4_3{ public static void get_half( int n){ n = n/2; System out println(" In method get_half, n is "+n); public static void main ( String[] args) { int n=100; System out println(" Befor calling, n is "+n); get_half(n); System out println(" After calling, n is "+n); //main //Code4_3 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 9 / 14

演習 1) ここまでのサンプルコード 4_1, 4_2,4_3 を試してみて メソッドの使用方法を理解してください 2) 素数判定のコードにメソッドを導入する public class Report1{ public static boolean prime_check ( int n){ boolean is_prime = true;?? return is_prime; //prime_check public static void main ( String[] args) { for( int n=2;n <100; n++){ if( prime_check(n) ){ System out println(" Prime number:n="+n); //for loop with n //main //Report1 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 10 / 14

メソッドの引数が配列の変数である場合 配列である変数は当該配列のアドレスを格納している アドレスに対応する 配列の要素の値は変更できる public class Code4_5{ public static void set_array_value( int[] x){ x[0]=1; // set the first array element to 1 public static void main ( String[] args) { int[] x = new int[5]; x[0]=10; System out println(" Before: " + x[0]); set_array_value(x); System out println(" After: //main //Code4_5 " + x[0]); 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 11 / 14

メソッドの引数が配列の変数である場合 配列である変数は当該配列のアドレスを格納している アドレスに対応する 配列の要素の値は変更できる public class Code4_5{ public static void set_array_value( int[] x){ x[0]=1; // set the first array element to 1 public static void main ( String[] args) { int[] x = new int[5]; x[0]=10; System out println(" Before: " + x[0]); set_array_value(x); System out println(" After: //main //Code4_5 出力 : Before: 10 After: 1 " + x[0]); 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 11 / 14

レポート課題 以下のようなメソッドを定義しなさい 1) メソッド名は find_max_min とする 2) 引数は三つの整数である 3) 三つの引数の中で 最大数と最小数を画面に出力する 出力の例 : The maximum number is 30 The minimum number is 10 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 12 / 14

ヒント import javautilscanner; // 入力用 public class Report2{ public static void find_max_min(int x, int y, int z){ double max_value, min_value; // 最大値の計算 //Step 1: x と y を比較して 大きい値を max_value に格納する //Step 2: max_value と z を比較して 大きい値を max_value に格納する //Step 3: max_value には x,y,z の最大値が格納されているので //max_value を出力する public static void main (String[] args) { Scanner input = new Scanner(Systemin); // 入力用の変数 int x,y,z; Systemoutprintln("Please input x,y,z:"); x = inputnextint(); // 整数を入力 y = inputnextint(); z = inputnextint(); find_max_min(x,y,z); //main //Report2 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 13 / 14

レポート課題 [2]( オプション ) 以下のようなメソッドを定義しなさい 1) メソッド名は sort_array とする 2) メソッドの引数は整数型の配列である 3) 引数である配列の要素をソートして 小さいものから大きいものまでの順にする 4) メソッドの戻り値はないようにする 5) 配列の初期値は手動で設定するまたは端末から入力する 出力の例 : Before sorting, the array is: 10 20 9 5 13; After sorting, the array is: 5 9 10 13 20 劉 雪峰 ( リュウシュウフォン ) デジタル表現論 第 4 回 2016 年 5 月 2 日 14 / 14