검색어 입력폼

Lab6

저작시기 2014.04 |등록일 2014.06.28 워드파일MS 워드 (docx) | 7페이지 | 가격 1,000원

목차

1. 문제 : 다음 프로그램의 실행 결과에 대하여 그 과정을 자세히 설명하시오.(3점)
2. 문제 : 복수개의 성, 이름, 및 나이들을 파일로부터 읽어 들여 저장하고, 이를 출력하는 프로그램을 작성하시오. 이를 위해 각각의 사람 정보(성,이름, 나이)를 저장하기 위한 people 클래스와, ArrayList 클래스를 사용하시오. 파일의 이름은 실행시에 명령줄에서 받으며 출력문은 ArrayList 클래스의 toString 메쏘드를 사용하여야 한다.(3점)
3. 문제 : sum_array 함수를 완성하여 2차원 배열 A와 B의 모든 원소의 합을 구하는 프로그램을 완성하시오.(2점)
4. 문제 : 파스칼의 삼각형이란 다음과 같이 위의 두개의 원소 아래에 그것을 합한 값을 배열하고 약 끝에는 1을 위치하는 방식으로 만들어지는 삼각형을 말한다.(4점)

본문내용

(1) 문제 : 다음 프로그램의 실행 결과에 대하여 그 과정을 자세히 설명하시오.(3점)
먼저 main method를 보면 각각의 변수들이 선언 되어있다. 정수형 타입인 i1은 100으로 초기화, n1은 Num클래스에 222 생성자 값을 넣고 Num클래스를 인스턴스로 참조하는 변수로 선언되어있다. 문자열 타입인 s1은 “abc”로 선언되었으며 a1은 크기가 5이며 각각에 1,2,3,4,5의 값을 가지는 배열로 선언 되어있다.
메소드 change(i1,n1,s1,a1,a1[0])을 실행하면 정수인 i1=100 은 단지 2를 곱하여 assign 하여 i의 값은 200이 된다. n.setValue(333) 역시 n은 Num클래스를 참조하는 변수로 333을 전달하게 되고 System.out.println(n)에 의해 자동으로 toString method가 출력되면서 (333)을 출력하게 된다. s.toUpperCase()의 경우 소문자를 대문자로 바꿔주는 method이며 새로운 객체를 생성하여 반환하므로 기존에 있던 객체와는 다른 객체이다. 그러므로 ABC로 출력되며 반복문을 통한 a[i]*=10은 각 배열의 원소에 10을 곱하여 출력되었다. 마지막 a0는 a1[0]의 값인 1을 받게 되며 1*100이 되어 100이 출력되게 된다. change메소드의 수행을 마치고 main 부분에서 지역 변수로 선언된 int i1 은 변경되지 않으며, String 타입 역시 변하지 않으며 toUpperCase같은 method는 새로운 객체를 만들어 반환하므로 원래 있던 abc에는 변함이 없다. 나머지 같은 경우는 main method에서 모두 변경 가능한 객체이므로 change메소드에서 변한 값들을 반환하여 출력된다.
(2) 소스코드 및 주석
public class Main {
public static void main (String[] args) {
int i1 = 100;
Num n1 = new Num (222);
String s1 = "abc";
int[] a1 = {

참고 자료

없음
다운로드 맨위로