lmarkov

Greatest Common Divisor (GCD)

Dec 10th, 2012
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.40 KB | None | 0 0
  1. /*
  2.  * Write a program that calculates the greatest common divisor (GCD) of given two numbers. Use the Euclidean algorithm (find it in Internet).
  3. */
  4.  
  5. using System;
  6. using System.Numerics;
  7.  
  8. class GreatestCommonDivisor
  9. {
  10.     static void Main()
  11.     {
  12.         BigInteger numberA, numberB;
  13.        
  14.         string invalidInput = "Please enter a valid number greater than 0!" + Environment.NewLine;
  15.  
  16.         Console.WriteLine("Enter a value for number A: ");
  17.         while (!(BigInteger.TryParse(Console.ReadLine(), out numberA) && numberA > 0))
  18.         {
  19.             Console.WriteLine(invalidInput);
  20.             Console.WriteLine("Enter a value for number A: ");
  21.         }
  22.  
  23.         Console.WriteLine("Enter a value for number B: ");
  24.         while (!(BigInteger.TryParse(Console.ReadLine(), out numberB) && numberB > 0))
  25.         {
  26.             Console.WriteLine(invalidInput);
  27.             Console.WriteLine("Enter a value for number B: ");
  28.         }
  29.  
  30.         while (numberA != numberB)
  31.         {
  32.             if (numberA > numberB)
  33.             {
  34.                 numberA = numberA - numberB;                
  35.             }
  36.             else
  37.             {
  38.                 numberB = numberB - numberA;
  39.             }            
  40.         }
  41.         Console.WriteLine("The greatest common divisior (GSD) for numbers {0} and {1} is {2}." + Environment.NewLine, numberA, numberB, numberA);
  42.         Main();
  43.     }
  44. }
Advertisement
Add Comment
Please, Sign In to add comment