計算機プログラミングI 第5回 2002年11月7日(木) 配列: 沢山のデータをまとめたデータ どんなものか どうやって使うのか

Slides:



Advertisements
Similar presentations
アルゴリズムとプログラミン グ (Algorithms and Programming) 第6回:クラスとインスタンス クラスの宣言 アクセス修飾子 インスタンスの生成 (new キーワード) this キーワード フィールドとメソッドの実際の定義と使い 方 クラスの宣言 アクセス修飾子 インスタンスの生成.
Advertisements

山元進.  for 文  while 文  do ~ while 文  文のネスト  break 文  continue 文.
プログラミング実習 1 ・ 2 ク ラス 第 2 週目 担当教員 : 渡邊 直樹. 課題 2 ● 2 × 2型行列の固有値, 固有ベクトルを求め る EigMatrix.java というプログラムを作成せ よ。 ● 行列の各要素はコマンド・プロンプトから入力 ● 計算した結果もコマンド・プロンプトに表示.
6.4継承とメソッド 6.5継承とコンストラクタ 11月28日 時田 陽一
Applet 岡部 祐典 鈴木 敬幸.
~手続き指向からオブジェクト指向へ(Ⅰ)~
プログラミング基礎I(再) 山元進.
アルゴリズムとデータ構造1 2007年6月12日
アルゴリズムとプログラミング (Algorithms and Programming)
プログラミング基礎I(再) 山元進.
プログラミング基礎I(再) 山元進.
第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.
String - 文字列 2009年10月9日 7ADD2116 佐藤洋輔.
アルゴリズムとデータ構造 2011年6月13日
アルゴリズムとプログラミング (Algorithms and Programming)
計算機プログラミングI 第12回 2003年1月23日(木) インターフェース スレッド 最後に お知らせ クイズ 授業アンケート
繰り返し プログラミング 第4回 繰り返し プログラミング第4回.
プログラミングIII演習 第1回目.
第2章 Eclipseと簡単なオブジェクト 指向プログラミング
第20章 Flyweight ~同じものを共有して無駄をなくす~
オブジェクト指向入門.
計算機プログラミングI 第8回 2002年12月5日(木) メソッドとクラス (教科書6章) クイズ インスタンスメソッド インスタンス変数
精密工学科プログラミング基礎Ⅱ 第3回資料 今回の授業で習得してほしいこと: 2次元配列の使い方 (前回の1次元配列の復習もします.)
第6回独習Javaゼミ 第6章 セクション4~6 発表者 直江 宗紀.
情報処理技法 (Javaプログラミング)2 第2回 前期の復習(2)
11.6 ランダムアクセスファイル 11.7 StreamTokenizerクラス
プログラミング言語入門 手続き型言語としてのJava
アルゴリズムとプログラミング (Algorithms and Programming)
オブジェクト指向 プログラミング 第八回 知能情報学部 新田直也.
独習JAVA 6.8 コンストラクタの修飾子 6.9 メソッドの修飾子 6.10 ObjectクラスとClassクラス 11月28日(金)
オブジェクト指向 プログラミング 第十一回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第十三回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第二回 知能情報学部 新田直也.
前回の練習問題.
オブジェクト指向 プログラミング 第七回 知能情報学部 新田直也.
7.4 intanceof 演算子 7.5~7.9パッケージ 2003/11/28 紺野憲一
計算機プログラミングI 第11回 再帰 再帰的なメソッド定義 帰納的定義 再帰的なデータ構造 計算機プログラミングI (増原) 2003年度.
P n ポインタの基礎 5 q m 5 7 int* p; int 型の変数を指すポインタ int* q; int 型の変数を指すポインタ int n=5, m=7; int 型の変数 int array[3]; int* pArray[3]; p = &n; ポインタにアドレスを代入しているのでOK.
アルゴリズムとデータ構造1 2005年6月24日
アルゴリズムとデータ構造 2010年6月21日
オブジェクト指向 プログラミング 第六回 知能情報学部 新田直也.
計算機プログラミングI 第5回 配列 文字列(Stringクラス) mainの引数 配列の利用例
オブジェクト・プログラミング 第8回.
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
計算機プログラミングI 第8回 素数を見つけるアルゴリズム 継承とインスタンスメソッド クラスの設計 オブジェクトに機能を加える
プログラミング基礎a 第6回 C言語によるプログラミング入門 配列と文字列(その2)
オブジェクト プログラミング 第2回 プログラムの基本.
アルゴリズムとプログラミング (Algorithms and Programming)
オブジェクト指向 プログラミング 第九回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第八回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第六回 知能情報学部 新田直也.
プログラミング言語論 第十一回 理工学部 情報システム工学科 新田直也.
計算機プログラミングI 木曜日 1時限・5時限 担当: 増原英彦 第1回 2002年10月10日(木)
計算機プログラミングI 第3回 プリミティブ値 クラスメソッド クラス変数 式と演算 変数の利用
アルゴリズムとデータ構造 2012年6月11日
アルゴリズムとプログラミング (Algorithms and Programming)
暗号技術 ~JAVAプログラム②~ (6週目)
計算機プログラミングI 第4回 2002年10月31日(木) 問題解決とアルゴリズム クラスメソッドと手続きの抽象化 最大公約数
アルゴリズムとデータ構造1 2009年6月15日
精密工学科プログラミング基礎 第7回資料 (11/27実施)
JAVA入門⑥ クラスとインスタンス.
アルゴリズムとデータ構造 2010年6月17日
精密工学科プログラミング基礎Ⅱ 第2回資料 今回の授業で習得してほしいこと: 配列の使い方 (今回は1次元,次回は2次元をやります.)
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
プログラミング基礎a 第5回 C言語によるプログラミング入門 配列と文字列
プログラミング入門2 第5回 配列 変数宣言、初期化について
オブジェクト指向 プログラミング 第六回 知能情報学部 新田直也.
オブジェクト指向言語論 第十回 知能情報学部 新田直也.
計算機プログラミングI 第2回 2002年10月17日(木) 履習登録 複習 ライブラリの利用 (2.6-7) 式・値・代入 (2.6-8)
計算機プログラミングI 第10回 2002年12月19日(木) メソッドの再定義と動的結合 クイズ メソッドの再定義 (オーバーライド)
Presentation transcript:

