Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace Problems
- {
- class Program
- {
- static int FindFactor(Int64 UserInput)
- {
- int LargestFactor = 0;
- Int64 Number = UserInput;
- for (int i = 2; i < Number; i++)
- {
- if (Number % i == 0)
- {
- if (PrimeFactorCheck(i) == true)
- {
- LargestFactor = i;
- }
- }
- }
- return LargestFactor;
- }
- static bool PrimeFactorCheck(int Number)
- {
- bool PrimeNumberValidity = true;
- for(int i = 2; i < Number; i++)
- {
- if (PrimeNumberValidity == true)
- {
- if (Number % i == 0)
- {
- PrimeNumberValidity = false;
- }
- }
- else
- {
- i = Number;
- }
- }
- return PrimeNumberValidity;
- }
- static void Main(string[] args)
- {
- Console.Write("Hello, please enter a number to find the biggest prime factor of it: ");
- Int64 UserInput = Convert.ToInt64(Console.ReadLine());
- int Answer = FindFactor(UserInput);
- Console.WriteLine(Answer);
- Console.ReadKey();
- }
- }
- }
- static int FindFactor(Int64 UserInput)
- {
- int LargestFactor = 0;
- Int64 Number = UserInput;
- for (int i = 2; i < Number; i++)
- {
- if (Number % i == 0)
- {
- if (PrimeFactorCheck(i) == true)
- {
- LargestFactor = i;
- }
- }
- }
- return LargestFactor;
- }
- static ulong FindLargestFactor(ulong n)
- {
- if (n == 2) return 2;
- while (n % 2 == 0) n = n / 2;
- for (ulong i = 3; i < n / 2; i += 2)
- {
- while (n % i == 0) n = n / i;
- }
- return n;
- }
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace Problems
- {
- static class Program
- {
- static int FindFactor(Int64 userInput)
- {
- var largestFactor = 0;
- var number = userInput;
- for (var i = 2; i < number; ++i)
- {
- if (number % i == 0 && IsPrimeFactor(i))
- {
- largestFactor = i;
- }
- }
- return largestFactor;
- }
- static bool IsPrimeFactor(int number)
- {
- var primeNumberValidity = true;
- for(int i = 2; i < number; ++i)
- {
- if (primeNumberValidity && number % i == 0)
- {
- primeNumberValidity = false;
- break;
- }
- else
- {
- i = number;
- }
- }
- return primeNumberValidity;
- }
- static void Main()
- {
- Console.Write("Hello, please enter a number to find the biggest prime factor of it: ");
- var userInput = Convert.ToInt64(Console.ReadLine());
- var answer = FindFactor(userInput);
- Console.WriteLine(answer);
- Console.ReadKey();
- }
- }
- }
- static int FindFactor(Int64 number) {
- return IEnumerable.Range(2, number - 2)
- .Where(n => number % n == 0 && IsPrimeFactor(n))
- .DefaultIfEmpty(0)
- .Last();
- }
- using System.Linq;
- using System.Threading.Tasks;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement