Project Euler Problem 8 in Ruby

Find the greatest product of five consecutive digits in the 1000-digit Continue Reading

Project Euler Problem 5 in Ruby

2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder. What is the smallest positive number that is evenly divisible by all of the numbers from 1 to 20? def euler5 count = 1 while true num = 20 * count # This seems ridiculous but all my short solutions were causing stack overflow if num % 1 == 0 and num % 2 == Continue Reading

Project Euler Problem 6 in Ruby

The sum of the squares of the first ten natural numbers is, 12 + 22 + ... + 102 = 385 The square of the sum of the first ten natural numbers is, (1 + 2 + ... + 10)2 = 552 = 3025 Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025 - 385 = 2640. Find the difference between the sum of the squares of the first one Continue Reading

Project Euler Problem 7 in Ruby

By listing the first six prime numbers: 2, 3, 5, 7, 11, and 13, we can see that the 6th prime is 13. What is the 10001st prime number? def is_prime?(n) ((2..(Math.sqrt(n)))).each do |i| return false if n % i == 0 end return true end def find_prime(target) count = 3 index = 1 # start at 1 since we are skipping the number 2 (the first prime number) while Continue Reading

Code Kata – Make Change, Solving and Refactoring

I recently went through a Code Kata with my friend @koriroys. The kata is called "Make Change" and objective is to take a random integer and return the value of that integer in coins. If you give me 100 pennies I give you back 4 quarters. If you give me 61 pennies I give you back 2 quarters, 1 dime, and 1 penny. It was a fun little exercise, not terribly difficult to solve but a great one for Continue Reading

Tweeting from the command line

I spend a lot of time in the Terminal on Mac OSX and thought it would be cool to tweet from the command line. It saves you time by not having to open a browser window or twitter client. I started playing with the Twitter API and writing a bash script that would let you do this with curl. In the process I found a Ruby Gem that would let you tweet from the command line. The gem is called twurl. I Continue Reading

Ruby Kata 2 – Karate Chop

I like to solve little programming challenges that I find online. Code challenges are a fun way to sharpen your skills and become a better problem solver. It's been around for a while now but I recently discovered Codekata. The first real challenge is Kata Two - Karate Chop. Description below. Click the link below the description to get the full details of the challenge. A binary chop Continue Reading

Project Euler Problem 4 in Ruby

Here I have two solutions for Project Euler problem 4 as well as a method for timing the two solutions. One solution uses a loop and the other uses recursion. # A palindromic number reads the same both ways. # The largest palindrome made from the product of # two 2-digit numbers is 9009 = 91 99. # Find the largest palindrome made from the product of two 3-digit numbers. def Continue Reading

Project Euler Problem 3 in Ruby

The prime factors of 13195 are 5, 7, 13 and 29. What is the largest prime factor of the number 600851475143 ? # if n is 1, end the method and return empty array # set var factor = first number in range 2..n # that has a remainder of 0 when divided by x # x being the current iteration of 2..n # put factor var into an array and then call the # method we are currently in again passing the Continue Reading

Project Euler Problem 1 in Ruby

If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23. Find the sum of all the multiples of 3 or 5 below 1000. sum, i = 0, 0 while i < 1000 sum += i if i % 3 == 0 || i % 5 == 0 i += 1 end puts sum # => 233168 Please comment with your own solution or let me know how this can be improved. Continue Reading