magic 8ball


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers magic 8ball
# 1  
Old 04-20-2009
magic 8ball

when i use this code for the script of the magic 8ball, i get an error message and it always displays the sam answer. What am i doing wrong or what am i missing thanks

#!/bin/sh
#< Magic eight ball!
# KW 26/11/04
# Requires "rand"

echo "Enter \"q\" followed by return to quit"

function ask_it
{
echo -e "\nAsk the mysterious 8-ball a question..."
read question
}

ask_it

while [ "$question" != "q" ]; do
rand=`rand 100`
if [ "$rand" -lt "10" ]; then
echo "It is definite"
elif [ "$rand" -lt "20" ]; then
echo "It is looking probable"
elif [ "$rand" -lt "30" ]; then
echo "There is great certainty"
elif [ "$rand" -lt "40" ]; then
echo "Maybe"
elif [ "$rand" -lt "50" ]; then
echo "It doesn't look promising"
elif [ "$rand" -lt "60" ]; then
echo "Probably not"
elif [ "$rand" -lt "70" ]; then
echo "A definite no"
elif [ "$rand" -lt "80" ]; then
echo "All the signs point to yes"
elif [ "$rand" -lt "90" ]; then
echo "All the signs point to no"
else
echo "Who can be sure? I'm not..."
fi
ask_it
done

exit 0
# 2  
Old 04-20-2009
Code tags for code. They make things readable. [ code ] stuff [ /code ] stuff without the extra spaces in the tags.

It might be useful to know what the error message actually is. And what answer it always displays.
# 3  
Old 04-20-2009
I'd be curious to know what do you get when you echo this out the value of $rand from the line rand=`rand 100`?? Do you have rand on your system?
# 4  
Old 04-21-2009
i get a file does not exist and it always comes up with the same one answer
# 5  
Old 04-21-2009
I would assume (without seeing any actual error information) that you are getting the same answer for two reasons.

1.) Your rand() call isn't working correctly. (Again, we would need error information.)

2.) You are doing
Code:
if [ $FOO -lt $BAR]

in several if/elif statements. You really should(tm) be doing ranges, not 'first match wins' -- ie, checking if the rand() number is between 0 and 9 executes one action, 10 to 10 another, and so on.
# 6  
Old 04-22-2009
I keep getting " it is definate". How would ichange it so all the answers have the chance to appear
# 7  
Old 04-23-2009
You might need to srand() before you rand(), e.g...
Code:
$ function rand () { echo $1 | awk '{srand(); printf "%d\n", rand()*$1}'; }
$ rand 100
62
$ rand 100
77

 
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

sed magic

Hello all, I have an inherited an old ugly script I'm trying to clean up a bit. What I am currently working on is a line like the following: Complication=" and ta.secID = 011222 and upper(ta.proc_ctrl_no) != 'IMPACT'";; I just want to combine a search for lines that begin with... (5 Replies)
Discussion started by: blip42
5 Replies

2. What is on Your Mind?

I got a magic wand

My new magic wand just came. It looks great. Looking at it, it looks like it is carved by hand from a solid piece of wood. It could easily serve as a prop in a Harry Potter film. But it is actually a high tech appliance. A built-in accelerometer can detect how you are moving the wand. ... (2 Replies)
Discussion started by: Perderabo
2 Replies

3. Shell Programming and Scripting

sed magic

I want to become an expert @ using sed, but i do not have enough time... Atm I have a repository in my apt/sources.list but it is commented out since i do not want to install packages from it (backtrack repository) except the exploitdb package. I would like make a command, lets say... (5 Replies)
Discussion started by: redsolja
5 Replies

4. Shell Programming and Scripting

sed magic!

Hi, I have this line in my script, and works perfect! tran= "$(sed = "$fname" | sed "/./N; s/\n/: /" | sed -n "${beg},${end}p")" $fname its a file, and gets multilines between beg and end.: Something like this: 1: line a 2: line b 3: line c But now, I want insert in the end of each... (9 Replies)
Discussion started by: vibra
9 Replies

5. UNIX for Advanced & Expert Users

magic.h

Where can I find #defines for filetypes like the ELF etc and the magic.h file? CAn anyone advice. Thanks in advance. (1 Reply)
Discussion started by: vijlak
1 Replies

6. UNIX for Dummies Questions & Answers

magic.h

Where can I find #defines for filetypes like the ELF etc and the magic.h file? CAn anyone advice. Thanks in advance. (0 Replies)
Discussion started by: vijlak
0 Replies

7. Filesystems, Disks and Memory

Bad Magic Number

Dear All, i have a SCSI hard disk drive i'm installing on it solaris 5 and the workstation is sun sparc, i made an image of this H.D using Norton Ghost 6, so i took off the SCSI H.D from the sun workstation and put it on a Compaq server then i booted the server from the Norton Ghost floppy disk... (0 Replies)
Discussion started by: wesweshahaha
0 Replies

8. UNIX for Advanced & Expert Users

what is magic file ?

i am working under this sysytem SunOS sparc SUNW,UltraAX-i2 Some system on this server creates a file named like this. Elem_ee.xml.gz Elem_ee.xml.gz.magic In order to look into Elem_ee.xml.gz.magic, i first renamed Elem_ee.xml.gz.magic to Elem_ee.xml.gz and tried to unzip it. but returns... (3 Replies)
Discussion started by: oppai
3 Replies

9. UNIX for Dummies Questions & Answers

Boot Magic 7

For a multi-boot setup (win2K, XP & SuSE) over 3 drives, where should Boot Magic be installed to? And does it matter which o/s installs it? (3 Replies)
Discussion started by: onestepto
3 Replies
Login or Register to Ask a Question