Python Kod neden çalışmıyor ?

elif edge1 == edge2 == edge3:
^^^^
SyntaxError: invalid syntax

Henüz üçgen olmama durumunu yapmadım*
elif kenar1 == kenar2 or kenar1 == kenar3 or kenar1 == dördüncü or kenar2 == kenar3 or kenar2 == dördüncü or kenar3 == dördüncü :

sanırım burda dördüncü yerine kenar4 yazılmalıydı
 
Doğru yazmamışsın demek ki. Kodunu ben dediğim gibi düzenleyince değişiyor;

Python:
print("""
~~~~~~~~~~~~~

Dörtgen ise 1
Üçgen ise 2
Yazınız.

~~~~~~~~~~~~~
""")
a = input("Üçgenin mi Dörtgenin mi türünü bulmak istersiniz:")

if a == "1":
 print("Dörtgeni Seçtiniz !")
 kenar1 = int(input("Birinci Kenarın Uzunluğu:"))
 kenar2 = int(input("İkinci Kenarın Uzunluğu:"))
 kenar3 = int(input("Üçüncü Kenarın Uzunluğu:"))
 kenar4 = int(input("Dördüncü Kenarın Uzunluğu:"))
if kenar1 == kenar2 and kenar2 == kenar3 and kenar3 == kenar4:
 print("Bu Bir Kare !")
elif kenar1 == kenar2 or kenar1 == kenar3 or kenar1 == dördüncü or kenar2 == kenar3 or kenar2 == dördüncü or kenar3 == dördüncü :
 print("Bu Bir Düzgün Dikdörtgen !")
else:
 print("Bu Sıradan Bir Dörtgen")
if a == "2":
 print("Üçgeni Seçtiniz !")
 edge1 = int(input("Birinci Kenarın Uzunluğu:"))
 edge2 = int(input("İkinci Kenarın Uzunluğu:"))
 edge3 = int(input("Üçüncü Kenarın Uzunluğu:"))
elif edge1 == edge2 and edge1 == edge3:
 print("Bu Bir Eşkenar Üçgen !")
elif edge1 == edge2 or edge1 == edge3 or edge2 == edge3:
 print("Bu Bir İkizkenar Üçgen !")
else:
 print("Bu Sıradan Bir Üçgen")

Dediğiniz gibi de ve dediğim gibi de oluyor hocam sanırım" değişken == değişken1 == değişken2" ile "değişken == değişken1 and değişken == değişken2" şeklinde kullanımlarının bir farkı yok.

elif kenar1 == kenar2 or kenar1 == kenar3 or kenar1 == dördüncü or kenar2 == kenar3 or kenar2 == dördüncü or kenar3 == dördüncü :

sanırım burda dördüncü yerine kenar4 yazılmalıydı
onu da düzelttim az önce fakat syntax bloklardanmış.
 
Dediğiniz gibi de ve dediğim gibi de oluyor hocam sanırım" değişken == değişken1 == değişken2" ile "değişken == değişken1 and değişken == değişken2" şeklinde kullanımlarının bir farkı yok.


onu da düzelttim az önce fakat syntax bloklardanmış.
Evet oradan. Dedim baştan. İç içe girmiş her şey.
 
print("""
KodPanoya kopyala
Kod:
~~~~~~~~~~

Dörtgen ise 1
Üçgen ise 2
Yazınız.

~~~~~~~~~~
""")
a = input("Üçgenin mi Dörtgenin mi türünü bulmak istersiniz (1/2): ")

if a == "1":
print("Dörtgeni Seçtiniz !")

kenar1 = int(input("Birinci Kenarın Uzunluğu: "))
kenar2 = int(input("İkinci Kenarın Uzunluğu: "))
kenar3 = int(input("Üçüncü Kenarın Uzunluğu: "))
kenar4 = int(input("Dördüncü Kenarın Uzunluğu: "))

if kenar1 == kenar2 == kenar3 == kenar4:
print("Bu Bir Kare !")
elif kenar1 == kenar2 or kenar1 == kenar3 or kenar1 == kenar4 or kenar2 == kenar3 or kenar2 == kenar4 or kenar3 == kenar4:
print("Bu Bir Düzgün Dikdörtgen !")
else:
print("Bu Sıradan Bir Dörtgen")

elif a == "2":
print("Üçgeni Seçtiniz !")

edge1 = int(input("Birinci Kenarın Uzunluğu: "))
edge2 = int(input("İkinci Kenarın Uzunluğu: "))
edge3 = int(input("Üçüncü Kenarın Uzunluğu: "))

if edge1 == edge2 == edge3:
print("Bu Bir Eşkenar Üçgen !")
elif edge1 == edge2 or edge1 == edge3 or edge2 == edge3:
print("Bu Bir İkizkenar Üçgen !")
else:
print("Bu Sıradan Bir Üçgen")

else:
print("Geçersiz Seçim!")
 
Python:
print("""
~~~~~~~~~~~~~~~~

Dörtgen ise 1
Üçgen ise 2
Yazınız.

~~~~~~~~~~~~~~~~
""")
a = input("Üçgenin mi Dörtgenin mi türünü bulmak istersiniz:")

if a == "1":

    print("Dörtgeni Seçtiniz !")

    kenar1 = int(input("Birinci Kenarın Uzunluğu:"))
    kenar2 = int(input("İkinci Kenarın Uzunluğu:"))
    kenar3 = int(input("Üçüncü Kenarın Uzunluğu:"))
    kenar4 = int(input("Dördüncü Kenarın Uzunluğu:"))

    if kenar1 == kenar2 and kenar2 == kenar3 and kenar3 == kenar4:

        print("Bu Bir Kare !")

    elif kenar1 == kenar2 or kenar1 == kenar3 or kenar1 == kenar4 or kenar2 == kenar3 or kenar2 == kenar4 or kenar3 == kenar4 :

        print("Bu Bir Düzgün Dikdörtgen !")
    else:
        print("Bu Sıradan Bir Dörtgen")
if a == "2":
    print("Üçgeni Seçtiniz !")

    edge1 = int(input("Birinci Kenarın Uzunluğu:"))
    edge2 = int(input("İkinci Kenarın Uzunluğu:"))
    edge3 = int(input("Üçüncü Kenarın Uzunluğu:"))

    if edge1 == edge2 == edge3:
        print("Bu Bir Eşkenar Üçgen !")

    elif edge1 == edge2 or edge1 == edge3 or edge2 == edge3:
        print("Bu Bir İkizkenar Üçgen !")

    elif not (abs(edge1 - edge2) < edge3 < edge1 + edge2 or abs(edge1 - edge3) < edge2 < edge1 + edge3 or abs(edge2 - edge3) < edge1 < edge2 + edge3):

        print("Bu Bir Üçgen değil !")

    else:

        print("Bu Sıradan Bir Üçgen")

aslında o kadar da karmaşık değil sadece değişkenleri biraz uzun tutmuşum :)

Hocam bence bir algoritmayı elle yazın ve sadeleştirin. Aslında bu kadar if bloklarına gerek olmayacak.
Doğrudur hocam zamanla inşallah.
 

Technopat Haberler

Yeni konular

Geri
Yukarı