JAVA - 2
카테고리: java
JAVA 02
Exercise1 - 약수 구하기
Scanner
클래스를 사용하여 사용자로부터 숫자를 입력받습니다.- 입력받은 숫자를 변수
num
에 저장합니다. - 변수
exerciseStr
을 초기화하고, 약수를 저장할 문자열로 사용합니다. for
루프를 사용하여 1부터num
까지의 숫자를 반복합니다.if
문을 사용하여 현재 반복 중인 숫자(i)가num
의 약수인지 확인합니다. 약수인 경우에만if
문 내부의 코드를 실행합니다.exerciseStr
문자열에 현재 약수인 숫자(i)를 추가합니다.for
루프가 종료되면exerciseStr
에 저장된 약수들을 출력합니다.
Exercise2 - 공약수 구하기
Scanner
클래스를 사용해 사용자로부터 숫자 두개를 입력습니다.- 변수
commonFactors
를 초기화하고, 공약수를 저장할 문자열로 사용합니다. for
루프를 사용하여 1부터num1
까지의 숫자를 반복합니다.if
문을 사용하여 현재 반복 중인 숫자(i)가num1
과num2
의 모두의 약수인지 확인합니다. 모두의 약수인 경우에만if
문 내부의 코드를 실행합니다.commonFactors
문자열에 현재 공약수인 숫자(i)를 추가합니다.for
루프가 종료되면commonFactors
에 저장된 공약수들을 출력합니다.
Exercise3 - n 구하기
1+3+5+7+9+…+n 의값이 최초로 1,000 이상이 되는 n의 값과 그 수까지의 합을 구하라.
- 변수
num
과sum
을 초기화 합니다. while
루프를 사용하여 합이 1000 이상이 될 때까지 반복합니다.sum
에 현재의 홀수num
을 더합니다.- 합이 1000 이상인지 확인합니다. 만약 그렇다면,
break
문을 사용하여 반복문을 종료합니다. - 합이 1000 이상이 아니라면, 다음 홀수를 이용하여
num
을 업데이트하고 출력합니다. - 반복문이 종료되면, 1에서
num
까지의 홀수의 합인sum
을 출력합니다.
Exercise4 - 소수 합성수 구분하기
Scanner
클래스를 사용하여 사용자로부터 숫자(num)를 입력받습니다.- 변수
count
를 초기화하고, 약수의 개수를 저장할 변수로 사용합니다. for
루프를 사용하여 1부터num
까지의 숫자를 반복합니다.if
문을 사용하여 현재 반복 중인 숫자(i)가num
의 약수인지 확인합니다. 약수인 경우에만if
문 내부의 코드를 실행합니다.- 약수인 숫자(i)를 출력하고, 약수의 개수(
count
)를 증가시킵니다. for
루프가 종료되면,num
의 약수의 개수를 출력합니다.- 약수의 개수(
count
)가 2인지 확인합니다. 2개일 경우 소수이고, 그 외의 경우에는 합성수입니다. - 소수인지 합성수인지에 따라 결과를 출력합니다.
Exercise5 - n번째 소수 출력하기
자연수 중에서 20번째 소수를 출력하라
- 변수
num
을 2로 초기화합니다.num
은 소수를 판별할 자연수를 나타냅니다. - 변수
count
를 0으로 초기화합니다.count
는 현재num
의 약수의 개수를 나타냅니다. - 변수
order
를 0으로 초기화합니다.order
는 소수의 순서를 나타냅니다. - 무한 루프를 사용하여 소수를 찾습니다.
for
루프를 사용하여 1부터num
까지의 숫자를 반복하면서 약수의 개수를 구합니다.num
을 i로 나눈 나머지가 0인 경우,count
를 증가시킵니다.count
가 2인 경우, 즉 약수의 개수가 2개인 경우에만order
를 1 증가시킵니다.order
가 20이 되면 무한 루프를 종료합니다.order
가 20이 아니라면num
을 1 증가시키고,count
를 0으로 초기화한 후 다시 반복합니다.- 마지막으로, 20번째 소수인
num
을 출력합니다.
주차요금 계산하기
calculateFee
함수는 주차 시간을 매개변수로 받아 주차 요금을 계산하는 함수입니다.- 변수
ptime
은 주차 시간을 나타냅니다. - 주차 시간이 0보다 큰 경우, 주차 요금을 계산합니다.
- 주차 시간이 1시간 이하인 경우, 요금은 1000원입니다.
- 주차 시간이 1시간을 초과하는 경우, 추가 요금을 계산하여 총 요금을 구합니다.
- 추가 요금은 (주차 시간 - 1)을 올림한 값에 500을 곱한 것입니다.
- 요금이 10000원을 초과하는 경우, 최대 요금은 10000원으로 제한합니다.
- 주차 시간이 0보다 작은 경우, 24시간을 더한 후 주차 요금을 계산합니다.
- 계산된 주차 요금을 출력하고 반환합니다.
main
함수에서는 주차장에 들어온 시간과 나간 시간, 주차 요금을 저장하는 변수들을 선언합니다.- 반복문을 사용하여 사용자가 계속하기를 원하는 동안 주차 시간을 입력받고, 주차 요금을 계산합니다.
- 주차 시간은 “HHmm” 형식으로 입력받으며, 입력받은 값을 100으로 나누어 시간 형식으로 변환합니다.
calculateFee
함수를 호출하여 주차 요금을 계산하고 출력합니다.- 사용자에게 계속하기 여부를 묻고, “y” 또는 “n”으로 입력받습니다.
- 사용자가 “y”를 입력한 경우 반복문을 계속 수행합니다.
- 사용자가 “n”을 입력한 경우 반복문을 종료합니다.
댓글 남기기