Sponsored Content
Top Forums Shell Programming and Scripting gcd.sh script doesn't work... Post 302159418 by kantze on Thursday 17th of January 2008 06:55:18 PM
Old 01-17-2008
gcd.sh script doesn't work...

Hi there. I'm new to scripting in bash shell and I have this problem.
I'm trying to make a script that returns the greatest common divisor of two integer numbers according to Euclid's algorithm...

Here is, what I've done:
Code:
#!/bin/bash

m=$1
n=$2

while [ "$n" != 0 ]
do
if [ "$m" -gt "$n" ]; #line 8
then m=$m-$n
else n=$n-$m
fi
done
echo $n

and I get an error message: line 8:integer exrpession expected
I run the gcd.sh writing in the terminal
Code:
./gcd.sh 14 28

where 14 and 28 are integers, right?
So, what's the problem? Could you please tell me what should I write?
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shel Script doesn't work from Exceed

Hi, I am using this script to load up my Oracle Databases, but when I log in through Exceed, it hangs. Can anyone tell me what else I need to add to make this work?? Details ****************************************************************************************************... (11 Replies)
Discussion started by: dnkansah
11 Replies

2. UNIX for Dummies Questions & Answers

Script doesn't work, but commands inside work

Howdie everyone... I have a shell script RemoveFiles.sh Inside this file, it only has two commands as below: rm -f ../../reportToday/temp/* rm -f ../../report/* My problem is that when i execute this script, nothing happened. Files remained unremoved. I don't see any error message as it... (2 Replies)
Discussion started by: cheongww
2 Replies

3. Shell Programming and Scripting

script doesn't work in another distribution

Hi everybody: I usually use Mandriva distro (in my laptop), and I have made some scripts. These scripts work correctly but now, in other computer which is installed Ubuntu don't work, and I have this error message: The script is: ..... echo "Your option is:" echo read option case... (1 Reply)
Discussion started by: tonet
1 Replies

4. Shell Programming and Scripting

Expect script doesn't work under crontab

Hi All, Using Expect script when I run it manually it works. But when I put the entry in crontab, the job is still running after 15 hours. The script was created as root. I don't think it's a permission issue. Any idea? This is what I have under root crontab... 00 18 * * 1-5... (4 Replies)
Discussion started by: samnyc
4 Replies

5. Shell Programming and Scripting

Help with script.. it Just doesn't work

Hello,, Im verry new to scripting and have some problems with this script i made.. What it does: It checks a directory for a new directory and then issues a couple of commands. checks sfv - not doing right now checks rar - it checks if theres a rar file and when there is it skips to... (1 Reply)
Discussion started by: atmosroll
1 Replies

6. Shell Programming and Scripting

two grep in one script doesn't work?

Hi there, the following script doesn't work. the first part works, then the second 'grep' fails with ': not found'. However, if I take out the second part (starting with the grep command) and put in a seperate script, it works. everyone know what's wrong here? no two 'grep' in one script, that... (2 Replies)
Discussion started by: monkey77
2 Replies

7. Shell Programming and Scripting

Script doesn't work in loop but does if not

I have a script that only works if I remove it from the looping scenario. #!/bin/bash # Set the field seperator to a newline ##IFS=" ##" # Loop through the file ##for line in `cat nlist.txt`;do # put the line into a variable. ##dbuser=$line echo "copying plugin..." ... (6 Replies)
Discussion started by: bugeye
6 Replies

8. Shell Programming and Scripting

my script doesn't work :(

i have this script and when i ejecute it, the console tell me this " sintax error line 41 unexpected element "}" " is the sintaxis ok? #!/bin/bash if ;then { exit 0; } if ; then { sudo /etc/init.d/apache2 start; sudo /etc/init.d/mysql start; php5 & nautilus... (3 Replies)
Discussion started by: keiserx
3 Replies

9. Shell Programming and Scripting

[Solved] Script doesn't work..help?

hi, i am trying to run this script.the name of script is final.sh after i run it: #./final.sh & i grep the command # ps -a | grep bash and i see more then one processes runing 3!! Please use code tags how can i solve this problem? my target script must always run in... (8 Replies)
Discussion started by: zigizag
8 Replies

10. Shell Programming and Scripting

Read in script doesn't work

I am trying to run a script to make a simple modification to a number of similar files. The sed works, but after it runs and the differences are displayed, the script does not read ans to start a renaming script if the user answered Y or y.for i in "$@" do sed -f myfile.sed $i >$i.new diff... (2 Replies)
Discussion started by: wbport
2 Replies
mp(3)							     Library Functions Manual							     mp(3)

NAME
madd, msub, mult, mdiv, gcd, invert, rpow, msqrt, mcmp, min, omin, fmin, m_in, mout, omout, fmout, m_out, sdiv, itom - Performs multiple precision integer arithmetic LIBRARY
Object Code Library (libmp.a) SYNOPSIS
#include <mp.h> #include <stdio.h> typedef struct mint { int len; short *val; } MINT; madd( MINT *a, MINT *b, MINT *c ); msub( MINT *a, MINT *b, MINT *c ); mult( MINT *a, MINT *b, MINT *c ); mdiv( MINT *a, MINT *b, MINT *q, MINT *r ); pow( MINT *a, MINT *b, MINT *m, MINT *c ); gcd( MINT *a, MINT *b, MINT *c ); invert( MINT *a, MINT *b, MINT *c ); rpow( MINT *a, int n, MINT *c ); msqrt( MINT *a, MINT *b, MINT *r ); mcmp( MINT *a, MINT *b ); move( MINT *a, MINT *b ); min( MINT *a ); omin( MINT *a ); fmin( MINT *a, FILE *f ); m_in( MINT *a, int n, FILE *f ); mout( MINT *a ); omout( MINT *a ); fmout( MINT *a, FILE *f ); m_out( MINT *a, int n, FILE *f ); sdiv( MINT *a, short n, MINT *q, short *r ); *itom( short n ); DESCRIPTION
These functions perform arithmetic on integers of arbitrary length. The integers are stored using the defined type MINT. Pointers to a MINT can be initialized using the itom() function, which sets the initial value to n. After that, space is managed automatically by the routines. The madd(), msub() , and mult() functions assign to c the sum, difference, and product, respectively, of a and b. The mdiv() function assigns to q and r the quotient and remainder obtained from dividing a by b. The sdiv() function is like the mdiv() function except that the divisor is a short integer n and the remainder is placed in a short integer whose address is given as r. The msqrt() function produces the integer square root of a in b and places the remainder in r. The rpow() function calculates in c the value of a raised to the (``regular'' integral) power n, while the pow() function calculates this with a full multiple precision exponent b and the result is reduced modulo m. The gcd() function returns the greatest common denominator of a and b in c, and the invert() function computes c such that a*c mod b = 1, for a and b relatively prime. The mcmp() function returns a negative, zero, or positive integer value when a is less than, equal to, or greater than b, respectively. The move() function copies a to b. The min() and mout() functions do decimal input and output while the omin() and omout() functions do octal input and output. More gener- ally, the fmin() and fmout() functions do decimal input and output using file f, and m_in() and m_out do input and output with arbitrary radix n. On input, records should have the form of strings of digits terminated by a newline; output records have a similar form. NOTES
Programs which use the multiple-precision arithmetic library must be compiled with -lmp. delim off mp(3)
All times are GMT -4. The time now is 05:29 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy