JAVA PROGRAMMING 실습 02. 표준 입출력

Similar documents
JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

PowerPoint Presentation

PowerPoint 프레젠테이션

JAVA PROGRAMMING 실습 08.다형성

PowerPoint Presentation

JAVA PROGRAMMING 실습 05. 객체의 활용

PowerPoint Presentation

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

슬라이드 1

PowerPoint 프레젠테이션

PowerPoint Presentation

PowerPoint Presentation

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

JAVA PROGRAMMING 실습 09. 예외처리

금오공대 컴퓨터공학전공 강의자료

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

Microsoft PowerPoint - Java7.pptx

PowerPoint Presentation

슬라이드 1

Microsoft PowerPoint - ch07 - 포인터 pm0415

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

쉽게

슬라이드 1

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

PowerPoint 프레젠테이션

설계란 무엇인가?

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

Design Issues

02장.배열과 클래스

11장 포인터

(8) getpi() 함수는정적함수이므로 main() 에서호출할수있다. (9) class Circle private double radius; static final double PI= ; // PI 이름으로 로초기화된정적상수 public

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

Microsoft PowerPoint - 2강

JVM 메모리구조

KNK_C_05_Pointers_Arrays_structures_summary_v02

PowerPoint Presentation

C 언어 프로그래밊 과제 풀이

Microsoft PowerPoint - hci2-lecture4.ppt [호환 모드]

Microsoft PowerPoint - 3장

Microsoft PowerPoint - hci2-lecture4 [호환 모드]

설계란 무엇인가?

Microsoft PowerPoint - chap10-함수의활용.pptx

PowerPoint 프레젠테이션

Slide 1

Microsoft PowerPoint - chap06-1Array.ppt

목차 배열의개요 배열사용하기 다차원배열 배열을이용한문자열다루기 실무응용예제 C 2

gnu-lee-oop-kor-lec06-3-chap7

Microsoft PowerPoint - chap06-2pointer.ppt

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - 제11장 포인터(강의)

PowerPoint 프레젠테이션

Microsoft PowerPoint 장강의노트.ppt

Microsoft PowerPoint - chap11-포인터의활용.pptx

PowerPoint 프레젠테이션

JAVA PROGRAMMING 실습 02. 표준 입출력

Microsoft PowerPoint - C++ 5 .pptx

JAVA PROGRAMMING 실습 02. 표준 입출력

TEST BANK & SOLUTION

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

untitled

Microsoft PowerPoint - 7장 배열 pptx

JAVA PROGRAMMING 실습 02. 표준 입출력

Microsoft PowerPoint - 제11장 포인터

(Microsoft PowerPoint - java1-lecture11.ppt [\310\243\310\257 \270\360\265\345])

PowerPoint Presentation

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

PowerPoint 프레젠테이션

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

PowerPoint 프레젠테이션

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp

교육자료

제 11 장포인터 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

Microsoft PowerPoint - chap-11.pptx

Java ...

PowerPoint 프레젠테이션

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

슬라이드 1

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

슬라이드 1

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

PowerPoint Presentation

PowerPoint Presentation

PowerPoint Presentation

쉽게 풀어쓴 C 프로그래밍

PowerPoint Template

PowerPoint Template

PowerPoint 프레젠테이션

PowerPoint Presentation

Microsoft PowerPoint - chap06-5 [호환 모드]

쉽게 풀어쓴 C 프로그래밍

4장.문장

금오공대 컴퓨터공학전공 강의자료

JUNIT 실습및발표

Microsoft PowerPoint - CSharp-2-기초문법

17장 클래스와 메소드

Microsoft PowerPoint - java1-lecture3.ppt [호환 모드]

중간고사

PowerPoint 프레젠테이션

Transcription:

# 메소드의구조자주반복하여사용하는내용에대해특정이름으로정의한묶음 반환형메소드이름 ( 매개변수 ) { 실행문장 1; : 실행문장 N; }

메소드의종류 Call By Name : 메서드의이름에의해호출되는메서드로특정매개변수없이실행 Call By Value : 메서드를이름으로호출할때특정매개변수를전달하여그값을기초로실행하는메서드 Call By Reference : 메서드호출시매개변수로사용되는값이특정위치를참조하는 reference 변수

@ 클래스메소드접근형식 (static으로선언 ) 클래스이름. 클래스메소드이름 ( 실매개변수 ) @ 일반메소드접근형식객체이름. 객체메소드이름 ( 실매개변수 ) @ 실매개변수 : 메소드에넘겨주는매개변수형식매개변수수, 데이터형일치실매개변수값 -> 형식매개변수에값복사 @ 같은클래스의클래스메소드 (static) 인경우클래스이름없이메소드이름 ( 실매개변수 ) 로호출

main mymethod mymethod();

public class Exma { public static void view_star() { System.out.println("*****"); } public static void main(string[] ar) { view_star(); System.out.println( 장동건 "); view_star(); view_star(); System.out.println( AOA"); System.out.println( 걸스데이 "); view_star(); } } 매개변수없이실행

public class Exam2 { public static void view_star(int y, int x) { } } for(int j = 0; j < y; ++j) { for(int I = 0; I < x; ++i) { System.out.print( * ); } System.out.println(); } return; public static void main(string[] args) { view_star(2, 5); System.out.println( 둘리 "); view_star(3, 3); view_star(2, 10); System.out.println(" 희동이 "); System.out.println(" 또치 "); view_star(4, 7); return; }

@ return 문수행을마친후결과값을되돌려줄때사용 예 ) static double fineaver(int a, int b){ double c; c = ( a + b ) / 20; return c; }

static int findmin(int number1, int number2) { int minimum; if (number1 < number2) minimum = number1; else minimum = number2; return minimum; } 메소드호출 : minvalue = findmin(value1, value2);

@ 재귀메소드자기자신을호출하는메소드 예제 ) 1 부터 N( > 1) 까지의합을구하는메소드 sum(n) = 1 + 2 +... + N N=1 인경우 sum(1) = 1 N>=2 인경우 sum(n) = sum(n - 1) + N sum(4) = 4 + sum(3) 3+sum(2) 2+sum(1) 1

static int findsum(int N) { int sum; if (N == 1) sum = 1; else sum = findsum(n-1) + N; return sum; }

@ 한클래스내에서같은이름의메소드사용 @ 같은이름의메소드는매개변수의타입, 개수가달라야함 @ 매개변수의개수나타입에맞는메소드수행

@ 문제!!! 세정수의평균을구하는메소드를작성하라 @ 알고리즘 1. 평균을저장하는변수를선언한다 2. 평균은세정수들의합을 3으로나누어구한다 3. 구한평균값을반환한다

static double findaver(int num1, int num2, int num3) { double aver; aver = (num1+ num2 + num3) / 3.0; return aver; }

@ 실습문제 1 문제 # 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. # 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math 클래스의적절한메소드를이용하여구하라.(Math.sqrt()) # 작성된메소드들을사용하여주어진직사각형모양의땅의둘레, 면적과대각선의길이를구하는프로그램을작성하라.

# 배열 (array) 인덱스와인덱스에대응하는데이터들로이루어진자료구조 배열을이용하면한번에많은메모리공간선언가능 배열에는같은종류의데이터들이순차적으로저장하는공간 데이터들이순차적으로저장됨 반복문을이용하여처리하기에적합한자료구조 배열인덱스 0 부터시작 인덱스는배열의시작위치에서부터데이터가있는상대적인위치

c/c++ 와다르게다음의두단계가필요

배열선언과배열생성의두단계필요 배열선언 int char float intarray[]; chararray[]; floatarray[]; int[] char[] float[] intarray; chararray; floatarray; 배열생성 intarray = new int[10]; chararray = new char[20]; floatarray = new float[5]; int char float intarray[] = new int[10]; chararray[] = new char[20]; floatarray[] = new float[5]; 선언과초기화 배열이생성되면서원소의값이초기화됨 int intarray[] = {0,1,2,3,4,5,6,7,8,9};

기본형

* 생성된하나의배열을다수의레퍼런스가참조가능

배열원소접근 반드시배열생성후접근 int intarray []; intarray[4] = 8; // 오류, intarray 가초기화되어있지않음 배열변수명과 [] 사이에원소의인덱스를적어접근 배열의인덱스는 0 부터시작 배열의마지막항목의인덱스는 ( 배열크기 1) int[] intarray; intarray = new int[10]; intarray[3]=6; // 배열에값을저장 int n = intarray[3]; // 배열로부터값을읽음

@ 실습문제 2 문제 # 크기가 5 인배열을생성하여키보드로부터숫자를입력받아배열의요소에저장하고, 최대값과최소값을출력하는프로그램이다. # for 문을사용해서출력한다.

배열이만들어질때크기가정해짐 크기가 N 인배열은 0~ N-1 사이의지수 (index) 를가짐 배열요소가사용될때마다지수가범위내에있는지를자동으로검사 배열지수가범위를벗어나면 ArrayIndexoutOfBoundsException 예외발생 예 char[] grades = new char[100]; for(int index = 0; index <= 100; index++) System.out.println(grades[index]); 위코드에서배열의지수는 0 ~ 99 그러나 for 문에서 index 가 100 이될수있음 -> 오류

배열인덱스 인덱스는 0 부터시작하며마지막인덱스는 ( 배열크기 -1) 인덱스는정수타입만가능 int intarray = new int[5]; int n = intarray[-2]; // 실행오류. -2 는인덱스로적합하지않음 int m = intarray[5]; // 실행오류. 5 는인덱스의범위 (0~4) 를넘었음 for-each 문 배열이나나열의각원소를순차적으로접근하는데매우유용함. 이외에는기본 for 문을사용하는것이좋음. Int[] num = {1, 2, 3, 4, 5}; int sum = 0; for(int i : num) // 반복될때마다 i 는 num[0], num[1],, num[4] 값을설정됨 sum += i; System.out.println( 합은 +sum);

배열의길이를구하는객체 length 배열의크기는배열레퍼런스변수를선언할때결정되지않음 배열의크기는배열생성시에결정되며, 나중에바꿀수없음 배열의크기는배열의 length라는필드에저장 Int intarray[]; IntArray = new int[5]; int size = intarray.length; //size 는 5 가된다.

2 차원배열선언 int intarray[][]; char chararray[][]; float floatarray[][]; int[][] intarray; char[][] chararray; float[][] floatarray; 2 차원배열생성 intarray = new int[2][5]; chararray = new char[5][5]; floatarray = new float[5][2]; int char float intarray[] = new int[2][5]; chararray[] = new char[5][5]; floatarray[] = new float[5][2]; 2 차원배열선언, 생성, 초기화 int intarray[][] = {{0,1,2},{3,4,5},{6,7,8}}; char chararray[][] = {{'a', 'b', 'c'},{ d'.'e','f'}}; float floatarray[][] = {{0.01, 0.02}, {0.03, 0.04}};

2 차원배열의 length i.length -> 2차원배열의행의개수로서 2 i[n].length는 n번째행의열의개수 i[0].length -> 0번째행의열의개수로서 5 i[1].length -> 1번째행의열의개수로서역시 5

@ 실습문제 3 문제 # 한회사의지난 3 년간분기별매출의총액과연평균매출을구하는프로그램을작성하라. # 이때, 2 차원배열을생성한후, 반복문에서 length 필드를사용하여합계와평균을구한다.

정방형배열 각행의열의개수가같은배열 비정방형배열 각행의열의개수가다른배열비정방형배열의생성

비정방형배열의 length i.length -> 2차원배열의행의개수로서 4 i[n].length는 n번째행의열의개수 i[0].length -> 0번째행의열의개수로서 1 i[1].length -> 1번째행의열의개수로서 2 i[2].length -> 2번째행의열의개수로서 3 i[3].length -> 3번째행의열의개수로서 4

배열전체가메소드의매개변수로넘겨질수있음. -> 배열객체에대한참조가넘겨짐 형식매개변수들과실제매개변수들이서로별명 메소드내에서배열요소를바꾸면원요소바뀜. -> 참조값을넘기기때문에 (call by reference)

메소드가리턴하는배열 메소드가리턴하는배열의타입과차원은리턴받는배열레퍼런스의 타입과차원에일치해야함 리턴타입에배열의크기를지정하지않음