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.
 

Bu konuyu görüntüleyen kullanıcılar

Technopat Haberler

Yeni konular

Yeni mesajlar

Geri
Yukarı