пятница, 10 августа 2012 г.

Методы.

Basic Methods.

Прога:


def greeting(name)
print "Hello #{name}"
end
greeting "User"

Вывод:

Hello User

Я так поняла, это мы задали функцию. Эмм... Но название "Методы и классы", угу.
1. def - definition. Мы задаем def greeting(name). Т.е. def greeting, а значение у этого greeting - name.
2. Потом выводим строку "Hello #{name}", с переменной #{name}.
3. Присваиваем greeting значение "User" - это на месте переменной name.
Как-то запутанно получилось у меня написать коммент)

Прога:


def multiply(n1, n2)
result = n1 * n2
return result
end
print multiply(2,3)


Вывод:

6

1. Мы создали функцию multiply со значением (n1, n2)
2. Создаем переменную result, в которой перемножаем первое значение на второе
3. Возвращаем результат.
4. Выводим на экран результат умножения.
Фак, чувствую, что что-то не то пишу. Надо у Зеда потом будет посмотреть.


Прога:


def sites
s1="ipv6.he.net"
s2="tunnelbroker.net"
s3="dns.he.net"
return s1, s2, s3
end
a,b,c = sites
print "Cool sites: #{a}, #{b}, #{c}"


Вывод:

Cool sites: ipv6.he.net, tunnelbroker.net, dns.he.net

1. Задаем функцию def sites.
2. Присваиваем переменные(?) 
        s1="ipv6.he.net"
s2="tunnelbroker.net"
s3="dns.he.net"
3. Возвращаем результат присваивания return s1, s2, s3. (хрень какая-то у меня в описаниях)
4. Пишем, что a,b,c = sites, т.е. a,b,c = заданной функции. a,b,c - переменные?
5. Выводим строку с переменными(?).

Прога:



def calculateTip(mealCost)
yield mealCost
end
rate=0.15
tip=calculateTip(25.0) { |cost| cost * rate }
print "Tip should be: $", tip


Вывод:

Tip should be: $3.75

1. Задаем функцию calculateTip(посчитать чаевые) со значением "mealCost"(стоимость еды).
2. ...
3. Задаем переменную rate(расценка)=0.15
4. Задаем переменную tip, в которой calculateTip(т.е. наша функция) со значением 25.0 и в фигурных скобках считаем ( |cost| cost - мы задали только что. Он означает tip=calculateTip(25.0) * rate, т.е. 0.15.
5. Выводим строку с переменной tip(чаевые).

Прога:



str = "Hurricane Electric"
m = str.method(:length)
leng = m.call


Вывод:

18

1. Задаем переменную str = "Hurricane Electric".
2. Задаем переменную m = str.method(:length), которая равна Hurricane Electric.method(:length). Т.е. мы в этой переменной задаем, чтобы с Hurricane Electric произвели некоторое действие с помощью .method(:length) - т.е. нам надо узнать длину этой строки.
3. Задаем переменную leng = m.call - типа, метод.вызываем(?).


Комментариев нет:

Отправить комментарий