Programmierung Multiplikation
Hi, ich hab ein Riesenproblem mit Informatik. Und zwar habe ich jetzt die erste Vorlesung hinter mir und wir müssen auch schon Aufgaben lösen und einreichen. Angeblich soll es ja ohne Vorkenntnisse machbar sein, aber ich hab überhaupt keinen Plan wie das gehen soll! Das Einzige was ich kann sind total banale Sachen wie Multiplizieren....aber wie bitte lös ich denn das:
"Implementieren Sie ein Programm, das zwei beliebige naturliche Zahlen miteinander multipliziert und das Ergebnis ausgibt. Der Haken: Sie durfen in Ihrer Berechnung nur Addition verwenden."
Mir fehlen einfach die Mittel. Ich hab zwar die Idee im Kopf, dass ich Zahl 1 so oft mit sich selbst addiere bis die Anzahl der + Zeichen genauso groß wie Zahl 2 ist. Aber ich weiß nicht wie ich so eine Regel aufstelle. Das Einzige was ich kann ist eine Regel mit < oder >. Aber wie mache ich das in Bezug auf Rechenzeichen....bzw. wie ist diese Aufgabe anders zu lösen?
Wir programmieren mit JAVA (eclipse)
5 Antworten
weisst du was ne FOR schleife is? da wird eine sequenz so oft wie du es angibst wiederholt. wir programieren java mit dem programm blueJ und des sieht dann ungefähr so aus:
for(i=0;i<7;i++)
{
Sequenz
}
hier wäre es dann so: du hast den startwert 0; solang der wert kleiner als 7 ist wird die sequenz wiederholt, und des i++ besagt das der wert um 1 erhöht wird.
wenn du also multiplizierst, addierst du zu dem ergebnis wert1 und wiederholst das addieren wert2-mal ------ wert1 x wert2 = ergebnis
wenn du 4*5 rechnest wäre es:
ergebnis=0
for(i=0;i<5;i++)
{
ergebnis=ergebnis+4
}
und dann noch iwas damit das ergebnis ausgegeben wird. "return ergebnis" oder sowas.
jetz sagst du zuerst das das ergebnis 0 ist. dann führst du folgenden schritt 5 mal aus: ergebnis(neu) ist das alte ergebnis+4
und am ende gibste das endergebnis noch aus
Kollege, Du hast ein Riesenproblem und Du wirst noch viel mehr bekommen.
Bespreche Dich doch mit Deinen Kommilitonen! Da hat bestimmt auch nicht jeder den Sofortplan. Ich wünsche Dir viel Glück! Du wirst es brauchen!
nicht hilfreich in meiner Situation. Moralapostel spielen macht immer wieder Spaß wenn man am Sonntag Abend nichts zu tun hat, gell?
Die Antwort ist aber richtig. Es ist normal, dass das studium beizeiten auch schwierig ist. Man muss sich halt durchkämpfen, das bringt einen nach vorne.
das war hier der beste Tip. Mit seinen Kommilitonen reden bringt auf lange Sicht am meisten!
gruss, dj
In der ersten Vorlesung habt ihr dann bestimmt solche Kontrolstukturen wie Schleifen behandelt oder nicht?
Die Idee mit den Pluszeichen ist fast richtig ;)
public class aufgabe1 { public static void main(String[] args) { int index; int anzahl; int[] feld; index=0; anzahl=5; feld = new int[anzahl+1]; while (index<=anzahl) { feld[index] = index+index; index=index+1; } index=0; while (index<=anzahl) { System.out.println(feld[index]); if (index<anzahl) System.out.println("-"); index=index+1; } } }
Das war das erste Beispiel der Vorlesung -.-
Ja, passiert. Programmierung geht mit Frusterlebnissen einher. So ein Beispiel zeigt es am Anfang sehr deutlich, man darf sich nur nicht unterkriegen lassen!
Was studierst du?
Ich habe keine Ahnung von Java, in VBA würde ich eine Schleife nehmen.
a = 5
b = 6
for i = 1 to a
ergebnis = ergebnis + b
next i
Ich hoffe es hilft dir weiter!
Oh je, oh je, nach der 1. Vorlesung schon Aufgaben, dazu unlöserliche, ei, ei, ei...
So etwas bei einem Abiturienten gelesen könnte ja gerade noch angehen.
Ein Student sollte aber bereits Willens und in der Lage sein, seine Defizite bis zur 1. Vorlesung aufgefüllt zu haben. Wobei sich hier wesentlichere Hemmnisse aufzeigen, wie mir scheinen will.
Vllt. wäre es sinnvoll, das Ziel nochmals zu überprüfen und einen geeigneteren Weg dorthin einzuschlagen.
lg
public class aufgabe1 { public static void main(String[] args) { int index; int anzahl; int[] feld; index=0; anzahl=5; feld = new int[anzahl+1]; while (index<=anzahl) { feld[index] = index+index; index=index+1; } index=0; while (index<=anzahl) { System.out.println(feld[index]); if (index<anzahl) System.out.println("-"); index=index+1; } } }
das ist jetzt zwar leider ohne die leerzeilen abgebildet, aber das was Sie da sehen ist das allererste Programm mit dem unser Professor begonnen hat!!
Anstatt langsam wie in guten YouTube-Tutorials zu beginnen, kommt er schon mit Arrays (habe ich gerade durch YouTube gelernt) und Schleifen.
Er hat dabei nicht erklärt was z.B. ein" int [ ] "ist (also ein Array). Ich bin der Einzige der kein Informatik in der Schule hatte und habe wirklich 0 Ahnung.
Deswegen habe ich extra beim professor gefragt ob Vorkenntnisse nötig wären.
Finden Sie, dass man obriges ohne Vorkenntnisse direkt verstehen muss?
ich versteh es nicht ganz. Du hast gesagt so oft wie ich es angebe wird sie wiederholt. Wo kann ich da denn jetzt angeben, dass sie so oft wiederholt wird wie Zahl 2 ist?Also wenn ich 4*5 rechnen soll, dass sie z.B. 5mal wiederholt wird.