inflearn logo
강의

Course

Instructor

Kim Young-han's Java Tutorial - Your First Step into Java with Code

[7. Scanner][문제와풀이4] ScannerWhileEx3 질문

Resolved

362

ahnju981496

8 asked

2

안녕하세요 선생님, 선생님께서 남겨주신 코드와 다르게 제 코드처럼 작성해도 무방할지 질문드립니다.

 

[선생님 코드] 선생님께서 작성하신 코드는 input 지역변수의 스코프 값이 넓습니다.

public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    int sum = 0;
    int count = 0;
    int input = 0;

    System.out.println("숫자를 입력하세요, 입력을 중단하려면 -1을 입력하세요 : ");
    while (true) {
        input = scanner.nextInt();
        if (input == -1) {
            break;
        }
        sum += input;
        count++;
    }
    double average = (double) sum / count;
    System.out.println("입력한 숫자들의 합계 : " + sum);
    System.out.println("입력한 숫자들의 평균 : " + average);
}

[제가 작성한 코드] 저는 input의 스코프값이 넓다고 생각해서 자체적으로 while문에서만 해당 변수를 부여하고, 사용했는데 하기와 같이 사용해도 무방할까요?

public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    int sum = 0;
    int count = 0;

    System.out.println("숫자를 입력하세요, 입력을 중단하려면 -1을 입력하세요 : ");
    while (true) {
        int input = scanner.nextInt();
        if (input == -1) {
            break;
        }
        sum += input;
        count++;
    }
    double average = (double) sum / count;
    System.out.println("입력한 숫자들의 합계 : " + sum);
    System.out.println("입력한 숫자들의 평균 : " + average);

 

java 객체지향 scanner 문제와풀이 질문

Answer 2

2

chelim20028121

지역변수는 초기화하고 사용하는것을 지향합니다.쓰래기값이 출력이 될떄도 있기때문입니다.

0

ahnju981496

감사합니다!

1

OMG

안녕하세요. 개화동과자사장님, 공식 서포터즈 OMG입니다.

input 변수의 사용 범위가 while문 루프안으로 제한되어 있을 때는 작성하신 코드처럼 하여도 무방합니다 😀

 

감사합니다.

0

ahnju981496

감사합니다!

문제와 풀이4 문제점

0

32

2

문제풀이 시간마다 방향성

0

32

2

피라미드 문제 풀이

0

67

1

ScannerWhile3 예제 코드 질문

0

51

1

짝수 출력 문제 질문

0

47

1

Array 연습 문제 5번 질문입니다.

0

81

2

단축어가 이상하게 나옵니다

0

127

2

Sql강의

0

82

1

array 문제풀이 2번 질문입니다.

0

53

1

JAVA입문 / 메서드편 문제와 풀이2

0

44

1

인텔리제이 무료버젼이 통합되었다는데 30일 무료버전이면 어떻게 사용하나요

1

771

3

OperationEx3에서 꼭 boolean을 써야 하나요?

0

56

1

for, while문 작성

0

63

1

68강 ArrayEx6 클래스 질문

0

56

1

IO.println(String.format("Hello and welcome!"));

0

140

2

소스코드 실행이 안돼요

0

114

2

메서드 문제와 풀이2에서 마지막 문제 이렇게 풀어도 괜찮은 건가요..?

0

77

1

While과 for 스코프 질문

0

59

1

김영한 java 입문 설치 질문

0

135

2

버퍼문제?

0

50

1

for문 피라미드 찍는거 질문

0

74

1

21버전이 없고, 강의 메뉴얼 확인해보면 된다는 김영한 선생님 답변 확인했습니다.

0

366

1

3번 문제 질문 있습니다.

0

93

2

sout에는 변수가 하나만 들어가야 하나요?

0

131

1