stop program with entering a key...

H

hazal Ates

i m a new in Ruby . sorry may be its a silly question.
my small game " finding a randon number" in codes i want to put
"pls press -1 to stop game"
or
end of first game i want to ask
"do you cont. or stop ( y / n ) enter , pls"

but i dont know that how (-1) or y/n work to stop or cont.

i want to like this code :
if keyenter=(-1) goto last line and stop
if keyenter = y goto beginning of game
if keyenter = n goto end of prog. it says puts "thank you , game over"
like this...
 
M

Michael Jackson

The following code doesn't do exactly what you need, but it should be
enough to get you started in the right direction.

def prompt
STDOUT.write ">> "
gets
end

def game_over
puts "thank you.\ngame over!"
exit
end

trap ("INT") { puts; game_over }

puts "welcome to my game. please press 'q' to quit."

while (code =3D prompt)
case code.strip
when "y"
puts "start game"
when "q"
game_over
else
puts "sorry, i don't understand."
end
end
 
H

hazal Ates

Michael said:
The following code doesn't do exactly what you need, but it should be
enough to get you started in the right direction.

def prompt
STDOUT.write ">> "
gets
end

def game_over
puts "thank you.\ngame over!"
exit
end

trap ("INT") { puts; game_over }

puts "welcome to my game. please press 'q' to quit."

while (code = prompt)
case code.strip
when "y"
puts "start game"
when "q"
game_over
else
puts "sorry, i don't understand."
end
end

thank you MJ

my desire generaaly not for func. of this but

after press. "y" for example ( at the last line ) prog execution must
GOTO beginning of program .

may be you now in pascal its easy with GOTO
 
T

Thiago Massa

[Note: parts of this message were removed to make it a legal post.]

Just define a function like "play_game" and do a loop that gets the input in
order to play the game or not and calls that function.

I don't even know how to use goto's.
 
H

hazal Ates

Thiago said:
Just define a function like "play_game" and do a loop that gets the
input in
order to play the game or not and calls that function.

I don't even know how to use goto's.

2010/7/26 hazal Ates <[email protected]>

thank you TM and others ;

let me give an example what i want in Pascal code :

writeln('continue ? // finish game =====> y / n ');
writeln;
readln(k);
if (k='E') or (k='e')
then
goto (begining of prog.);

can you give an example to run same code in ruby ?
 
H

hazal Ates

hazal said:
thank you TM and others ;

let me give an example what i want in Pascal code :

writeln('continue ? // finish game =====> y / n ');
writeln;
readln(k);
if (k='E') or (k='e')
then
goto (begining of prog.);

can you give an example to run same code in ruby ?

change the line like ; if (k='Y') or (k='y')
 
G

Giampiero Zanchi

def menu
p "Write a number"
p "Q to stop"
the_replay = gets.chomp
end

def do_exit
p "Bye bye"
exit
end

while 1 == 1 do
the_reply = menu
case the_reply
when "q" then do_exit
when "Q" then do_exit
end
p the_reply
end
 
H

hazal Ates

Giampiero said:
def menu
p "Write a number"
p "Q to stop"
the_replay = gets.chomp
end

def do_exit
p "Bye bye"
exit
end

while 1 == 1 do
the_reply = menu
case the_reply
when "q" then do_exit
when "Q" then do_exit
end
p the_reply
end

thank you G. Z.
i use your codes to my problem.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,054
Latest member
TrimKetoBoost

Latest Threads

Top