본문 바로가기
수업 문제(국비 지원)/Java

[JAVA] 2022.08.30 - java 가변배열, 클래스 정의 사용

by byeolsub 2023. 4. 27.
삼각형의 높이를 입력받아, 다음과 같은 역 직각삼각형을 출력하기 

[결과] 
삼각형의 높이를 입력하세요
5
15 14 13 12 11
  10  9  8  7
      6  5  4
         3  2
            1
package chap6;

import java.util.Scanner;

public class Test1 {
   public static void main(String[] args) {
      System.out.println("삼각형의 높이를 입력하세요.");
      Scanner scan = new Scanner(System.in);
      int n = scan.nextInt();
      int data = 0;

      int[][]arr = new int[n][];
      int count=0;
      for(int i=arr.length-1;i>=0;i--){
         arr[i] = new int[arr.length-i];//행이 배열의길이
      } 
      for(int i=1;i<=n;i++) {
         data += i;
      }
      for(int i=0;i<arr.length;i++){
         for(int j=0;j<arr.length;j++){
            if(i<=j){
               arr[i][count]=data--;
               System.out.printf("%3d",arr[i][count]);
               count++;
            }
            else{
               System.out.printf("%3s","");
            }
         }
         System.out.println();
         count=0;
      
      /*
      int[][]arr = new int[n][];
      int count=arr.length-1;
      for(int i=arr.length-1; i<arr.length;i--){//4>3>2>1
         arr[i] = new int[arr.length-i]; //4=5-4>3=5-3>>0=5-0 방개수라서 숫자 의미없음?
      }
      for(int i=arr.length-1; i<arr.length;i--){//4>3>2>1
         for(int j=arr.length-1;j<arr.length;j--){//j<5,j=4>3>2>1>0
            if(i<=j){//44>34>33>24>23>22...
               arr[i][count]=++data;//
               System.out.print(arr[i][count]);
               count--;
            }
            else{
               System.out.print(" ");
            }
         }
         System.out.println();
         count=0;
            
      }*/ 
      }    
   }
}

다음 결과가 출력되도록 동물클래스 구현하기       

  동물클래스(Animal1)
    멤버변수 : 이름(name), 나이(age)
    멤버메서드: eat() ;
         기능 : "맛있게 얌얌" 출력

  동물클래스(Animal2)
    멤버변수 : 이름(name), 나이(age)
    멤버메서드: toString() 결과 출력
             
[결과]
===Animal1===
이름(name):원숭이
나이(age):20
맛있게 얌얌
===Animal2===
이름(name):원숭이
나이(age):20
맛있게 얌얌
package chap6;

class Animal1{
    String name;
	int age;

	void eat() {
		 System.out.println("맛있게 얌얌");		
	}

}	
class Animal2{
    String name;
	int age;

	public String toString() {
		return "이름(name):"+ name+"\\n" + "나이(age)" + age +"\\n" + "맛있게 얌얌";
	}
}

public class Test2 {
	public static void main(String[] args) {
        System.out.println("===Animal1===");
		Animal1 a1 = new Animal1();
		a1.name = "원숭이";
		a1.age = 20;
		System.out.println("이름(name):" + a1.name);
		System.out.println("나이(age):" + a1.age);
		a1.eat();
        System.out.println("===Animal2===");
		Animal2 a2 = new Animal2();
		a2.name = "원숭이";
		a2.age = 20;
		System.out.println(a2);

	}
}