From acca295d0f4cb6d3b8106f092071139094b969ca Mon Sep 17 00:00:00 2001 From: jakthom Date: Fri, 27 Sep 2013 21:32:38 -0400 Subject: [PATCH 1/4] PE Prework --- problem03.rb | 0 problem05.rb | 0 problem08.rb | 0 3 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 problem03.rb delete mode 100644 problem05.rb delete mode 100644 problem08.rb diff --git a/problem03.rb b/problem03.rb deleted file mode 100644 index e69de29..0000000 diff --git a/problem05.rb b/problem05.rb deleted file mode 100644 index e69de29..0000000 diff --git a/problem08.rb b/problem08.rb deleted file mode 100644 index e69de29..0000000 From 670d5d6804da25b725f4df02d50697e9d08e1e5b Mon Sep 17 00:00:00 2001 From: jakthom Date: Fri, 27 Sep 2013 21:35:11 -0400 Subject: [PATCH 2/4] PE Prework --- .DS_Store | Bin 0 -> 6148 bytes pe1.rb | 8 ++++++++ pe10.rb | 23 +++++++++++++++++++++++ pe2.rb | 19 +++++++++++++++++++ pe3.rb | 26 ++++++++++++++++++++++++++ pe4.rb | 24 ++++++++++++++++++++++++ pe5.rb | 13 +++++++++++++ pe6.rb | 20 ++++++++++++++++++++ pe7.rb | 16 ++++++++++++++++ pe8.rb | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 10 files changed, 202 insertions(+) create mode 100644 .DS_Store create mode 100644 pe1.rb create mode 100644 pe10.rb create mode 100644 pe2.rb create mode 100644 pe3.rb create mode 100644 pe4.rb create mode 100644 pe5.rb create mode 100644 pe6.rb create mode 100644 pe7.rb create mode 100644 pe8.rb diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0 Need to make more efficient + +require 'Prime' +continue = true + + +while continue + prime_array = Array.new + sum = 0 + + Prime.each(2_000_000) do |prime| + puts prime + sum += prime + end + + puts sum + + puts "Continue? " + go = gets.chomp + if go != 't' + continue = false + end +end diff --git a/pe2.rb b/pe2.rb new file mode 100644 index 0000000..474949d --- /dev/null +++ b/pe2.rb @@ -0,0 +1,19 @@ +a = 0 +b = 1 +total = 0 + +fibs = [1,2] + +while (fibs[a] + fibs[b]) < 4000000 + fibs << (fibs[a] + fibs[b]) + a += 1 + b += 1 +end + +fibs.each do |num| + if num%2 == 0 + total += num + end +end + +puts total \ No newline at end of file diff --git a/pe3.rb b/pe3.rb new file mode 100644 index 0000000..6d0f997 --- /dev/null +++ b/pe3.rb @@ -0,0 +1,26 @@ +require 'Prime' + + + +continue = true + +while continue + max_num = 600851475143 + primefact_array = Array.new + + Prime.each(Math.sqrt(max_num)) do |prime| + if max_num%prime == 0 + primefact_array << prime + end + end + + puts primefact_array.last + + puts 'Continue?' + go = gets.chomp + if go != 't' + continue = false + end +end + + diff --git a/pe4.rb b/pe4.rb new file mode 100644 index 0000000..cda31a7 --- /dev/null +++ b/pe4.rb @@ -0,0 +1,24 @@ +start_num = 999 +end_num = 1 +product_array = Array.new +continue = true + +while continue + start_num.downto(end_num) do |num1| + start_num.downto(end_num) do |num2| + product = num1*num2 + if product.to_s == product.to_s.reverse + product_array << (num1*num2) + end + end + end + + puts product_array.max + + puts "Continue?" + go = gets.chomp + + if go != 't' + continue = false + end +end diff --git a/pe5.rb b/pe5.rb new file mode 100644 index 0000000..30993c3 --- /dev/null +++ b/pe5.rb @@ -0,0 +1,13 @@ +continue = true + +while continue + puts (1..20).inject(:lcm) + + puts "\nContinue?" + go = gets.chomp + if go != 't' + continue = false + end +end + + diff --git a/pe6.rb b/pe6.rb new file mode 100644 index 0000000..a0b9f7d --- /dev/null +++ b/pe6.rb @@ -0,0 +1,20 @@ +def sum_square + total = 0 + (1..100).each do |num| + square = num **2 + total += square + end + return total +end + +def square_sum + sum = 0 + (1..100).each do |num| + sum += num + end + return sum **2 +end + +difference = (square_sum)- (sum_square) + +puts difference diff --git a/pe7.rb b/pe7.rb new file mode 100644 index 0000000..8aa066f --- /dev/null +++ b/pe7.rb @@ -0,0 +1,16 @@ +require 'Prime' + + +continue = true + +while continue + prime_array = Prime.first 10_001 + puts prime_array.last + puts "Keep going? " + go = gets.chomp + if go != 't' + continue = false + end +end + + diff --git a/pe8.rb b/pe8.rb new file mode 100644 index 0000000..9db11e0 --- /dev/null +++ b/pe8.rb @@ -0,0 +1,53 @@ +num = '73167176531330624919225119674426574742355349194934 + 96983520312774506326239578318016984801869478851843 + 85861560789112949495459501737958331952853208805511 + 12540698747158523863050715693290963295227443043557 + 66896648950445244523161731856403098711121722383113 + 62229893423380308135336276614282806444486645238749 + 30358907296290491560440772390713810515859307960866 + 70172427121883998797908792274921901699720888093776 + 65727333001053367881220235421809751254540594752243 + 52584907711670556013604839586446706324415722155397 + 53697817977846174064955149290862569321978468622482 + 83972241375657056057490261407972968652414535100474 + 82166370484403199890008895243450658541227588666881 + 16427171479924442928230863465674813919123162824586 + 17866458359124566529476545682848912883142607690042 + 24219022671055626321111109370544217506941658960408 + 07198403850962455444362981230987879927244284909188 + 84580156166097919133875499200524063689912560717606 + 05886116467109405077541002256983155200055935729725 + 71636269561882670428252483600823257530420752963450' + + +place = 0 +digits = 5 +continue = true + +product_array = Array.new + +def product (n) + total_product = 1 + n.each_char do |char| + char = char.to_i + total_product *= char + end + return total_product +end + + +while continue + while place <= 995 + string = num[place, digits] + product = product(string) + product_array << product + place += 1 + end + + puts product_array.max + puts "Continue? " + go = gets.chomp + if go != 't' + continue = false + end +end \ No newline at end of file From b2a83ba4e369cae3e230c16f6ae210fbb8848c63 Mon Sep 17 00:00:00 2001 From: jakthom Date: Fri, 27 Sep 2013 21:40:37 -0400 Subject: [PATCH 3/4] Changed README --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4b4187d..604533d 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ -DevPreWork01 +#DevPreWork01 ============ + +My prework for the [Startup Institute](www.startupinstitute.com). \ No newline at end of file From f177bccabb013cca3041b63bb7f7d8c30f903268 Mon Sep 17 00:00:00 2001 From: jakthom Date: Sun, 27 Oct 2013 21:29:21 -0400 Subject: [PATCH 4/4] Added #9 --- pe9.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 pe9.rb diff --git a/pe9.rb b/pe9.rb new file mode 100644 index 0000000..2bd9f48 --- /dev/null +++ b/pe9.rb @@ -0,0 +1,11 @@ +## This algorithm uses an algebraic manipulation of Euclid's equations + +(2..30).each do |m| + (1...m).each do |n| + a = (m**2 - n**2) + b = 2*m*n + c = (m**2 + n**2) + + puts a*b*c if a+b+c==1000 + end +end \ No newline at end of file