[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Very slim Desktop Manager



On 11/16/08 02:25, Tzafrir Cohen wrote:
On Sun, Nov 16, 2008 at 07:20:07AM +0100, s. keeling wrote:

#!/usr/bin/perl -w
#
# Usage: calcme <string_to_calculate> [<output_format>]
#
# Input is a string like (10+3)/7 or "(10 + 3) / 7"
# Output is the calculated result of the string
# Optional formatting can be supplied as 2nd parameter.
#
my ( $format, $calcme, $output );

if ( @ARGV == 0 || @ARGV > 2 ) {
   die( "Usage: $0 <\"formula_to_calculate\"> [<output_format>]\n: $!" );
}

$format = "";
$calcme = $ARGV[0];
( @ARGV == 2 ) && ( $format = $ARGV[1] );

$output = eval( $calcme );

if( @ARGV == 1 ) {
   print(STDOUT "$output\n");
} else {
   printf(STDOUT "$format\n", $output);
}

exit(0);

__END__

Here's something simpler:

calc() { perl -e "print ''.($*).\"\\n\""; }

$ calc

$ calc 4
4
$ calc 4 + 8
12
$ calc 1/2
0.5

You *are* Da Man!!!!

$ calc 'log(22)'
3.09104245335832

(Does not support the extra formatting you have, though)



--
Ron Johnson, Jr.
Jefferson LA  USA

If you don't agree with me, you are worse than Hitler!!!


Reply to: