Advertisement
vencinachev

Day1

Sep 3rd, 2019
278
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.79 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3.  
  4. namespace Day1
  5. {
  6.     class Program
  7.     {
  8.         static bool IsPrime(int number)
  9.         {
  10.             for (int i = 2; i*i <= number; i++)
  11.             {
  12.                 if (number % i == 0)
  13.                 {
  14.                     return false;
  15.                 }
  16.             }
  17.             return true;
  18.         }
  19.         static List<int> Factorisation(int number)
  20.         {
  21.             List<int> factors = new List<int>();
  22.             for (int i = 2; i*i <= number; i++)
  23.             {
  24.                 while (number % i == 0)
  25.                 {
  26.                     factors.Add(i);
  27.                     number /= i;
  28.                 }
  29.             }
  30.             if (number > 1)
  31.             {
  32.                 factors.Add(number);
  33.             }
  34.             return factors;
  35.         }
  36.  
  37.         static List<int> EratosthenesPrimes(int n)
  38.         {
  39.             List<int> primes = new List<int>();
  40.             int[] arr = new int[n + 1];
  41.             for (int i = 2; i <= n; i++)
  42.             {
  43.  
  44.                 if (arr[i] == 0)
  45.                 {
  46.                     primes.Add(i);
  47.                     for (int j = 2*i; j <= n; j += i)
  48.                     {
  49.                         arr[j] = 1;
  50.                     }
  51.                 }
  52.             }
  53.             return primes;
  54.         }
  55.         static void Main(string[] args)
  56.         {
  57.             Console.Write("Enter number: ");
  58.             int num = int.Parse(Console.ReadLine());
  59.             //int num = 200;
  60.             Console.WriteLine("Is prime({0}): {1}", num, IsPrime(num));
  61.             Console.WriteLine("{0} = {1}", num, string.Join("*", Factorisation(num)));
  62.             Console.WriteLine("Primes to {0}: {1}", num, string.Join(", ", EratosthenesPrimes(num)));
  63.         }
  64.     }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement