Hallo,
das ist meine erste Frage hier. Ich soll ein Programm erstellen bei dem zwei Variablen generiert werden. Diese sollen dasn addiert werden und wenn ihre Summe kleiner als 100 ist geprintet werden. Der Vorgang soll sich solange wiederholen bis die Summe größer als 100 ist.
vielen Dank im vorraus!
An alle die mir helfen können
Wir haben da was zusammengestellt: viewtopic.php?f=1&t=1689
- __blackjack__
- User
- Beiträge: 13099
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Für Hausaufgaben eignet sich „literate“ Programmierung ja ganz gut, also dass man nicht Quelltext mit Kommentaren versieht, sondern dass man Text schreibt, in den man Code einbettet. Hier mal ein Beispiel in „literate CoffeeScript“, wo CoffeScript-Code in Markdown-Text eingebettet wird, was sich auch in HTML oder PDF umwandeln lässt mit den entsprechenden Werkzeugen:
Code: Alles auswählen
% Summe von Zufallszahlen
%
% 2020-04-03
# Aufgabe
Erstelle ein Programm in dem zwei Variablen generiert werden.
Diese sollen dann addiert werden,
und wenn ihre Summe kleiner als 100 ist, ausgegeben werden.
Dieser Vorgang soll solange wiederholt werden, bis die Summe grösser als 100 ist.
# Lösung
## Zahlen generieren
Die Aufgabenstellung schweigt sich leider darüber aus was ”generieren” eigentlich bedeutet.
Ich tippe mal darauf das Zufallszahlen generiert werden sollen.
Womit sich die nächste Frage stellt: Aus welchem Bereich?
Und: Ganze Zahlen oder Dezimalbrüche?
Ich entscheide mich für ganze Zahlen aus dem Bereich 0 bis 100.
Damit ist auf jeden Fall sichergestellt,
dass die Summe sowohl unter, also auch über, und sogar gleich 100 sein kann.
## Abhängigkeiten
Bevor man sich etwas mit `Math.random()` selbst bastelt,
kann man auch einfach *lodash*s `random()` verwenden.
{random} = require "lodash"
## Konstante
Die Obergrenze für die Zufallszahlen wird als Konstante definiert.
UPPER_LIMIT = 100
## Das Hauptprogramm
Das Programm ist so kurz und einfach,
dass man es komplett in der Hauptfunktion implementieren kann.
In einer ”Endlosschleife” wird der Vorgang immer wiederholt.
Die Schleife wird abgebrochen wenn die Summe grösser als 100 ist.
Und die Ausgabe wird gemacht wenn die Summe kleiner als 100 ist.
main = ->
loop
a = random UPPER_LIMIT
b = random UPPER_LIMIT
sum = a + b
break if sum > 100
console.log "#{a} #{b}" if sum < 100
main() if require.main == module
Interessant ist hier die Frage ob der Fall das die Summe *gleich* 100 ist,
vom Aufgabensteller übersehen wurde,
oder ob das Absicht war um zu schauen,
ob man die Spezifikation tatsächlich mit diesem Detail umsetzt.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
- noisefloor
- User
- Beiträge: 3856
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
@Schüler: du musst schon eine Frage stellen... dein Post hat keine. Bzw. wenn die implizite Frage lautet:Wer schreibt mir das Programms ? Dann lautet die Antwort: keiner.
Gruß, noisefloor
@Schüler: du musst schon eine Frage stellen... dein Post hat keine. Bzw. wenn die implizite Frage lautet:Wer schreibt mir das Programms ? Dann lautet die Antwort: keiner.
Gruß, noisefloor