알고리즘 문제연습/기초 알고리즘33 [009] 팩토리얼 알고리즘 문제 - 입력된 수의 팩토리얼을 구하세요. - 반복문 사용 보완할 점 소스코드 public class Algorithm08 { public static void main(String[] args) { //팩토리얼을 구하세요 int num = 6; int mul = 1; for(int i = num; i > 0; i--) { mul *= i; } System.out.println(mul); } } 2021. 5. 19. [008] 소수 판별 알고리즘 문제 - 입력된 수가 소수인지 판별하는 코드를 작성하시오. - 반복문 사용 보완할 점 소스코드 public class Algorithm07 { public static void main(String[] args) { //입력된 수가 소수인지 판별 int num = 6; int min = 2; boolean is = true; //2~ 자기보다 작은값으로 나누었을 때 나머지가 0이 아닌수 while(is) { for(; min < num; min++) { if(num % min == 0) { //한번이라도 여기 들어오면 소수가 아님 is = false; } } if (is) { System.out.println(num + "은 소수입니다"); is = false; } else { System.out.pri.. 2021. 5. 17. [007] 최대 공약수 구하기 문제 - 두 수의 최대 공약수를 구하시오. - 배열, for, if 사용 보완할 점 - 좀 더 코드를 간결하게 할 수 있을 것 같은데... 고민해서 수정하기 소스코드 import java.util.Arrays; public class Maxnumber { public static void main(String[] args) { // 최대 공약수 구하기 int a = 12; int b = 18; int[] a_arr = new int[a]; int[] b_arr = new int[b]; for(int i=1; i 2021. 5. 13. [006] 대소문자 변환 (대문자->소문자, 소문자->대문자) 문제 - 대문자는 소문자로, 소문자는 대문자로 변환하시오. - HelloWorld 결과 -> hELLOwORLD - 배열, for, if 사용 보완할 점 - 좀 더 코드를 간결하게 할 수 있을 것 같은데... 고민해서 수정하기 소스코드 public class LowerUpper { public static void main(String[] args) { //선언 String input = "HelloWorld"; String change[] = new String[10]; char ch[] = new char[10]; //하나씩 꺼내서 검사 //대문자라면? //소문자라면? for(int i=0; i 2021. 5. 13. [005] 간단한 계산기(사칙연산 기능 구현) 문제 - 사칙연산을 할 수 있는 계산기를 만드세요. - 단, main에서 메소드를 호출해서 기능구현. - 숫자를 입력받을 때는 공백이나 문자가 아닌 숫자를 입력받을 것. - 연산자를 입력받을 때는 사칙연산만 입력받을 것. 보완할 점 - " / "연산자를 입력했을 경우에는 0을 입력할 수 없도록 재구성.(-> 추후에 해보기) - 메소드의 매개변수에 무엇을 전달해야 하는지 잘 생각해보기. - continue문 적절히 사용해서 다시 while문에 진입하게 하기 소스코드 import java.util.Scanner; public class CalculatorFuction { public static void main(String[] args) { int num1, num2; String oper; //첫번째수 .. 2021. 5. 13. [004] 10진수를 2진수로 변환하기 문제 - 10진수를 2진수를 변환하는 코드를 작성하시오 - 배열, 반복문 사용 - 입력 : 19 - 정답 : 10011 소스코드 public class Binary { public static void main(String[] args) { int inputNum = 19; int[] num = new int[10]; int i = 0; int mok = inputNum; while(mok > 0) { num[i] = mok % 2; mok = mok / 2; i++; } i--; for(;i>=0;i--) { System.out.print("정답: " + num[i]); } } } 2021. 5. 13. 이전 1 2 3 4 5 6 다음