計算機プログラミングI 第5回 2002年11月7日(木) 配列: 沢山のデータをまとめたデータ どんなものか どうやって使うのか どういうときに使うのか Stringクラス mainメソッドの引数 配列を使ったアルゴリズム クイズ

配列とは何か 変数の列を1つにまとめたオブジェクト (cf. ベクトル・数列) 番号で 個々の 変数を 指定できる 3 1 9 11 8 4 5 17 24 hm = marks =

Turtleオブジェクトを 10個入れることのできる 配列を作る 配列の使い方 public class T51 { public static void main(String[] args){ TurtleFrame f = new TurtleFrame(600,300); Turtle[ ] hm = new Turtle[10]; for(int i = 0 ; i < 10; i++){ hm[i] = new Turtle(i * 50 + 25,150,0); f.add(hm[i]); } //略 Turtleオブジェクトを 10個入れることのできる 配列を作る 配列のi番目 Turtle

配列の使い方: 作る int [ ] marks = new int [10]; new Turtle[10] ――10個のTurtleオブジェクトをしまう 配列を作る (中身は全てnull) int [ ] ――整数(int)をしまう配列の型 Turtle [ ] ――Turtleオブジェクトをしまう配列の型

配列の使い方: 作る new Turtle [ ] { new Turtle(), new Turtle() }; Turtle [ ] hm; ―― 配列をしまう変数を宣言 hm = new Turtle [ ] { new Turtle(), new Turtle() }; ―― 配列を作り、代入 Turtle [ ] hm = new Turtle [ ] { new Turtle(), new Turtle() }; Turtle [ ] hm = { new Turtle(), new Turtle() };

配列の使い方: 使う hm[i] 配列のi番目 (先頭は0番目) 値をとり出す・代入する hm.length 配列の長さ hm → Turtle[ ] hm = ...; for(int i = 0 ; i < hm.length; i++){ hm[i] = new Turtle(i * 50 + 25,150,0); f.add(hm[i]); } hm[i] 配列のi番目 (先頭は0番目) 値をとり出す・代入する hm.length 配列の長さ hm →

多次元の配列 Turtle [ ] [ ] hm = new Turtle[3][4]; hm[1][2] hm → Turtle

多次元の配列 Turtle [ ] [ ] hm = new Turtle[3][4]; hm[1][2] hm →

練習 5.3 初期値をもった配列を使って 辺の長さを自由に変える 5.6 座標系に注意 5.3 初期値をもった配列を使って 辺の長さを自由に変える 5.6 座標系に注意 5.8 5.6で「グラフを描く クラスメソッド」を定義 しておくと簡単 (400,0) (0,400)

Stringクラス・mainの引数 5.4 Stringクラス 5.5 mainの引数 文字列を表わすオブジェクトのクラス “x=” + x ―― 文字列への変換・文字列の結合 5.5 mainの引数 public static void main(String[] args) { java T21 red 10 として起動した場合 args = new String [ ] { “red”, “10” } として実行される

配列を使ったアルゴリズム 素数 単純 エラトステネスのふるい 組み合わせ数

xが素数かを判定 単純なもの エラトステネスのふるい xの最小の約数を見つける それがxならば素数 x以下の全ての数が「素数かも知れない」 最小の「素数かも知れない」数は素数 素数の倍数は「素数でない」 2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,...

組み合わせ数 mCn = 1 (n=0, n=mのとき) m-1Cn + m-1Cn-1 (それ以外) 3C0 3C1 3C2 3C3

練習 Args51.javaを理解する 資料5.2, 5.5 教科書5.9-13