Loomis
Mitglied Bunt
Und hier meine Ruby Lösungen. Das ganze ist erstmal Prozedual, denn ins OO muss ich mich erst noch richtig einlesen.
Als Quelle dienten mir hierbei:
Programmierung in Ruby, Ruby in 20 Minuten und Google
Ruby ist eine echt schöne Sprache. Gefällt mir auf jeden Fall besser als Java und ich werde das wohl weiter lernen, macht einfach Spaß zu Programmieren damit.
Begrüsser:
Das war leicht. Nur bis ich das chomp gefunden habe, hat etwas gedauert 
Quadratzahlen:
Da meine Kenntnisse noch bescheiden sind, muss ich erst noch herausfinden ob das alles nicht noch schöner geht.
Fakultät & Fibonacci:
Zahlenraten:
Die Kontrollstrukturen hier werde ich noch etwas überarbeiten. Das sieht noch etwas hässlich aus 
Mittelwert:
Als Quelle dienten mir hierbei:
Programmierung in Ruby, Ruby in 20 Minuten und Google

Ruby ist eine echt schöne Sprache. Gefällt mir auf jeden Fall besser als Java und ich werde das wohl weiter lernen, macht einfach Spaß zu Programmieren damit.

Begrüsser:
Ruby:
puts "Geben Sie bitte Ihren Namen ein:"
printf("Hallo %s!",gets.chomp)

Quadratzahlen:
Ruby:
puts "Obergrenze:"
n = gets.to_i
printf("Quadratzahlen bis: %s\n",n.to_s)
i = 0;
n.times do
i += 1
val = i * i
break if val > n
printf("%s\n",val)
end
Fakultät & Fibonacci:
Ruby:
def fak(n)
if n == 0 or n == 1
return 1
else
return n * fak(n - 1)
end
end
def fib(n)
if n == 1 or n == 2
return 1
else
return fib(n - 1) + fib(n - 2)
end
end
puts "Zahl:\n"
n = gets.chomp
printf("%s! = \t%s\nf(%s) = \t%s\n",n,fak(n.to_i),n,fib(n.to_i))
Zahlenraten:
Ruby:
puts "Erraten Sie eine Zahl zwischen 1 und 100!"
done = false
zufall = rand(100)
while done == false
puts "Ihr Tipp:"
zahl = gets.chomp
if zahl.to_i < zufall
puts "Zu klein."
end
if zahl.to_i > zufall
puts "Zu gross."
end
if zahl.to_i == zufall
done = true
puts "Richtig!"
end
end

Mittelwert:
Ruby:
done = false
zahlen = Array.new
while done == false
puts "Zahl (q zum Beenden):"
n = gets.chomp
if n.to_s != "q"
zahlen.push(n)
end
if n.to_s == "q"
sum = 0
zahlen.each do |var|
sum += var.to_f
end
average = sum / zahlen.length
puts "Mittelwert:" + average.to_s
done = true
end
end
Anhänge
Zuletzt bearbeitet: