03-28-2002
Yes, I like awk for working with numbers, particularly when I am dealing with other than whole integers.
The answer of zero that you are getting is correct, but simply truncated to a whole integer. You can force a certain number of decimal places by adding zeros to the numerator. But again, the result will be truncated, not rounded:
a=3
b=17
let x=${a}0000/$b
echo $x
1764
10 More Discussions You Might Find Interesting
1. Filesystems, Disks and Memory
I have a doubt with an error message, and i want to be sure if this is a normal situation or not.
Situation: I was formating and installing a SCSI 36Gb HD with UNIX SCO 5.05, the problem happens when is making the division and filesystem on disk 1, and the message error is "Exit value 139... (1 Reply)
Discussion started by: jav_v
1 Replies
2. UNIX for Dummies Questions & Answers
hi
I am having two variables namely a=7 & b=8. I have to subtract these two variables. I am using the command
c=`expr $a / $b`
When I check the value of c, it comes out to be zero.
Please help.
Regards
Rochit (9 Replies)
Discussion started by: rochitsharma
9 Replies
3. Shell Programming and Scripting
Hi,
I am writing a script that among other things will be checking for various files on mount points. One of the conditions is that unless the server has failed over the df command will show root ( / ). If when checking the files the script comes across /, I want it to skip it, otherwise to... (2 Replies)
Discussion started by: cat55
2 Replies
4. Shell Programming and Scripting
i have a script that is doing the following:
awk 'BEGIN {FS=","} ; {printf("%.10f",($5 - $2)/(3 * $3))}' data > test
now some records in $3 contain zeroes. i don't want to remove those records. is it possible to check for division by zero and then write a "N/A" for that record in the o/p... (2 Replies)
Discussion started by: npatwardhan
2 Replies
5. Shell Programming and Scripting
Hi Everyone,
a.txt
line1;a;33
line1;c;22
line1;b;0
line1;a;55
a.pl
#!/usr/bin/perl
use strict;
use warnings;
my @sorted=();
my @tmp;
my $FA;
my @F; (0 Replies)
Discussion started by: jimmy_y
0 Replies
6. Shell Programming and Scripting
Hello,
I am searching for a way to calculate for example 10/100 within a shellscript and the result should be 0.1 and not just 0.
Every alternative i tried just results 0
Thank you in advance
2retti (6 Replies)
Discussion started by: 2retti
6 Replies
7. UNIX for Advanced & Expert Users
I received error "awk: division by zero" while executing the following statement.
SunOS 5.10 Generic_142900-15 sun4us sparc FJSV,GPUZC-M
echo 8 | awk 'END {printf ("%d\n",NR/$1 + 0.5);}' file1.lst
awk: division by zero
Can someone provide solution?
Thanks
Please use code... (11 Replies)
Discussion started by: kumar77
11 Replies
8. Shell Programming and Scripting
input
one two three four
0 0 0 10424
0 102 0 15091
1 298 34 11111
0 10 0 1287
scripts
awk 'NR>1{print ($1/$2) / ($3/$4)}'
awk 'NR>1{ if ($1 ||$3 ||$2|| $4 == 0) print 0; else print (($1/$2)/($3/$4))}'
error
awk: division by zero
input record number 1, file rm
source line... (9 Replies)
Discussion started by: quincyjones
9 Replies
9. UNIX for Dummies Questions & Answers
hi,
The below commands result only the whole number(not giving the decimal values).
pandeeswaran@ubuntu:~$ echo 1,2,3,4|sed 's/,/\//g'|bc
0
pandeeswaran@ubuntu:~$ echo 1000,2,3|sed 's/,/\//g'|bc
166
How to make it to return the decimal values?
Thanks (5 Replies)
Discussion started by: pandeesh
5 Replies
10. UNIX for Dummies Questions & Answers
I have a function that outputs 3 lines for each result and I want to know how many results there are.
so for example
function | wc -l
24
but I want to see the result 8.
so is there a easy way to divide the result? (5 Replies)
Discussion started by: yatici
5 Replies
DIV(3) Linux Programmer's Manual DIV(3)
NAME
div, ldiv, lldiv, imaxdiv - compute quotient and remainder of an integer division
SYNOPSIS
#include <stdlib.h>
div_t div(int numerator, int denominator);
ldiv_t ldiv(long numerator, long denominator);
lldiv_t lldiv(long long numerator, long long denominator);
#include <inttypes.h>
imaxdiv_t imaxdiv(intmax_t numerator, intmax_t denominator);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
lldiv():
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
or cc -std=c99
DESCRIPTION
The div() function computes the value numerator/denominator and returns the quotient and remainder in a structure named div_t that contains
two integer members (in unspecified order) named quot and rem. The quotient is rounded toward zero. The result satisfies quot*denomina-
tor+rem = numerator.
The ldiv(), lldiv(), and imaxdiv() functions do the same, dividing numbers of the indicated type and returning the result in a structure of
the indicated name, in all cases with fields quot and rem of the same type as the function arguments.
RETURN VALUE
The div_t (etc.) structure.
CONFORMING TO
SVr4, 4.3BSD, C89. C99. The functions lldiv() and imaxdiv() were added in C99.
EXAMPLE
After
div_t q = div(-5, 3);
the values q.quot and q.rem are -1 and -2, respectively.
SEE ALSO
abs(3), remainder(3)
COLOPHON
This page is part of release 3.44 of the Linux man-pages project. A description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
2012-04-17 DIV(3)