Sponsored Content
Top Forums Shell Programming and Scripting Decimal number calculation problem Post 302737279 by Devesh5683 on Wednesday 28th of November 2012 04:04:35 PM
Old 11-28-2012
Decimal number calculation problem

I have a below snippet of code from my perl script and its causing a problem when the output of $lTAX is 0 (zero) its getting displayed as -0.00. I want output to be 0 not -0.00. Any help would be appreciated.


Code:
#!/usr/bin/perl
my $lTotA = 50.94;
my $lVatA = 8.49;
my $lAllocD;
my $lAdjNr = 'A23232';
my $lAcctNr = '2000971';
my $TAX = 90018;
my $UNKNOWN = 90020;
my $VAT_EXEMPT     = 9000019;
$lAllocD{$lAcctNr}{$lAdjNr}{$TAX} = 3.7;
$lAllocD{$lAcctNr}{$lAdjNr}{$UNKNOWN} = 0.0;
$lAllocD{$lAcctNr}{$lAdjNr}{$VAT_EXEMPT} = 38.75;



my $lTAX  =   sprintf("%0.2f",$lTotA-$lVatA- $lAllocD{$lAcctNr}{$lAdjNr}{$TAX}- $lAllocD{$lAcctNr}{$lAdjNr}{$UNKNOWN}-$lAllocD{$lAcctNr}{$lAdjNr}{$VAT_EXEMPT});
print "\n**TAXABLE AMT is:$lTAX\n";

 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

need help converting string to number for calculation

I've searched the forum and google, but can't see an answer to this simple problem. Here's my small test script: #!/bin/csh echo "enter a number:" read num echo "you entered $num" set num = `expr $num + 1` echo new value is $num can someone show me how to do this calculation? note that... (4 Replies)
Discussion started by: tpatput
4 Replies

2. Shell Programming and Scripting

decimal calculation

Hi am calculating the percentage of the pass and fail. Pass: echo `echo 1498*100/1667| bc`% fail: echo `echo 169*100/1667 | bc`% for this am getting PASS= 89% fail =10 % I need to fetch the exact decimal percentage like PASS = 89.8 % FAIL= 10.2 % Please advice me (3 Replies)
Discussion started by: bobprabhu
3 Replies

3. Shell Programming and Scripting

Test decimal number

Hi, I would like test if a number is a decimal number or not (9 Replies)
Discussion started by: francis_tom
9 Replies

4. Shell Programming and Scripting

Average calculation based on number of rows

Dear users, I need your support, I have a file like this: 272134.548 6680572.715 272134.545 6680572.711 272134.546 6680572.713 272134.548 6680572.706 272134.545 6680572.721 272134.543 6680572.710 272134.544 6680572.715 272134.543 6680572.705 272134.540 6680572.720 272134.544... (10 Replies)
Discussion started by: Gery
10 Replies

5. Shell Programming and Scripting

Add zero in decimal number

echo "scale=2; 282.73/640" | bc This will print .44 How to make the variable as 0.44 (2 Replies)
Discussion started by: sandy1028
2 Replies

6. Shell Programming and Scripting

KSH SHELL: problem calculation number of lines inside compressed file

Hi Gurus, I am working with a korn shell script to simplify some operations of calculation number of lines inside compressed file. The called function (inside a cycle) is the following: ######################################### # F.ne: CheckCount #########################################... (3 Replies)
Discussion started by: GERMANICO
3 Replies

7. Shell Programming and Scripting

number of digits after decimal

Hi All, I have a file of decimal numbers, cat file1.txt 1.1382666907 1.2603107334 1.6118799297 24.4995857056 494.7632588468 560.7633734425 ..... I want to see the output as only 7 digits after decimal (5 Replies)
Discussion started by: senayasma
5 Replies

8. Shell Programming and Scripting

Matching a decimal number?

Hi everyone! Easy question for everyone. I'm trying to run a command line to find an exact match of a decimal number within a file. The number can be a positive OR negative number. For instance, if I want to find only the number -1 in the file that has: -17.6 -17 -16.3 -16.2 -15.7 -15.3... (6 Replies)
Discussion started by: lucshi09
6 Replies

9. Shell Programming and Scripting

Percentage Calculation in Decimal

Hi, I have two variable and I need to calculate the percentage of them. Example: (b-a)*100/b How can I do it? I need to do it till 2 decimal point. (16 Replies)
Discussion started by: Anupam_Halder
16 Replies
Test::Script::Run(3pm)					User Contributed Perl Documentation				    Test::Script::Run(3pm)

NAME
Test::Script::Run - test the script with run SYNOPSIS
use Test::Script::Run; # customized names of bin dirs, default is qw/bin sbin script ./; @Test::Script::Run::BIN_DIRS = qw/bin/; run_ok( 'app_name', [ app's args ], 'you_app runs ok' ); my ( $return, $stdout, $stderr ) = run_script( 'app_name', [ app's args ] ); run_output_matches( 'app_name', [app's args], [ 'out line 1', 'out line 2' ], [ 'err line 1', 'err line 2' ], 'run_output_matches' ); run_output_matches_unordered( 'app_name', [ app's args ], [ 'out line 2', 'out line 1' ], [ 'err line 2', 'err line 1' ], 'run_output_matches_unordered' ); DESCRIPTION
This module exports some subs to help test and run scripts in your dist's bin/ directory, if the script path is not absolute. Nearly all the essential code is stolen from Prophet::Test, we think subs like those should live below "Test::" namespace, that's why we packed them and created this module. FUNCTIONS
run_script($script, $args, $stdout, $stderr) Runs the script $script as a perl script, setting the @INC to the same as our caller. $script is the name of the script to be run (such as 'prophet'). $args is a reference to an array of arguments to pass to the script. $stdout and $stderr are both optional; if passed in, they will be passed to IPC::Run3's run3 subroutineA as its $stdout and $stderr args. Otherwise, this subroutine will create scalar references to pass to run3 instead (which are treated as strings for STDOUT/STDERR to be written to). Returns run3's return value and, if no $stdout and $stderr were passed in, the STDOUT and STDERR of the script that was run. run_ok($script, $args, $msg) Runs the script, checking that it didn't error out. $script is the name of the script to be run (e.g. 'prophet'). $args is an optional reference to an array of arguments to pass to the script when it is run. $msg is an optional message to print with the test. If $args is not specified, you can still pass in a $msg. Returns nothing of interest. run_not_ok($script, $args, $msg) opposite of run_ok get_perl_cmd($script, @ARGS) Returns a list suitable for passing to "system", "exec", etc. If you pass $script then we will search upwards for it in @BIN_DIRS is_script_output($scriptname @args, @stdout_match, @stderr_match, $msg) Runs $scriptname, checking to see that its output matches. $args is an array reference of args to pass to the script. $stdout_match and $stderr_match are references to arrays of expected lines. $msg is a string message to display with the test. $stderr_match and $msg are optional. (As is $stdout_match if for some reason you expect your script to have no output at all. But that would be silly, wouldn't it?) Allows regex matches as well as string equality (lines in $stdout_match and $stderr_match may be Regexp objects). run_output_matches($script, $args, $exp_stdout, $exp_stderr, $msg) A wrapper around is_script_output that also checks to make sure the test runs without throwing an exception. run_output_matches_unordered($script, $args, $exp_stdout, $exp_stderr, $msg) This subroutine has exactly the same functionality as run_output_matches, but doesn't impose a line ordering when comparing the expected and received outputs. last_script_stdout return last script's stdout last_script_stderr return last script's stderr last_script_exit_code return last script's exit code DEPENDENCIES
Test::More, Test::Exception, IPC::Run3, File::Basename, File::Spec BUGS AND LIMITATIONS
No bugs have been reported. AUTHOR
sunnavy "<sunnavy@bestpractical.com>" LICENCE AND COPYRIGHT
Copyright 2009 Best Practical Solutions. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.10.1 2011-01-07 Test::Script::Run(3pm)
All times are GMT -4. The time now is 09:35 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy