Visit Our UNIX and Linux User Community


unable to return a decimal value from a function


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting unable to return a decimal value from a function
# 1  
Old 07-21-2009
unable to return a decimal value from a function

Hi Guys,

I am unable to return a decimal value from a function to the main script.
I am getting the correct value in the function but when it is returning to the main script using "return" it is coming as 0. Below is my code.

Code:
read VALUE_V fun_FATHERID fun_SONID fun_TOPID fun_RTYPE < function_output.dat;
echo "outside=$VALUE_V";
echo "outside=$fun_FATHERID";

wc -l function_output.dat | read length dummy;
echo "length=$length";

if [ "$length" -eq "1" ] -a [ "fun_RTYPE" -eq "RW" ]
then
echo "value_v=$VALUE_V";
echo "chile_value=$child_value";
VALUE_V=$(echo "scale=4; $VALUE_V * $child_value" | bc);
echo "inside fucntion=$VALUE_V";
return $VALUE_V;
fi

Thanks for your help in advance.

Regards,
Magesh.

---------- Post updated at 08:22 PM ---------- Previous update was at 08:20 PM ----------

above is the code of the function. the main script just calls this function.
# 2  
Old 07-21-2009
return is not same as in programming languages.
return is exit code, caller can read it from variable ?
Return value must put to the stdout and caller read it from stdin.
Example:
Code:
function sum()
{
   v1=$1
   v2=$2
   (( res = v1 + v2 ))
   echo "$res"
   return 100
}


total=$(  sum 1 2 )
stat=$?
echo "result is $total and exit code was $stat"

# 3  
Old 07-22-2009
Thanks KSHJI.. it was helpful

Previous Thread | Next Thread
Test Your Knowledge in Computers #460
Difficulty: Medium
The 64-bit timestamps used by NTP consist of a 32-bit part for seconds and a 32-bit part for fractional second.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Function - Make your function return an exit status

Hi All, Good Day, seeking for your assistance on how to not perform my 2nd, 3rd,4th etc.. function if my 1st function is in else condition. #Body function1() { if then echo "exist" else echo "not exist" } #if not exist in function1 my all other function will not proceed.... (4 Replies)
Discussion started by: meister29
4 Replies

2. Shell Programming and Scripting

Return: can only `return' from a function or sourced script

Not sure where the problem is. I can run the script without any issue using the following command. . /opt/app/scripts/cdc_migration.sh But it fails with the below error when I try it this way /opt/app/scripts/cdc_migration.sh /opt/app/scripts/cdc_migration.sh: line 65: return: can only... (1 Reply)
Discussion started by: svajhala
1 Replies

3. Shell Programming and Scripting

Unable to get the Specific column with 2 decimal place

Hi, I have an issue converting decimal places of a particular column, i am using below script to get the output, but the output is not generating in desired format. awk -F"," 'BEGIN{OFS=","}{if(NR==0)getline;if ($7 != "") {if ($7 > 0) $7=$7/100 ; {printf "%.2f"... (3 Replies)
Discussion started by: rramkrishnas
3 Replies

4. Shell Programming and Scripting

unable to return multilple values in perl

hello friends, i have written one perl script.Which opens a file and search for some parameter's value and gets the status of these parameters. but while i am trying to return these value always i am getting false. Can any one please help me.. here is that function: =======================... (5 Replies)
Discussion started by: harpal singh
5 Replies

5. Shell Programming and Scripting

Return a value from called function to the calling function

I have two scripts. script1.sh looks -------------------------------- #!/bin/bash display() { echo "Welcome to Unix" } display ----------------------------- Script2.sh #!/bin/bash sh script1.sh //simply calling script1.sh ------------------------------ (1 Reply)
Discussion started by: mvictorvijayan
1 Replies

6. Shell Programming and Scripting

return in function

I am using ksh. I want to know how can we make any function to return string or double value. I dont want to use the global variables. (5 Replies)
Discussion started by: PRKS
5 Replies

7. Shell Programming and Scripting

return value of a function

I have write a shell function to get the maximum of a vector. However, the returned value from the function is not always the correct one. Here is the script: maxval() { local max j i size arrval size=$1 ; shift max=-999999999 i=0 while do arrval="$1" if then ... (5 Replies)
Discussion started by: fl0r10
5 Replies

8. Shell Programming and Scripting

need to return value from function

how to return value from function and print from main program??? And also I need to return true or false... Is it possible? (5 Replies)
Discussion started by: darshakraut
5 Replies

9. Programming

decimal to binary function error

I have the following simple code to return a binary number in a array format given an interger and the number of the bits for specifying the interger as binary number. #include <stdio.h> #include <stdlib.h> int main () { // int* get_binary_number(int* bit_array, int num, int... (8 Replies)
Discussion started by: return_user
8 Replies

10. Shell Programming and Scripting

return value of a function

Hi I have a doubt in the way the variables inside a function are treated . if a function is called from the main script directly, the variables inside them act as global variables. however if the return value of the function is stored to some other variable in the main script as shown,... (3 Replies)
Discussion started by: prez
3 Replies

Featured Tech Videos