Ruby :: Aufgabe #67 :: Lösung #1

2 Lösungen Lösungen öffentlich
#67

Alle Harshad-Zahlen von 1 bis 100 berechnen

Anfänger - Ruby von Gustl - 13.02.2015 um 12:35 Uhr
Eine natürliche Zahl heißt Harshad-Zahl, wenn Sie durch ihre Quersummer teilbar ist.

Beispiel: 777 ist durch 7 + 7 + 7 = 21 teilbar und ist damit eine Harshad-Zahl.

Schreibe ein Programm welches alle Harshad-Zahlen von 1 bis 100 berechnet und am Bildschirm ausgibt.
#1
vote_ok
von FunnyGamer (470 Punkte) - 17.08.2016 um 11:59 Uhr
Quellcode ausblenden Ruby-Code
def run
  puts "Gib eine Zahl, mit mindestens zwei Stellen ein:"
  zahl=gets
  
  #Konvertiere jedes Zeichen des Eingabe-Strings 
  #zu einer Zahl und addiere sie zu result
  result=zahl[0].to_i
  print "Quersumme = #{zahl[0].to_i}"
  i=1
  while i<(zahl.size-1)
    result+=zahl[i].to_i
	#Gib die dazu addierte Zahl auf der Konsole aus
	print " + #{zahl[i].to_i}"
	i+=1
  end
  #Gib das Ergebnis der Quersumme aus
  puts " = #{result}"
  #Kontrolliere ob sich die Zahl durch ihre Quersumme ohne Rest teilen lässt
  if zahl.to_i%result==0
    puts "#{zahl.to_i} / #{result} = #{zahl.to_i/result.to_i}"
	puts "#{zahl.to_i} ist also eine Harshad-Zahl!"
  else
    puts "#{zahl.to_i} / #{result} = #{zahl.to_f/result.to_f}"
	puts "#{zahl.to_i} ist also keine Harshad-Zahl!"
  end
  run
end

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben