From 061ebef66a732e9aa65ec6f100025ce139514927 Mon Sep 17 00:00:00 2001 From: sandri4 Date: Tue, 23 Oct 2018 11:38:49 +0300 Subject: [PATCH] first commit --- lesson1.rb | 19 ++++++++++++++++--- my_array.rb | 35 +++++++++++++++++++++-------------- 2 files changed, 37 insertions(+), 17 deletions(-) diff --git a/lesson1.rb b/lesson1.rb index 5f2c9a4..3c912ce 100644 --- a/lesson1.rb +++ b/lesson1.rb @@ -1,14 +1,27 @@ require 'date' class Lesson1 def sum(val = 0) - # TODO + sum = 0 + val.to_s.split("").each { |x| sum+=x.to_i } + sum end def age(birthday) - # TODO + unless birthday.nil? + date = Date.parse(birthday) + today = DateTime.now + years = today.year - date.year + "Я живу #{years} года или #{years * 365} дней или #{ years * 365 * 24} + часов или #{years * 365 * 24 * 60} секунд" + else + "Invalid Date Format" + end end def name - # TODO + first_name = gets.chomp + midle_name = gets.chomp + last_name = gets.chomp + "Hello #{first_name} #{midle_name} #{last_name}!" end end diff --git a/my_array.rb b/my_array.rb index 5146e42..9ce7867 100644 --- a/my_array.rb +++ b/my_array.rb @@ -6,58 +6,65 @@ def initialize(arr = []) end def size - # TODO + @array.size end def reverse - # TODO + @array.reverse end def max - # TODO + @array.max end def min - # TODO + @array.min end def desc - # TODO + @array.sort {|x, y| y <=> x } end def asc - # TODO + @array.sort end def odd - # TODO + @array.select{ |i| i.odd? } end def multiple_to_three - # TODO + @array.select { |x| (x % 3).zero? } end def uniq - # TODO + @array.uniq end def devide_on_ten - # TODO + @array.map { |x| x.to_f / 10 } end def chars - # TODO + chars = *('a'..'z') + @array.map { |x| chars[x - 1].to_sym } end def switch - # TODO + a = @array.index(max) + b = @array.index(min) + c = @array.max + @array[a]=@array[b] + @array[b]=c + @array end def before_min - # TODO + min = @array.min + @array[0...@array.index(min)] end def three_smallest - # TODO + @array.sort.first(3) end end