Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.ruby > #7233 > unrolled thread

Using functions to return something

Started byCai Gengyang <gengyangcai@gmail.com>
First post2016-04-19 07:06 -0700
Last post2016-04-20 10:30 +0200
Articles 10 — 5 participants

Back to article view | Back to comp.lang.ruby


Contents

  Using functions to return something Cai Gengyang <gengyangcai@gmail.com> - 2016-04-19 07:06 -0700
    Re: Using functions to return something Robert Klemme <shortcutter@googlemail.com> - 2016-04-19 19:19 +0200
      Re: Using functions to return something Cai Gengyang <gengyangcai@gmail.com> - 2016-04-19 22:28 -0700
        Re: Using functions to return something Sebastian Christ <rudolfo.christ@gmail.com> - 2016-04-20 09:25 +0200
          Re: Using functions to return something Cai Gengyang <gengyangcai@gmail.com> - 2016-04-20 04:12 -0700
            Re: Using functions to return something Sebastian Christ <rudolfo.christ@gmail.com> - 2016-04-20 15:42 +0200
              Re: Using functions to return something Kaz Kylheku <545-066-4921@kylheku.com> - 2016-04-20 14:34 +0000
                Re: Using functions to return something Sebastian Christ <rudolfo.christ@gmail.com> - 2016-04-20 20:48 +0200
                  Re: Using functions to return something Kaz Kylheku <545-066-4921@kylheku.com> - 2016-04-20 19:27 +0000
        Re: Using functions to return something jacki <collector@idealan.pl> - 2016-04-20 10:30 +0200

#7233 — Using functions to return something

FromCai Gengyang <gengyangcai@gmail.com>
Date2016-04-19 07:06 -0700
SubjectUsing functions to return something
Message-ID<b1e27c74-cf34-49c3-a4a1-85f55f0e55cd@googlegroups.com>
--- So I managed to write a simple function and use return and puts to display it.

def add(a, b)
  puts "ADDING #{a} + #{b}"
  return a + b
end

age = add(30, 5)

puts "Age: #{age}"

Display :

CaiGengYangs-MacBook-Pro:GoatBoy CaiGengYang$ ruby ex80.rb
ADDING 30 + 5
Age: 35

--- But when I tried to extend it to (A+B)/C, it display error message :

def add(a, b)
  puts "(ADDING #{a} + #{b}) / #{c}"
  return (a + b) / c
end

age = add(30, 10) / 5

puts "Age: #{age}"

Display :

