Flow chart 및 도전 기능(2)

최길중·2026년 1월 13일

연습 문제

[시나리오] 영화관 포인트 적립 시스템

  • 사용자가 영화를 여러 편 볼 때마다 관람 가격을 입력한다.
  • 영화 1편 관람 시 결제 금액의 7%가 포인트로 적립된다.
  • 사용자가 -1을 입력하면 관람 입력을 종료하고, 총 결제 금액과 총 적립 포인트를 출력한다.
  • 가격이 0 이하(단, -1 제외)인 경우는 잘못된 입력이며 다시 입력받는다.

    그 명세서 같은 건 적다가 머리털 다 빠질 것 같아서 포기했습니다

[시나리오] 카페 포인트 적립 시스템

  • 손님이 커피를 주문한다.
  • 한 잔 가격은 4,000원이다.
  • 같은 손님이 여러 잔을 주문할 수 있으며, 주문할 때마다 포인트가 적립된다.
  • 포인트는 결제 금액의 5%가 적립된다.
  • 손님이 0을 입력하면 주문을 종료하고, 총 결제 금액과 적립된 포인트를 출력한다.

[시나리오] 버스 요금 입력 프로그램

  • 사용자에게 버스 요금을 입력받는다.
  • 정상 요금 범위는 0 ~ 3000원이다.
  • 이 범위를 벗어나면 “잘못된 요금입니다”를 출력하고 다시 입력받는다.
  • 정상 범위의 요금이 들어오면 “요금 확인 완료”를 출력하고 종료한다.

[시나리오] 하루 동안 걸음 수 합산 프로그램

  • 사용자가 만보기처럼 자신의 걸음 수를 계속 입력한다.
  • 각 입력은 “이번 구간에서 걸은 걸음 수”이다.
  • 0을 입력하면 입력을 종료하고 총 걸음 수를 출력한다.

[시나리오] 전자사전(단어 뜻 조회) 프로그램

메뉴를 출력한다.
1. 단어 등록
2. 단어 조회
0. 종료
사용자는 번호를 입력한다.

  • 1번: 단어와 뜻을 등록한다.
  • 2번: 단어를 입력하면 뜻을 출력한다.
  • 0번: 프로그램 종료
  • 그 외: “잘못된 메뉴입니다” 출력 후 다시 메뉴로
    *간단 버전이므로 실제 저장은 생략

[시나리오] 간단 회원가입 + 로그인 시스템

  • 회원가입 단계
    • 사용자는 아이디, 비밀번호 입력
    • 비밀번호는 8자 이상이어야 함
    • 조건에 맞지 않으면 다시 입력
  • 회원가입이 완료되면 로그인 단계로 이동
  • 로그인 단계
    - 아이디, 비밀번호 입력
    - 최대 3회까지 틀릴 수 있음
    - 3회 연속 실패 → "계정 잠김" 출력 후 종료
    - 맞으면 → "로그인 성공" 출력

자바 발제 트러블 슈팅

  1. 연산이 그냥 넘어가던 이유: main 조건문이 /를 막아서 calculate가 호출되지 않았음.
    -> try문에 calculate 호출을 안넣었음;;

  2. 예외를 제대로 잡으려면 calculate 호출을 try 밖에서 하지 말고 try 안에서 1번만 해야한다.

  3. 오류가 나도 계속 실행되게 하려면 catch에서 메시지 출력 후 continue로 while 처음으로 되돌리기.

  4. catch 상황에서 값이 저장되던 문제는 실패를 0으로 반환하거나 성공/실패와 상관없이 저장해서 생겼고, 성공했을 때만 저장.

profile
개발자가 되고 싶어요

0개의 댓글