W. Wesley Groleau x4923 wrote: > > How do you swap two values of two seperate variables without declaring a > > temp variable? > > 1. Write a Stack package. > > 2. Push first variable on the stack. > > 3. Assign second variable to first variable. > > 4. Pop first variable off the stack. Nah, that's cheating. If the variables are modular or unsigned, use the the very old fashioned: with Ada.Text_IO; procedure Show_It is type DWORD is mod 2 ** 32; procedure Swap (A, B : in out DWORD) is begin A := A xor B; B := B xor A; A := A xor B; end Swap; A : DWORD := 5; B : DWORD := 10; begin Ada.Text_IO.Put_Line ( "A =" & DWORD'Image (A) & ", B =" & DWORD'Image (B)); Swap (A, B); Ada.Text_IO.Put_Line ( "A =" & DWORD'Image (A) & ", B =" & DWORD'Image (B)); end Show_It; :-) :-) -- -- Jerry van Dijk | Leiden, Holland -- Team Ada | [log in to unmask] -- see http://stad.dsl.nl/~jvandyk