-
KMS04 : C++ 소수탐색 프로그램 Ver2 (source)Program_Light 2021. 3. 6. 13:00
사진출처 © florianklauer, 출처 Unsplash 이번에 여러모로 바빠서 프로그래밍을 못했었다. 그래서 오랜만에 연습도 할 겸 지난번에 만든 소수탐색 프로그램을 고쳤다.
대부분의 입력과 출력, 원리는 기존과 똑같아서 간단하게 적엇으니 혹시 헷갈린다면 아래 링크를 참고하면 된다.
https://blog.naver.com/tomskang/221524574533
소스코드
source.cpp
#include <iostream> #include <algorithm> #include <vector> #define TRUE 1 #define FALSE 0 using namespace std; int f(int N) { static bool C = TRUE; if (C) { N += 2; C = FALSE; } else { N += 4; C = TRUE; } return N; } int main(void) { vector<int> prime; int num, lim; bool con = FALSE; cout << "limit : "; cin >> lim; if ((lim >= 3) || (lim == -1)) { cout << "1st prime : 2" << endl; prime.push_back(2); cout << "2st prime : 3" << endl; prime.push_back(3); for (num = 5; ((num <= lim) || (lim == -1)); num = f(num)) { for (int i = 0; i < prime.size(); i++) { if (!(num % prime[i])) { con = TRUE; break; } } if (con) { con = FALSE; continue; } prime.push_back(num); cout << prime.size() << "th prime : " << num << endl; } } else { prime.push_back(2); prime.push_back(3); for (int i = 0; lim >= prime[i];) { cout << i << "th prime : " << prime[i] << endl; i++; } } return 0; }
입력 : 숫자를 하나 입력
출력 : 입력한 숫자까지의 소수를 소수번호_소수순으로 모두 출력함
(-1을입력하면 무한대로 탐색)
실행결과
relation content
KMS04 : C언어 소수탐색 프로그램 Ver1 (source)
이 프로그램은 2019. 4. 28. 16:29에 네이버 블로그에서 작성되었습니다. 안녕하세요 tomskang입니다. 오늘은 간단하게 소수탐색 프로그램을 한번 만들습니다. 시간 복잡도는 O(Nsqrt(N))입니다. 소스코드
kms-program.tistory.com
(구)KMS06 : C언어 소인수분해 프로그램 + source (MSFIP)
이 글은 기존의 네이버 블로그에 2019. 1. 31. 11:10에 올라온 게시물입니다. 안녕하세요 tomskang입니다. 오늘은 간단하게 소인수 분해 프로그램을 한번 만들습니다. 시간 복잡도는 O(sqrt(N)) 입니다.
kms-program.tistory.com
'Program_Light' 카테고리의 다른 글
KMS01 : 자작 Algorithm Tayo Algorithm (0) 2021.03.27 KMS04 : C++ 소수탐색 프로그램 Ver3 (source) (0) 2021.03.20 KMS04 : C언어 소수탐색 프로그램 Ver1 (source) (0) 2021.02.27 (구)KMS06 : C언어 소인수분해 프로그램 + source (MSFIP) (0) 2021.02.20 KMS05 : C언어 분수 계산기 MSNCCL fraction (KMS number calculator) (0) 2021.01.23