java 7

산야(Sanya)·2024년 1월 5일

java 족보

목록 보기
8/28

1. 아래를 출력 하시오.

  *****
  1****
  11***
  111**
  1111*
  
  public class TestProjet10 {

    public static void main(String[] args) {
        for (int i = 0; i < 5; i++) {
            for (int j = 0; j < i; j++) {
                System.out.print("1");
            }
            for (int k = i; k < 5; k++) {
                System.out.print("*");
            }
         
            System.out.println();
        }
    }
}

2.아래가 의도하지 않은 결과를 나타내는 이유를 설명하시오.

char ch = '가';
System.out.println(ch + '\n')

위 코드에서 ch + '\n'은 문자 '가'에 개행 문자('\n')를 더한 것입니다. 이때, 문자와 개행 문자는 각각 정수 값으로 표현되며 더해집니다. '가'의 Unicode 값은 44032이고, 개행 문자('\n')의 Unicode 값은 10입니다. 그래서 결과적으로 44032 + 10이 계산되어 44042가 출력됩니다.

3. 함수(메소드)는 어떻게 알아 볼수있는가?

  • 함수는 클래스 또는 객체에 속해 있습니다.
    함수는 메소드 시그니처(리턴 타입, 메소드 이름, 매개변수)로 정의되어 있습니다.
  • 자바에서 기본적인 함수 형태는 다음과 같습니다.
리턴타입 메소드이름(매개변수) {
    // 메소드의 기능 구현
}

4. 함수 호출 하는 법은?

  • 함수를 소유한 클래스 또는 객체의 인스턴스를 생성하여 메소드를 호출합니다.
  • 예를 들어,'클래스이름.메소드이름(인자);'또는'객체이름.메소드이름(인자);'와 같은 형태로 호출합니다.

5. 함수 만드는 법은?

  • 함수는 클래스 내에 정의되며, 메소드의 형태를 갖습니다.
  • 메소드는 메소드 시그니처와 중괄호 안에 메소드의 기능을 구현합니다.

6. 리턴 타입 void 는 어떠한 경우에 쓰는가?

  • 리턴 타입이 void인 경우, 해당 메소드는 반환 값이 없음을 나타냅니다. 즉, 아무 값도 반환하지 않습니다.

7. 아래를 함수로 만드시오.

1)

starPrint2(5)

public class TestProjet8888 {

    public static void starPrint2(int n) {
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < i; j++) {
                System.out.print(" ");
            }
            for (int k = 0; k < n - i; k++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }

    public static void main(String[] args) {
        starPrint2(5);
    }
    }

출력

    *****
     ****
      ***
       **
        *
        
        

8. 아래의 함수를 만드시오.

char grade;

double avg = 80;

grade = getGrade(avg);

// 우 입니다.

System.out.println(grade + " 입니다.");

public class TestProjet8888 {

    public static char getGrade(double avg) {
        if (avg >= 90) {
            return '수';
        } else if (avg >= 80) {
            return '우';
        } else {
            return '미';
        }
    }

    public static void main(String[] args) {
        char grade;
        double avg = 80;

        grade = getGrade(avg);

        System.out.println(grade + " 입니다.");
    }
}

9. 아래의 함수를 만드시오.

int sum = getHap(1,100);

//5050

System.out.println(sum);

public class TestProjet8888 {

    public static int getHap(int num1, int num2) {
        int sum = 0;

        for (int i = num1; i <= num2; i++) {
            sum += i;
        }

        return sum;
    }

    public static void main(String[] args) {
        int sum = getHap(1, 100);
        System.out.println(sum);
    }
}

10. 아래의 함수를 만드시오.

int count = get57(1,100);

//count 는 1부터 100 까지의 숫자중 5의 배수 이자 7의 배수인 수의 갯수

System.out.println(count );

public class TestProjet8888 {

    public static int get57(int num1, int num2) {
        int count = 0;

        for (int i = num1; i <= num2; i++) {
            if (i % 5 == 0 && i % 7 == 0) {
                count++;
            }
        }

        return count;
    }

    public static void main(String[] args) {
        int count = get57(1, 100);
        System.out.println(count);
    }
}

11. 아래의 함수를 만드시오.

printGuGudan(3)// 3단 출력

printGuGudan(4)// 4단 출력

public class TestProjet8888 {

    public static void printGuGudan(int dan) {
        for (int i = 1; i <= 9; i++) {
            System.out.println(dan + " * " + i + " = " + (dan * i));
        }
    }

    public static void main(String[] args) {
        printGuGudan(3);
        printGuGudan(4);
    }
}

12. 아래의 함수를 만드시오.

getRecArea(3,5) //사각형 넓이

getRecCirlce(5) //원넓이

getTriangleArea(4 , 5) //삼각형 넓이

public class TestProjet8888 {

    public static double getRecArea(double width, double height) {
        return width * height;
    }

    public static double getRecCircle(double radius) {
        return Math.PI * radius * radius;
    }

    public static double getTriangleArea(double base, double height) {
        return 0.5 * base * height;
    }

    public static void main(String[] args) {
        double recArea = getRecArea(3, 5);
        double circleArea = getRecCircle(5);
        double triangleArea = getTriangleArea(4, 5);

        System.out.println("사각형 넓이: " + recArea);
        System.out.println("원 넓이: " + circleArea);
        System.out.println("삼각형 넓이: " + triangleArea);
    }
}

13. 함수로 만들면 좋은점은? ★★★★

  • 같은 작업을(중복) 하지 않기 위해

  • 기능이 2번 이상 중복되면 반드시 함수로 만들것.

14. 아래의 함수를 만드시오.

int month = 4;

getSeason(3)// 봄입니다. 출력

public class TestProjet8888 {

    public static void getSeason(int month) {
        if (month >= 3 && month <= 5) {
            System.out.println("봄입니다.");
        } else if (month >= 6 && month <= 8) {
            System.out.println("여름입니다.");
        } else if (month >= 9 && month <= 11) {
            System.out.println("가을입니다.");
        } else {
            System.out.println("겨울입니다.");
        }
    }

    public static void main(String[] args) {
        int month = 4;
        getSeason(month);
    }
}

getSeason(12)// 겨울 입니다. 출력

public class TestProjet8888 {

    public static void getSeason(int month) {
        if (month >= 3 && month <= 5) {
            System.out.println("봄입니다.");
        } else if (month >= 6 && month <= 8) {
            System.out.println("여름입니다.");
        } else if (month >= 9 && month <= 11) {
            System.out.println("가을입니다.");
        } else {
            System.out.println("겨울입니다.");
        }
    }

    public static void main(String[] args) {
        int month = 12;
        getSeason(month);
    }
}
profile
개발일지

0개의 댓글