알고리즘 풀이 방법입니다.
문제(Problem) -> 생각(Think) -> 해결책(Solution) -> 리뷰(Review) 를 통해서 정리해서 작성합니다.
Problem📄

https://level.goorm.io/exam/43166/3%EA%B3%BC-5%EC%9D%98-%EB%B0%B0%EC%88%98/quiz/1

 

구름LEVEL

코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이

level.goorm.io


Think🤔

1000이하의 자연수를 입력하고 자연수 중 3의 배수, 5의 배수의 합을 구하는 프로그램을 작성하시오.

 

일단 3의 배수이면서도 5의 배수인 문제가 아니고 3의 배수고 또 5의 배수인 값을 값을 찾는 문제이다.


Solution✍
import java.io.*;
class Main {
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String input = br.readLine();
		int numberInput = Integer.parseInt(input); //input을 숫자형으로 바꿔줌
		int sum = 0; // 합계
		
		for(int i=0; i<=numberInput; i++){
			if(i % 3 == 0 || i % 5 == 0){
				sum += i;
			}
		}
		
		System.out.print(sum);
	}
}

while문으로 고쳐본다.

while문은 스캐너까지 이용해서 풀어본다.

import java.util.Scanner;

class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int input = sc.nextInt(); // 사용자의 input int값을 받는다.
		int i = 3; // 3이하는 3의 배수가 아니기 때문에 최소 3부터 시작한다
		int sum = 0; // 합계
		while(input >= i){
			if(i % 3 == 0){ 
				sum += i;
			}else if(i % 5 == 0){ // if 조건에 안들어가면 그 다음에 맞는지? 확인하는 구문
				sum += i;
			}
			i++;
		}
		System.out.print(sum);
	}
}

Review🤩

while문 for문을 다시 한번 적어 보았다.


 

+ Recent posts