Wartości zwracane
Część sekcji Podstawy ścieżki Ruby w Coddy. Lekcja 50 z 88.
Jak dotąd nasze metody wykonywały takie działania jak wyświetlanie wyników. Metody stają się jednak naprawdę potężne, gdy mogą przekazywać dane z powrotem do kodu, który je wywołał. Do tego służą wartości zwracane.
W języku Ruby metoda automatycznie zwraca wartość swojego ostatniego wyrażenia:
def add(a, b)
a + b
end
result = add(5, 3)
puts result # Wyświetla: 8Zauważ, że w metodzie nie ma puts. Zamiast tego metoda oblicza a + b i zwraca tę wartość. Możemy następnie zapisać ją w zmiennej lub użyć bezpośrednio.
Możesz też jawnie użyć słowa kluczowego return:
def multiply(a, b)
return a * b
end
puts multiply(4, 5) # Wyświetla: 20Słowo kluczowe return natychmiast kończy metodę i zwraca określoną wartość. Jest to przydatne, gdy chcesz wcześniej zakończyć działanie na podstawie warunku. Oba podejścia działają, ale programiści Ruby często polegają na niejawnych zwrotach, aby pisać czytelniejszy kod.
Wartości zwracane pozwalają łączyć operacje w łańcuchy i budować złożoną logikę z prostych metod:
def double(n)
n * 2
end
puts double(double(3)) # Wypisuje: 12Wyzwanie
ŁatwyZdefiniuj metodę o nazwie square, która przyjmuje jeden parametr n i zwraca kwadrat tej liczby (liczbę pomnożoną przez samą siebie).
Wczytaj z wejścia dwie liczby całkowite. Użyj metody square, aby obliczyć kwadrat każdej z nich, a następnie wypisz sumę obu kwadratów.
Na przykład, jeśli dane wejściowe to 3 i 4:
- Kwadrat liczby 3 to 9
- Kwadrat liczby 4 to 16
- Suma wynosi 25
Wynik powinien wynosić:
25Jeśli dane wejściowe to 5 i 2, wynik powinien wynosić:
29Spróbuj swoich sił
# Wczytaj dwie liczby całkowite z wejścia
num1 = gets.chomp.to_i
num2 = gets.chomp.to_i
# TODO: Zdefiniuj poniżej metodę square
# TODO: Oblicz sumę kwadratów za pomocą metody square i wypisz wynikTa lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory — część 2
Operatory logiczne — część 1Operatory logiczne — część 2Powtórka — podstawy logikiOperatory logiczne — część 3Operatory logiczne — część 47Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych od użytkownika2Zmienne i typy danych
Liczby i zmienneTyp danych StringTyp danych BooleanTyp danych SymbolSprawdzanie typów danychKonwencje nazewnictwaPodsumowanie — tworzenie zmiennych5Podejmowanie decyzji
Instrukcja ifIf - elsePowtórka — prosty kalkulatorZagnieżdżone if - elseInstrukcja unless8Pętle
Pętla for z zakresamiPętla whilebreaknextPowtórka – silniaPętla timesPętla untilPętle zagnieżdżonePowtórka – dynamiczne wejście3Operatory — część 1
Operatory arytmetyczneOperator moduloSkrócone operatory arytmetycznePodsumowanie — prosta matematykaOperatory porównania6Podstawowe wejście i wyjście
Wyświetlanie za pomocą putsWyświetlanie za pomocą print i pWyświetlanie zmiennychWczytywanie za pomocą getsMetoda chompKonwersja typówPodsumowanie – kalkulator wiekuPodsumowanie – prawda czy fałszPoćwicz samodzielnie: Kompilator Ruby online