Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions combinations.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
def combinations(arr1, arr2)
result = []
arr1.each do |word1|
arr2.each do |word2|
combo = word1 + word2
result << combo
end
end
return result
end

p combinations(["on", "in"], ["to", "rope"])
28 changes: 28 additions & 0 deletions counting_game.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
def counting_game(friends, max_number)
current_number = 0
person_nr = 0
direction = 1
until current_number == max_number
current_number += 1
#if current number is higher than 1 and previous number was divisible by 11 then we skip one person
if current_number > 1 && (current_number - 1) % 11 == 0
person_nr += (2 * direction)
else
person_nr += direction
end

if person_nr > friends
person_nr -= friends
elsif person_nr < 1
person_nr += friends
end
#if number is divisible by 7, we change the direction for the next turn
if current_number % 7 == 0
direction = -(direction)
end

puts "Person nr. #{person_nr} says #{current_number}."
end
end

counting_game(10, 100)
7 changes: 7 additions & 0 deletions factorial.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
def factorial(number)
result = 1
(1..number).each { |num| result *= num }
return result
end

puts factorial(5)
9 changes: 9 additions & 0 deletions is_prime.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
def is_prime?(number)
(2..Math.sqrt(number).round).each do |div|
return false if number % div == 0
end
return true
end

puts is_prime?(7)
puts is_prime?(14)
6 changes: 6 additions & 0 deletions overlap.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
def overlap(rect1, rect2)
rect1[0][0] < rect2[1][0] && rect1[1][1] > rect2[0][1] && rect1[1][0] > rect2[0][0] && rect1[0][1] < rect2[1][1]
end

puts overlap( [ [0,0],[3,3] ], [ [1,1],[4,5] ] )
puts overlap( [ [0,0],[1,4] ], [ [1,1],[3,2] ] )
7 changes: 7 additions & 0 deletions power.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
def power(base, exponent)
result = 1
exponent.times { result *= base }
return result
end

puts power(3,4)
9 changes: 9 additions & 0 deletions uniques.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
def uniques(array)
result = []
array.each do |item|
result << item unless result.include?(item)
end
return result
end

p uniques([1,5,"frog", 2,1,3,"frog"])