fork download
  1. // primediv6.cpp : アプリケーションのエントリ ポイントを定義します。
  2. //
  3. #include <iostream>
  4. #include <cmath>
  5. #include <cstdint>
  6.  
  7. bool isPrime(std::uint64_t N) {//tekito-
  8. std::uint64_t L = std::sqrt(N) + 1;
  9.  
  10. for (std::uint64_t i = 2; i < L; i++) {
  11. if (N%i == 0) return false;
  12. }
  13.  
  14. return true;
  15. }
  16.  
  17. std::uint64_t PrimeDiv6(std::uint64_t N) {
  18. if (!isPrime(N)) return N;
  19. double D = N;
  20. return std::round(D / 6) * 6;
  21. }
  22.  
  23.  
  24. int main()
  25. {
  26.  
  27. for (std::uint64_t i = 5; i <= 32; i++) {
  28.  
  29. std::cout <<i<<':'<< PrimeDiv6(i) << std::endl;
  30. }
  31.  
  32. return 0;
  33. }
  34.  
Success #stdin #stdout 0s 4280KB
stdin
Standard input is empty
stdout
5:6
6:6
7:6
8:8
9:9
10:10
11:12
12:12
13:12
14:14
15:15
16:16
17:18
18:18
19:18
20:20
21:21
22:22
23:24
24:24
25:25
26:26
27:27
28:28
29:30
30:30
31:30
32:32