Seite 1 von 1

SyntaxError Blockade

Verfasst: Sonntag 3. Mai 2020, 12:46
von Sam_Na
Hallo zusammen,
ich sitze hier seit ein paar Tagen an einem Code und finde meinen Fehler nicht. Ich hab im Forum und Online schon alles ausprobiert aber kriege es irgendwie nicht hin. Vielleicht hat ja einer von euch ein Tipp für mich :).

Code: Alles auswählen

var("a,b,n");
f(n)=n^2+a*n+b:
    for a in range(1,41):
        for b in range(1,41):
            if is_prime(f(n)): 
                if f(n) in ZZ;
    for n in range(0,41):
        if is_prime(f(n)):
                print(a); print(b)
Ich kriege dann als Fehlermeldung:

Code: Alles auswählen

File "<ipython-input-131-b82fbbaed7c8>", line 2
    __tmp__=var("n"); f = symbolic_expression(n**Integer(2)+a*n+b:).function(n)
                                                                 ^
SyntaxError: invalid syntax
Ich wäre sehr dankbar wenn ich einen Tipp kriegen könnte
LG :)

Re: SyntaxError Blockade

Verfasst: Sonntag 3. Mai 2020, 14:43
von __blackjack__
@Sam_Na: Was soll das denn Deiner Meinung nach bedeuten der Doppelpunkt hinter der Anweisung?

Die Semikolons gehören da auch nicht hin. Ans Zeileende sowieso nicht, das ist sinnfrei, aber auch nicht zwischen Anweisungen. Anweisungen kommen jeweils in eine eigene Zeile.

Der ``^``-Operator macht ziemlich sicher nicht das was Du denkst was er macht.

Das innerste ``if`` ist auch falsch. Sowohl syntaktisch als auch semantisch: was soll denn da passieren wenn die Bedingung zutrifft?

Einrückungsfehler sind auch drin.

Ich würde empfehlen das Tutorial in der Python-Dokumentation mal durchzuarbeiten um sich mit den Grundlagen der Sprache vertraut zu machen. Das sieht aus als wenn Du eigentlich in einer anderen Sprache programmieren würdest/willst.