Tävlingsprogrammering/Introduktion/Lösningar i Ruby
Utseende
Här finns lösningar till introduktionsuppgifterna i Ruby
Talföljdsproblemet
#!/usr/bin/env ruby def find(n, p, k, d) puts p + k find(n + 1, p + k, k + d, d) if n < 9 end print "Första talet ? " i = gets.to_i print "Andra talet ? " j = gets.to_i print "Tredje talet ? " l = gets.to_i k = j - i d = l - j - k print "Talföljden" puts i find(1, i, k, d)
Klockproblemet
#!/usr/bin/env ruby print "Vinkel ? " vinkel = gets.to_i for h in 0 ... 12 for m in 0 ... 59 printf("Klockan är %0.0f:%02.0f}", h, m) if (m * 55 - h * 300 + 3600) == vinkel exit if (m * 55 - h * 300 + 3600) == vinkel end end
Plankproblemet
#!/usr/bin/env ruby def recurse(r) for p in 1 ... 4 if r + p == @l @count += 1 elsif r+p > @l else recurse r + p end end end print "Plankans längd ? " @l = gets.to_i @count = 0 recurse 0 puts "Det finns #{@count} olika sätt"
Ta dessa som exempel, har inte testkört dem mot mer än de uppgifter som ges i exempeln