Ruby :: Aufgabe #3 :: Lösung #2
2 Lösungen

#3
Lotto - Simulation - 6 aus 49
Anfänger - Ruby
von Gustl
- 25.11.2012 um 16:16 Uhr
Schreiben Sie ein Programm, welches 6 Zahlen zwischen 1 und 49 abfrägt. Danach soll das Programm solange 6 Zufallszahlen berechnen bis alle 6 eingegebenen Zahlen übereinstimmen. Natürlich darf eine Zahl nicht zweimal vorkommen.
Dann soll ausgegeben werden nach wie vielen "Spielen" ein 6er erzielt wurde und wie hoch die Chance auf einen 3er, einen 4er und einen 5er war.
Dann soll ausgegeben werden nach wie vielen "Spielen" ein 6er erzielt wurde und wie hoch die Chance auf einen 3er, einen 4er und einen 5er war.
#2

von Idef1x (1320 Punkte)
- 19.01.2018 um 10:19 Uhr

def getting6(array) =begin In: - array Out: - filled array =end #Section - CODE #Section - filling the array with six random numbers between 1 und 49 array = [] while array.size < 6 do random = rand(49) + 1 if array.include?(random) == false then array.push(random) end end #Section - Output return array.sort! end def playLotto() =begin In: - nothing Out: - tries for 3, 4, 5 and 6 right numbers =end #Section - CODE #Section - Declaration try = 0 player = [] tries = {3 => 0, 4 => 0, 5 => 0, 6 => 0} #Section - Get player's numbers for i in 1..6 loop do print "Please enter number #{i}:" num = gets.to_i if player.include?(num) == false && num >= 1 && num <= 49 player.push(num) break else puts "You have entered a number that you have already before or it\'s not between 1 and 49!" end end end #Section - Try and try and try again loop do try += 1 # Reseting round array round = [] # Getting 6 random numbers for the round round = getting6(round) case (player - round).size when 0 tries[6] = try when 1 if tries[5] == 0 tries[5] = try end when 2 if tries[4] == 0 tries[4] = try end when 3 if tries[3] == 0 tries[3] = try end end break if (player - round).size == 0 end #Section - Output tries.each_pair do |key, value| puts "#{key} right numbers: #{value} tries." end end playLotto()
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1