달마루
기획자에서 개발자로
달마루
전체 방문자
오늘
어제
  • 분류 전체보기 (334)
    • 기획 이야기 (3)
    • 개발자로 전향한 이유 (1)
    • Github Address (1)
    • 개발자, 그 여정 (11)
      • 기초특강 (4)
      • 국비학원 선정 (4)
      • BitCamp_수업내용 (1)
      • 학원 프로젝트 후기 (1)
      • 정보처리기사 (1)
      • 개발 이야기 (0)
    • 개념 창고 (126)
      • JAVA (50)
      • CS (1)
      • Database (27)
      • NetWork (2)
      • 자료 구조 (2)
      • React (8)
      • Spring (3)
      • JPA (1)
      • HTML & CSS (18)
      • JS (3)
    • algorithm (186)
      • 백준 (161)
      • 프로그래머스 (23)
    • 사는 이야기 (0)

블로그 메뉴

  • Github
  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 백준문제풀이
  • 백준
  • 프로그래머스
  • 알고리즘
  • BRONZE
  • react
  • SQL고득점Kit
  • Bronze V
  • 자바
  • SQL
  • 문제풀이
  • programmers
  • 혼자공부하는SQL
  • math
  • sql 문제풀이
  • Algorithm
  • 백준알고리즘
  • BOJ algorithm
  • MySQL
  • BOJ
  • select
  • 혼공MySQL
  • 혼공SQL
  • Bronze III
  • java
  • java algorithm
  • Bronze IV
  • 알고리즘풀이
  • Scanner
  • HTML

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
달마루

기획자에서 개발자로

[백준] 계산기 프로그램 - 5613 Java[자바]
algorithm/백준

[백준] 계산기 프로그램 - 5613 Java[자바]

2023. 1. 25. 21:17

[Bronze III] 계산기 프로그램 - 5613

문제 링크

 

5613번: 계산기 프로그램

입력의 각 줄에는 숫자와 +, -, *, /, =중 하나가 교대로 주어진다. 첫 번째 줄은 수이다. 연산자의 우선 순위는 생각하지 않으며, 입력 순서대로 계산을 하고, =가 주어지면, 그때까지의 결과를 출

www.acmicpc.net

성능 요약

메모리: 17764 KB, 시간: 220 ms

분류

사칙연산(arithmetic), 구현(implementation), 수학(math)

문제 설명

덧셈, 뺄셈, 곱셈, 나눗셈을 할 수 있는 계산기 프로그램을 만드시오.

입력

입력의 각 줄에는 숫자와 +, -, *, /, =중 하나가 교대로 주어진다. 첫 번째 줄은 수이다. 연산자의 우선 순위는 생각하지 않으며, 입력 순서대로 계산을 하고, =가 주어지면, 그때까지의 결과를 출력한다. 주어지는 수는 108 이하의 양의 정수이다. 계산 중 결과는 0 또는 음수가 될 수 있지만, -108 ~ 108 범위를 넘지는 않는다. 또, 나눗셈에서 소수점은 버린다. 따라서, 100/3*3 = 99이다.

피제수가 음수일 때 나눗셈을 하는 경우는 입력으로 주어지지 않는다.

출력

첫째 줄에 계산 결과를 출력한다.



 답 : while true로 무한 루프를 만든 뒤
= 값이 들어오면 종료하도록하고, 
각 부호가 오면 변수에 연산을 해준다.

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        while (true) {
            String str = sc.nextLine();
            if (str.equals("="))
                break;
            switch (str) {
                case "+":
                    a += sc.nextInt();
                    break;
                case "-":
                    a -= sc.nextInt();
                    break;
                case "*":
                    a *= sc.nextInt();
                    break;
                case "/":
                    a /= sc.nextInt();
                    break;
                default:
                    break;
            }
        }
        System.out.println(a);
        sc.close();
    }
}
저작자표시 비영리 변경금지 (새창열림)

'algorithm > 백준' 카테고리의 다른 글

[백준] 알파벳 개수 - 10808 Java[자바]  (0) 2023.01.27
[백준] 홀수 - 2576 Java[자바]  (0) 2023.01.26
[백준] 상근날드 - 5543 Java[자바]  (0) 2023.01.24
[백준] 줄번호 - 4470 Java[자바]  (0) 2023.01.23
[백준] 주사위 세개 - 2480 Java[자바]  (0) 2023.01.22
    'algorithm/백준' 카테고리의 다른 글
    • [백준] 알파벳 개수 - 10808 Java[자바]
    • [백준] 홀수 - 2576 Java[자바]
    • [백준] 상근날드 - 5543 Java[자바]
    • [백준] 줄번호 - 4470 Java[자바]
    달마루
    달마루
    항상 어제보다 좋은 코드를 지향합니다. https://github.com/LimDongHyun99

    티스토리툴바