PROGRAM GreatestCommonFactor(Input,Output);
{Written bu Jason J Schwarz in Turbo Pascal v6.0.
Purpose : This program finds the Greatest Common Factor of
           two numbers that the user inputs.}

USES CRT;

VAR
   TempNumberA, TempNumberB, SubA : INTEGER;
   Choice : CHAR;

PROCEDURE GCF;
BEGIN
     REPEAT
           SubA:=TempNumberB MOD TempNumberA;
           IF SubA=0 THEN BEGIN
                WRITELN(Output,ABS(TempNumberA));
                GOTOXY(29,24);
                WRITE(Output,'Press <RETURN> to exit');
                READLN(Input);
                HALT(0);
           END;{SubA=0}
           TempNumberB:=TempNumberA;
           TempNumberA:=SubA;
     UNTIL SubA=0;{REPEAT}
END;{GCF}

BEGIN{GreatestCommonFactor}
     {$I-}
     REPEAT
           CLRSCR;
           GOTOXY(25,01);
           WRITELN(Output,'Greatest Common Factor Finder');
           GOTOXY(25,02);
           WRITELN(Output,'Written by Jason John Schwarz');
           GOTOXY(17,4);
           WRITELN(Output,'Input two integers and I will tell you their GCF');
           READLN(Input,TempNumberA,TempNumberB);
           GOTOXY(01,10);
           WRITE(Output,'The GCF of ',TempNumberA,' and ',TempNumberB,' is ');
     UNTIL IOResult=0;
     GCF;
END.{GreatestCommonFactor}
