---------------------------------------------------------------------- -- Title : DemoAK -- Version : 1.00 -- Copyright : (C) 1994 David Wallace Croft. All rights reserved. -- Author : David Wallace Croft, CompuServe [76600,102] -- Compiler : standard Ada -- Description : Demonstration of standard Ada packages. ---------------------------------------------------------------------- with A83_014_Vector ; use A83_014_Vector ; with A83_015_Matrix ; use A83_015_Matrix ; with A83_016_Matrix_Solutions; use A83_016_Matrix_Solutions; with A83_017_Random ; use A83_017_Random ; with ConsAK ; use ConsAK ; with ErroAK ; use ErroAK ; with FileAK ; use FileAK ; -- with FloaAK ; use FloaAK ; with InteAK ; use InteAK ; with LineAK ; use LineAK ; with MathAK ; use MathAK ; with Text_IO ; use Text_IO ; with TimeAK ; use TimeAK ; package DemoAK is ---------------------------------------------------------------------- ---------------------------------------------------------------------- procedure Demo; ---------------------------------------------------------------------- ---------------------------------------------------------------------- end DemoAK; package body DemoAK is ---------------------------------------------------------------------- ---------------------------------------------------------------------- procedure Demo is ---------------------------------------------------------------------- Copyright : constant string := "DemoAK v1.1 (C) 1994 David Wallace Croft. Freeware."; Default : natural := 1; Min : constant natural := 0; Max : constant natural := 10; Option : natural; begin loop Put_Line ( Copyright ); Put_Line ( "" ); Put_Line ( "Demonstration of available Ada programming language packages." ); Put_Line ( "This program is free and may be distributed." ); Put_Line ( "All code within this section is compiler independent." ); Put_Line ( "For information on licensing these packages, the author" ); Put_Line ( "may be contacted via CompuServe at [76600,102]." ); Put_Line ( "Use at your own risk." ); Put_Line ( "" ); Put_Line ( " 0 = Quit" ); Put_Line ( " 1 = A83_014_Vector -- Vector types and operations" ); Put_Line ( " 2 = A83_015_Matrix -- Matrix types and operations" ); Put_Line ( " 3 = A83_016_Matrix_Solutions -- Least Squares" ); Put_Line ( " 4 = A83_017_Random -- Random numbers & statistics" ); Put_Line ( " 5 = ConsAK -- Console text input/output" ); Put_Line ( " 6 = ErroAK -- Exception Handling" ); Put_Line ( " 7 = FileAK -- File text input/output" ); Put_Line ( " 8 = LineAK -- Linear Programming" ); Put_Line ( " 9 = MathAK -- General Math Subprograms" ); Put_Line ( "10 = TimeAK -- Calendar and Time" ); Put_Line ( "" ); Option := Ask_Nat ( "Option ", Default, Min, Max ); Default := Option + 1; if Default > Max then Default := Min; end if; case Option is when 0 => exit; when 1 => A83_014_Vector.Demo; when 2 => A83_015_Matrix.Demo; -- when 3 => A83_016_Matrix_Solutions.Demo; when 4 => A83_017_Random.Demo; when 5 => ConsAK.Demo; when 6 => ErroAK.Demo; when 7 => FileAK.Demo; when 8 => LineAK.Demo; when 9 => MathAK.Demo; when 10 => TimeAK.Demo; when others => Put_Line ( "The demonstration of that option is currently" & " not available." ); Pause; end case; Put_Line ( "" ); end loop; exception when others => Notify ( "DemoAK.Demo" ); raise; end Demo; ---------------------------------------------------------------------- ---------------------------------------------------------------------- end DemoAK;