알고리즘(15)
-
[알고리즘] 에라토스테네스의 체를 이용해 소수 구하기(JAVA)
소수(prime number) 1보다 큰 양의 정수 중에서 1과 자기 자신만으로 나누어 떨어지는 수를 말합니다. 에라토스테네스의 체 대표적인 소수 판별 알고리즘입니다. 1은 소수가 아니므로 2부터 소수를 구하려는 구간의 수를 모두 나열한 뒤 2의 배수부터 지워나가면 됩니다(2의 배수를 지운다면 자기 자신인 2는 지우지 않습니다) 1부터 50까지 소수 구하기 1. 2의 배수부터 지워나갑니다.(자기 자신은 지우지 않습니다) 2. 이미 지워진 숫자는 건너뛰고 3의 배수를 지웁니다.(자기 자신은 지우지 않습니다) 3. 위와 같은 방법을 반복해 지워나가면 소수만 남아있게 됩니다. 에라토스테네스의 체를 이용해 1부터 50까지의 소수 구하는 법을 JAVA 소스로 구현해보겠습니다. 1 2 3 4 5 6 7 8 9 10..
2021.09.24 -
[알고리즘] 분수 수열 덧셈
분수 수열 문제의 해법 1. 분자, 분모의 상호 연관성이 있는지를 확인 2. 분자, 분모의 반복 규칙을 따로 찾음 3. 분자, 분모의 변수 중 어느 것으로 반복되었는지 확인 ※ 예제 1/2+2/3+3/4+...+49/50을 구하여 출력하는 순서도를 작성하세요. 위의 분수 수열 문제의 해법 중 분자, 분모의 상호 연광성이 있는지 확인해보면 분모 값이 분자 값 보다 1이 크다는 연관성을 알 수 있습니다. 이런 연관성을 변수로 표현한다면 i / (i+1) 이런 방법으로 표현할 수 있습니다. 분자에만 변수를 i로 선언했기 때문에 지금과 같은 경우에는 STOP을 하려면 분자 변수로 선언한 i로 끝을 내야 합니다. 때문에 i값이 49일 때까지 진행하게 하면 됩니다. 순서도를 나타내면 이와 같습니다. i 와 SUM ..
2021.09.23 -
[알고리즘] 알고리즘(Algorithm)의 문법
알고리즘의 문법 변수(Varlable) 변할 수 있는 값 ex) 하나의 컵엔 물이 가득 채워져 있고 또 다른 컵엔 기름이 반만 채워져 있는 상태에서 무엇을 담느냐에 따라 바뀔 수 있는 컵 자체가 변수가 됩니다. 상수(Constant) 항상 일정한 값(변수의 반대 개념) ex) 변수의 예에서는 컵에 채웠던 물, 기름이 상수가 되겠죠. 연산자(Operation) 배열(Array) 동일한 형의 데이터들로 이루어진 집합 1차원 배열 ※ 배열의 시작이 사용 언어마다 달라 A(1) 거나 A(0) 일 수 있습니다. 2차원 배열 ※ 1차원 배열과 마찬가지로 배열의 시작이 달라질 수 있습니다. 함수(Function) 특정 기능을 수행하도록 미리 정의된 수식입니다. 함수는 그 종류가 방대해 그 중 자주 쓰이는 함수 5가지..
2021.09.20