CaiGengYangs-MacBook-Pro:GoatBoy CaiGengYang$ ruby ex90.rb
ex90.rb:2:in `add': undefined local variable or method `c' for main:Object (NameError)
	from ex90.rb:6:in `<main>''

Any smart person over here ? Help lah ...

Gengyang

[toc] | [next] | [standalone]


#7234

FromRobert Klemme <shortcutter@googlemail.com>
Date2016-04-19 19:19 +0200
Message-ID<dnn7koFrj3gU1@mid.individual.net>
In reply to#7233
On 19.04.2016 16:06, Cai Gengyang wrote:
> --- So I managed to write a simple function and use return and puts to display it.
>
> def add(a, b)
>    puts "ADDING #{a} + #{b}"
>    return a + b
> end
>
> age = add(30, 5)
>
> puts "Age: #{age}"
>
> Display :
>
> CaiGengYangs-MacBook-Pro:GoatBoy CaiGengYang$ ruby ex80.rb
> ADDING 30 + 5
> Age: 35
>
> --- But when I tried to extend it to (A+B)/C, it display error message :
>
> def add(a, b)
>    puts "(ADDING #{a} + #{b}) / #{c}"
>    return (a + b) / c
> end
>
> age = add(30, 10) / 5
>
> puts "Age: #{age}"
>
> Display :
>
> CaiGengYangs-MacBook-Pro:GoatBoy CaiGengYang$ ruby ex90.rb
> ex90.rb:2:in `add': undefined local variable or method `c' for main:Object (NameError)
> 	from ex90.rb:6:in `<main>''
>
> Any smart person over here ? Help lah ...

The error message really says it all.

	robert


-- 
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/

[toc] | [prev] | [next] | [standalone]


#7235

FromCai Gengyang <gengyangcai@gmail.com>
Date2016-04-19 22:28 -0700
Message-ID<69f480e7-0d0b-4fc7-bd69-49fc2f6540c4@googlegroups.com>
In reply to#7234
This is what I did :

I created a file , defined a new variable c and saved it as ex50.rb ---

def add(a, b, c)   
    puts "(ADDING #{a} + #{b}) / #{c}"   
    return (a + b) / c 
end 

age = add(30, 10) / 5 

puts "Age: #{age}"

Then I tried to run it :

CaiGengYangs-MacBook-Pro:~ CaiGengYang$ ruby ex50.rb

But I got this error message :

ruby: No such file or directory -- ex50.rb (LoadError)





On Wednesday, April 20, 2016 at 1:19:26 AM UTC+8, Robert Klemme wrote:
> On 19.04.2016 16:06, Cai Gengyang wrote:
> > --- So I managed to write a simple function and use return and puts to display it.
> >
> > def add(a, b)
> >    puts "ADDING #{a} + #{b}"
> >    return a + b
> > end
> >
> > age = add(30, 5)
> >
> > puts "Age: #{age}"
> >
> > Display :
> >
> > CaiGengYangs-MacBook-Pro:GoatBoy CaiGengYang$ ruby ex80.rb
> > ADDING 30 + 5
> > Age: 35
> >
> > --- But when I tried to extend it to (A+B)/C, it display error message :
> >
> > def add(a, b)
> >    puts "(ADDING #{a} + #{b}) / #{c}"
> >    return (a + b) / c
> > end
> >
> > age = add(30, 10) / 5
> >
> > puts "Age: #{age}"
> >
> > Display :
> >
> > CaiGengYangs-MacBook-Pro:GoatBoy CaiGengYang$ ruby ex90.rb
> > ex90.rb:2:in `add': undefined local variable or method `c' for main:Object (NameError)
> > 	from ex90.rb:6:in `<main>''
> >
> > Any smart person over here ? Help lah ...
> 
> The error message really says it all.
> 
> 	robert
> 
> 
> -- 
> remember.guy do |as, often| as.you_can - without end
> http://blog.rubybestpractices.com/

[toc] | [prev] | [next] | [standalone]


#7236

FromSebastian Christ <rudolfo.christ@gmail.com>
Date2016-04-20 09:25 +0200
Message-ID<m21t60n3mx.fsf@gmail.com>
In reply to#7235
What happened to "GoatBoy CaiGengYang"? It seems your other exercise
live in that directory?

Regards,
Sebastian

-- 
Sebastian (Rudolfo) Christ
http://rudolfochrist.github.io
GPG Fingerprint: 306D 8FD3 DFB6 4E44 5061
                 CE71 6407 D6F8 2AC5 55DD

[toc] | [prev] | [next] | [standalone]


#7238

FromCai Gengyang <gengyangcai@gmail.com>
Date2016-04-20 04:12 -0700
Message-ID<3d74ad52-d0db-4902-82d1-35c4f502b3ab@googlegroups.com>
In reply to#7236
Saved it in mystuff directory actually rather than Goatboy. 

Never mind ... gonna move on for the time being. (This was just a side issue I suddenly thought of). I wanna complete the entire ebook, then start looking at some open-source code and start making a web-based game. 

Are there more Ruby game engines online ? 
This is the only one I could find : http://blowmage.com/2015/04/17/writing-games-ruby


On Wednesday, April 20, 2016 at 3:25:17 PM UTC+8, Sebastian Christ wrote:
> What happened to "GoatBoy CaiGengYang"? It seems your other exercise
> live in that directory?
> 
> Regards,
> Sebastian
> 
> -- 
> Sebastian (Rudolfo) Christ
> http://rudolfochrist.github.io
> GPG Fingerprint: 306D 8FD3 DFB6 4E44 5061
>                  CE71 6407 D6F8 2AC5 55DD

[toc] | [prev] | [next] | [standalone]


#7239

FromSebastian Christ <rudolfo.christ@gmail.com>
Date2016-04-20 15:42 +0200
Message-ID<m2oa94l7lc.fsf@gmail.com>
In reply to#7238
If you know that you've saved your file in "mystuff", how comes that
you're puzzled by this?

On 2016-04-19 22:28, Cai Gengyang <gengyangcai@gmail.com> wrote:
 > Then I tried to run it :
 > 
 > CaiGengYangs-MacBook-Pro:~ CaiGengYang$ ruby ex50.rb
 > 
 > But I got this error message :
 > 
 > ruby: No such file or directory -- ex50.rb (LoadError)

-- 
Sebastian (Rudolfo) Christ
http://rudolfochrist.github.io
GPG Fingerprint: 306D 8FD3 DFB6 4E44 5061
                 CE71 6407 D6F8 2AC5 55DD

[toc] | [prev] | [next] | [standalone]


#7240

FromKaz Kylheku <545-066-4921@kylheku.com>
Date2016-04-20 14:34 +0000
Message-ID<20160420073113.752@kylheku.com>
In reply to#7239
On 2016-04-20, Sebastian Christ <rudolfo.christ@gmail.com> wrote:
> If you know that you've saved your file in "mystuff", how comes that
> you're puzzled by this?

#15 ("WACF") in "Academic Programmers: A Spotter's Guide".

http://www.ee.ryerson.ca/~elf/hack/academic.html

(Not implying that the slobbering imbecile is an academic in any way).

[toc] | [prev] | [next] | [standalone]


#7241

FromSebastian Christ <rudolfo.christ@gmail.com>
Date2016-04-20 20:48 +0200
Message-ID<m2h9ewktfu.fsf@gmail.com>
In reply to#7240
On 2016-04-20 14:34, Kaz Kylheku <545-066-4921@kylheku.com> wrote:
 > 
 > On 2016-04-20, Sebastian Christ <rudolfo.christ@gmail.com> wrote:
 >> If you know that you've saved your file in "mystuff", how comes that
 >> you're puzzled by this?
 > 
 > #15 ("WACF") in "Academic Programmers: A Spotter's Guide".
 > 
 > http://www.ee.ryerson.ca/~elf/hack/academic.html
 > 
 > (Not implying that the slobbering imbecile is an academic in any
 > way).

LOL. Very interesting read ;-) Thanks for the link.

-Sebastian

-- 
Sebastian (Rudolfo) Christ http://rudolfochrist.github.io GPG
Fingerprint: 306D 8FD3 DFB6 4E44 5061
                 CE71 6407 D6F8 2AC5 55DD

[toc] | [prev] | [next] | [standalone]


#7242

FromKaz Kylheku <545-066-4921@kylheku.com>
Date2016-04-20 19:27 +0000
Message-ID<20160420122534.815@kylheku.com>
In reply to#7241
On 2016-04-20, Sebastian Christ <rudolfo.christ@gmail.com> wrote:
> On 2016-04-20 14:34, Kaz Kylheku <545-066-4921@kylheku.com> wrote:
> > 
> > On 2016-04-20, Sebastian Christ <rudolfo.christ@gmail.com> wrote:
> >> If you know that you've saved your file in "mystuff", how comes that
> >> you're puzzled by this?
> > 
> > #15 ("WACF") in "Academic Programmers: A Spotter's Guide".
> > 
> > http://www.ee.ryerson.ca/~elf/hack/academic.html
> > 
> > (Not implying that the slobbering imbecile is an academic in any
> > way).
>
> LOL. Very interesting read ;-) Thanks for the link.

The author was a visionary when writing #19 "What Colour Should That
Be?" Look at the state of the web today. And:

"Always has a more expensive machine than you, usually with a very nice
colour screen, sound card, Dataglove, voice recognition equipment etc. -
and no keyboard ..."

No keyboard! Hello, smartphone, tablet.

[toc] | [prev] | [next] | [standalone]


#7237

Fromjacki <collector@idealan.pl>
Date2016-04-20 10:30 +0200
Message-ID<57173E1C.2050905@idealan.pl>
In reply to#7235
W dniu 2016-04-20 o 07:28, Cai Gengyang pisze:
> 
> This is what I did :
> 
> I created a file , defined a new variable c and saved it as ex50.rb ---
> 
> def add(a, b, c)   

a, b and c - three arguments

> 
> age = add(30, 10) / 5 
> 

then you are calling function with two arguments and divide what
function returns by 5 - really?

And remember, that 7/3 = 2 not 2.333(3) because:
2.2.0 :005 > 7.class
 => Fixnum

and Fixnum / Fixnum = Fixnum

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.ruby


csiph-web