Ruby/Proste przykłady: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Szymon wro (dyskusja | edycje)
mNie podano opisu zmian
Szymon wro (dyskusja | edycje)
Nie podano opisu zmian
Linia 11:
 
<pre>
def factsilnia(n)
if n == 0
1
else
n * factsilnia(n-1)
end
end
Linia 26:
<pre>
# Program, który liczy wartość silni z danej liczby
# Zapisz go jako factsilnia.rb
 
def factsilnia(n)
if n == 0
1
else
n * factsilnia(n-1)
end
end
 
puts factsilnia(ARGV[0].to_i)
</pre>
 
Linia 42:
 
<pre>
% ruby factsilnia.rb 1
1
% ruby factsilnia.rb 5
120
</pre>
Linia 51:
 
<pre>
% ruby factsilnia.rb 40
815915283247897734345611269596115894272000000000
</pre>
 
Działa! Ruby może sobie poradzić z każdą liczbą całkowitą, która zmieści się w pamięci naszego komputera . Więc możemy policzyć nawet 400!:
 
<pre>
% ruby factsilnia.rb 400
64034522846623895262347970319503005850702583026002959458684
44594280239716918683143627847864746326467629435057503585681
Linia 84:
<pre>
% ruby
puts "hellowitaj worldswiecie"
puts "good-byezegnaj worldswiecie"
^D
witaj swiecie
hello world
zegnaj swiecie
good-bye world
</pre>
 
Linia 99:
<pre>
% ruby eval.rb
ruby> puts "HelloWitaj, worldswiecie."
HelloWitaj, worldswiecie.
nil
ruby> exit
</pre>
 
"HelloWitaj worldswiecie" jest wypisane przez <tt>puts</tt>. Następna linia, w tym przypadku <tt>nil</tt>, pokazuje cokolwiek co zostało obliczone jako ostatnie. Ruby nie rozróżnia instrukcji i wyrażeń, więc obliczanie kawałka kodu jest równoważne z jego wykonaniem. Tutaj, <tt>nil</tt> oznacza, że <tt>puts</tt> nie zwraca żadnej (znaczącej) wartości. Zauważ, że możemy opuścić pętlę interpretera przez wpisanie <tt>exit</tt>, chociaż <tt>^D</tt> również zadziała.
 
W dalszej części podręcznika, "<tt>ruby></tt>" oznaczać będzie znak zachęty naszego małego, pożytecznego programu ''eval.rb''.