Sponsored Content
Top Forums Shell Programming and Scripting how can i find sqrt of a any number without using expr Post 302307336 by otheus on Wednesday 15th of April 2009 06:15:26 AM
Old 04-15-2009
Heh, That expression is very problematic. Here's one that works. The first argument is a number, which becomes 0 if it's not provided or if it is less than 0. The second argument is the number of decimal places to output -- or 4 if not provided.
Code:
y=$1
scale=4
# Make sure input is a valid number.
test -n "$y" || y=0; test "$y" -ge 0 || y=0
# Make sure scale is some number
test -z "$2" || scale=$2
# calc square root via bc
{ echo "scale=$scale"; echo "sqrt($y)" ; } | bc

 

10 More Discussions You Might Find Interesting

1. Programming

sqrt

Hi! when i'm trying to compile this lite example on my linux machine I'll get errors and i don't know why.. #include <stdio.h> #include <math.h> /* needed by sqrt() */ int main() { printf("%f", sqrt(10.0)); return (0); } this is the error: /tmp/cc33hNVHK.o: In function... (1 Reply)
Discussion started by: CreamHarry
1 Replies

2. Programming

sqrt is not find???

I was writing a simple program in linux, which includes sqrt function of c. I included the math.h. But when I use gcc to compile it, it gave an error message: /home/murat/tmp/ccOv9upo.o(.text+0x4b): In function `main': : undefined reference to `sqrt' collect2: ld returned 1 exit status I... (2 Replies)
Discussion started by: murataht
2 Replies

3. Shell Programming and Scripting

How to create SQRT function in catenate file

HI, I have a file which i catenate and using the fields in the file, I would like to get sqrt of it. I tried to man the function but it normally would need an echo as well as bc. What I am intending to find out is catenate a file where let say cat a.txt| awk ' { t= h*($3+$2); t=... (7 Replies)
Discussion started by: ahjiefreak
7 Replies

4. Shell Programming and Scripting

Find first digit in string using expr index

I have looked for hours for an answer, so I have decided to request your guidance. I want to substract the first number (series of digits) contained in a string. This string is the output of another command. The substring (number) can be located at any position inside the string. I want to... (4 Replies)
Discussion started by: jcd
4 Replies

5. Shell Programming and Scripting

PERL: Simple reg expr validate 6 digits number

Hi there! I'm trying to validate a simple 6 digits number with reg expr. I ONLY want 6 digits so when i type 7 digits the script should no validate the number. I've write this code: #!/usr/bin/perl while(<STDIN>){ if($_=~/\d{6}/){ print "Bingo!\n"; ... (2 Replies)
Discussion started by: BufferExploder
2 Replies

6. Programming

C Library reference error using sqrt() - will not compile.

This so basic that it should work.... Any ideas would be appreciared. Using a number directly in the sqrt allows it to compile. primrose > cat a.c #include <stdio.h> #include <math.h> int main(void) { double abcd=9; printf("%f\n",sqrt(abcd)); } primrose > gcc a.c Undefined first... (2 Replies)
Discussion started by: plastichead
2 Replies

7. UNIX for Dummies Questions & Answers

sqrt in bash

Hi, i have a the following script: #!/bin/bash a=3 b=9 let "c= b*a" let "d=sqrt $c " echo $d But when i execute the code, it gives me the an error saying: line 5: let: d=sqrt 27 : syntax error in expression (error token is "27 ") Can any body tell me what I'm doing wrong? (5 Replies)
Discussion started by: limadario
5 Replies

8. Shell Programming and Scripting

Find command - using regular expr

Hi, I would like to use find command to find file with a predefined extension for example find . modules/*.ksh *.lib I thought it's possible to use something like : find . modules/*. but it does not work. is there any other way? Thanks you (2 Replies)
Discussion started by: zam
2 Replies

9. Shell Programming and Scripting

awk to find number in a field then print the line and the number

Hi I want to use awk to match where field 3 contains a number within string - then print the line and just the number as a new field. The source file is pipe delimited and looks something like 1|net|ABC Letr1|1530||| 1|net|EXP_1040 ABC|1121||| 1|net|EXP_TG1224|1122||| 1|net|R_North|1123|||... (5 Replies)
Discussion started by: Mudshark
5 Replies

10. Shell Programming and Scripting

Q: Is SQRT(n) possible in a POSIX compliant shell? A: Yes within limits.

Hi all... This is just a fun project to see if it is possible to get a square root of a positive integer from 1 to 9200000 to 6 decimal places on a 64 bit architecture machine. It is coded around dash and the results show the values from 0 to 10000. Complex numbers can easily be catered for by... (3 Replies)
Discussion started by: wisecracker
3 Replies
mlib_SignalMelCepstral_F32(3MLIB)			    mediaLib Library Functions				 mlib_SignalMelCepstral_F32(3MLIB)

NAME
mlib_SignalMelCepstral_F32 - perform cepstral analysis in mel frequency scale SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ] #include <mlib.h> mlib_status mlib_SignalMelCepstral_F32(mlib_f32 *cepst, const mlib_f32 *signal, void *state); DESCRIPTION
The mlib_SignalMelCepstral_F32() function performs cepstral analysis in mel frequency scale. The first two steps of mel scale cepstral analysis is the same as in general cepstral anaysis. After the logarithm of the spectrum magni- tude is obtained, it is converted into mel frequency scale before the inverse Fourier transform. +-----------+ +-----------+ | Linear | | Inverse | ... ------>| to |------->| Fourier |-----> X'(k) | Mel Scale | X''(m) | Transform | c(n) +-----------+ +-----------+ where X'(k) is defined in linear frequency scale and X''(m) is defined in mel frequency scale. The mel frequency scale is defined as following. freq_mel = melmul * LOG10(1 + freq_linear / meldiv) where freq_mel is the frequency in mel scale, freq_linear is the frequency in linear scale, melmul is the multiplying factor, muldiv is the dividing factor. Optionally, a bank of band pass filters in linear frequency scale can be used below the bank of band pass filters in mel frequency scale, as shown below in linear frequency scale. 0 f1 f2 f3 fp fp+1 fp+2 fp+3 fp+q |---|---|---| ... |---|----|-----| ... | ... -> freq where fp = melbgn, fp+q = melend, p = nlinear, q = nmel; the filters number 1 to p are defined in linear frequency scale which have equal bandwidth in linear frequency scale; the filters number p+1 to p+q are defined in mel frequency scale which have equal bandwidth in mel frequency scale and increasing bandwidth in linear frequency scale. See Digital Signal Processing by Alan V. Oppenheim and Ronald W. Schafer, Prentice Hall, 1974. See Fundamentals of Speech Recognition by Lawrence Rabiner and Biing-Hwang Juang, Prentice Hall, 1993. PARAMETERS
The function takes the following arguments: cepst The cepstral coefficients. signal The input signal vector. state Pointer to the internal state structure. RETURN VALUES
The function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Committed | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
mlib_SignalMelCepstralInit_F32(3MLIB), mlib_SignalMelCepstralFree_F32(3MLIB), attributes(5) SunOS 5.11 2 Mar 2007 mlib_SignalMelCepstral_F32(3MLIB)
All times are GMT -4. The time now is 06:09 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy