Stop program with entering a key

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...

···

--
Posted via http://www.ruby-forum.com/.

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

···

--
Michael Jackson

@mjijackson

On Mon, Jul 26, 2010 at 5:50 AM, hazal Ates <niyaziates77@gmail.com> wrote:

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...
--
Posted via http://www.ruby-forum.com/\.

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

···

--
Posted via http://www.ruby-forum.com/.

Michael Jackson wrote:

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

--
Michael Jackson
http://mjijackson.com
@mjijackson

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

···

--
Posted via http://www.ruby-forum.com/\.

Giampiero Zanchi wrote:

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.

···

--
Posted via http://www.ruby-forum.com/\.

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 <niyaziates77@gmail.com>

Michael Jackson wrote:
> 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
>
> --
> Michael Jackson
> http://mjijackson.com
> @mjijackson

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

--
Posted via http://www.ruby-forum.com/\.

--
Thiago Fernandes Massa
11 83979414

Hello,

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

Concerning GOTO's, there is a little comic I really like:

:o)

···

--
JJ Fleck
PCSI1 Lycée Kléber

Thiago Massa wrote:

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.

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 ?

···

2010/7/26 hazal Ates <niyaziates77@gmail.com>

--
Posted via http://www.ruby-forum.com/\.

hazal Ates wrote:

>>

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')

···

2010/7/26 hazal Ates <niyaziates77@gmail.com>

--
Posted via http://www.ruby-forum.com/\.