Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
zahl = 1
mult = 1
for i in range(zahl * mult , 90):
print(zahl,"*",mult,"=",i)
mult += 1
if mult == 10:
mult = 1
zahl += 1
print("")
print("")
print("")
so weit so gut leider funktioniert nur der erste block ;(
@Blue Flare: Ich weiss nicht was ich dazu sagen soll, ausser dass das *offensichtlich* nicht funktionieren kann. Überleg doch mal was `i` für Werte annimmt. Und warum das eben nicht das Ergebnis ist, was Du haben möchtest. *Berechne* das Ergebnis. Hinter dem Gleichheitszeichen soll ja das Ergebnis einer Multiplikation stehen.
Ansonsten ist die Art wir Du das machst auch nicht besonders übersichtlich. Schreib das mal einfacher. Ohne das ``if`` und ohne dass Du *drei* "Laufvariablen" benötigst.
from itertools import product
def main():
RANGE = xrange(1, 11)
print '\n'.join(
'%2d x %-2d = %d%s' % (b, a, a * b, '\n' if b == 10 else '')
for a, b in product(RANGE, RANGE)
)
if __name__ == "__main__":
main()
Aber wir wollen dem Blue Flare seine Hausaufgaben doch nicht lösen.
public class Main {
private static final int N = 10;
public static void main(String[] args) {
for (int a = 1; a <= N; a++) {
for (int b = 1; b <= N; b++) {
System.out.format("%2d * %-2d = %d\n", b, a, a * b);
}
System.out.println();
}
}
}
@Blue Flare:
Überleg mal: mit welchem Sprachkonstrukt kannt man eine Anweisung mehrmals wiederholen?
...
...
...
Richtig, mit einer Schleife, soweit bist du ja schon. Was brauchst du also, wenn du die Schleife selbst mehrmals ausführen willst?
...
...
...
Achtung, erst nachdenken, dann weiterlesen...
...
...
...
Eine Schleife in einer Schleife. Hilft dir das jetzt weiter? Ich hoffe, ich habe noch nicht zuviel verraten, richtig Spass macht das Programmieren ja erst, wenn man selbst auf die Lösungen kommt.
Ich kenne Fortran nicht wirklich und kann das Programm mangels Lochkarten leider nicht testen, aber müsste die untenstehende Formatierungszeile nicht mit einem I1 beginnen? Wäre für mich jetzt logischer, sofern sich das auf abgespeicherte Integer-Werte/-Register beziehen soll bzw halt für die mitgegebenen Argumente steht.
snafu hat geschrieben:Ich kenne Fortran nicht wirklich und kann das Programm mangels Lochkarten leider nicht testen, aber müsste die untenstehende Formatierungszeile nicht mit einem I1 beginnen? Wäre für mich jetzt logischer, sofern sich das auf abgespeicherte Integer-Werte/-Register beziehen soll bzw halt für die mitgegebenen Argumente steht.
Ich denke eher das steht für Integer und die Länge der Stellen
Das wäre natürlich auch eine Erklärung und ist hinsichtlich dem, was man vom String-Formatting her kennt, auch recht naheliegend. So weit hatte ich in dem Moment nicht gedacht.