home *** CD-ROM | disk | FTP | other *** search
- ! ><HopeProgs$Dir>.SimpleTupl !
- ! !
- !------------------------------------------!
- ! !
- ! This is a collection of simple Hope !
- ! functions over tuples. !
- ! !
- !------------------------------------------!
-
-
-
-
- dec AddDigit : num # num -> num;
- --- AddDigit(Number,Digit) <= (Number * 10) + Digit;
-
-
-
- dec Split : num -> num # num;
- --- Split Number
- <= ( (Number div 10) , (Number mod 10) );
-
-
- dec join : num # num -> num;
- --- join (first,second)
- <= if second=0
- then first
- else AddDigit( join(first,x) ,y ) where (x,y) == Split(second);
-
-
-
-
- ! O(n^2) reverse !
-
- dec ReverseDigits : num -> num;
- --- ReverseDigits n
- <= if n < 10
- then n
- else join( LastDigit , ReverseDigits(FirstDigits))
- where (FirstDigits,LastDigit) == Split n;
-
-
-