[Çözüldü]Çift sayıları ve tek sayıları ayıran program


#1

şunu yazarken hata alıyorum bir türlü bulamadım
herşeyi tamam gibi sadece etrydeki değeri alıp 2 ye bolüp kalanın 0 olup olmadığını kontrol etmesi lazım sanırım değeri alamıyorum entry den

from tkinter import *;
class MyApp(Frame):
    def __init__(self, master):
        Frame.__init__(self, master);
        self.grid();
        self.create_widget();
    def create_widget(self):
        self.label=Label(self,text="Tek Sayılar",font="Tahoma 22 italic")
        self.label.grid(row=0,column=0,sticky=S)
        self.tekk=tkst.ScrolledText(self,height=25, width=25)
        self.tekk.grid(row=2,column=0,sticky=N)
        self.cift=Label(self,text="Çift Sayılar",font="Tahoma 22 italic")
        self.cift.grid(row=0,column=1,stick=N )
        self.tekk1=tkst.ScrolledText(self,height=25, width=25)
        self.tekk1.grid(row=2,column=1,sticky=N)
        self.ekle=Button(self,text="EKLE",fg="Red",font="Tahoma 22 italic",command=self.al,height = 3, width =10);
        self.ekle.place(x = 190 ,y = 415, width =50, height = 30)
        self.entry_1=Entry(self,width=10)#buda yazı girişi için text
        self.entry_1.place(x = 180 ,y = 10, width =50, height = 30)
    def al(self,*args):
        sonuc= tk.IntVar() 
        sonuc = (self.entry_1.get());               
        if  sonuc%2 == 0 :
            self.tekk.insert(self,sonuc)
        else:
           self.tekk1.insert(self,sonuc)
    
mainWindow = Tk();
mainWindow.title("Tek Çift Sayı ayırma");
mainWindow.geometry("500x500");
app = MyApp(mainWindow);
mainWindow.mainloop();

#2

Merhaba, kodlarınızı

[code]
# bu aralığa
[/code]

yazarsanız, kod görünümü kazanırlar.


#4

teşekkür ederim yeniyim de bilmiyordum


#5

Bu arada sorduğunuz soruyla pek alakalı değil, belki biliyorsunuz belki bilmiyorsunuz ama Python’da bir satırın sonunda noktalı virgül kullanmanıza gerek yok.


#6

alışkanlık olmuş öyle kalmışlar teşekkür ederim.:slight_smile:


#7

Kodlarınızda bir takım değişiklikler yaptım, şimdi bir daha deneyin isterseniz.

from tkinter import *


class MyApp(Frame):

    def __init__(self, master):
        Frame.__init__(self, master)
        self.grid()
        self.create_widget()

    def create_widget(self):
        self.label=Label(self,text="Tek Sayılar",font="Tahoma 22 italic")
        self.label.grid(row=0,column=0,sticky=S)
        self.tekk=Text(self,height=25, width=25)
        self.tekk.grid(row=2,column=0,sticky=N)
        self.cift=Label(self,text="Çift Sayılar",font="Tahoma 22 italic")
        self.cift.grid(row=0,column=1,stick=N )
        self.tekk1=Text(self,height=25, width=25)
        self.tekk1.grid(row=2,column=1,sticky=N)
        self.ekle=Button(self,text="EKLE",fg="Red",font="Tahoma 22 italic",command=self.al, height = 3, width =10)
        self.ekle.place(x = 190 ,y = 415, width =50, height = 30)
        self.entry_1=Entry(self,width=10)  # buda yazı girişi için text
        self.entry_1.place(x = 180 ,y = 10, width =50, height = 30)

    def al(self,*args):
        sonuc = self.entry_1.get()               
        if int(sonuc) % 2 == 0 :
            self.tekk1.insert("insert", sonuc)
        else:
            self.tekk.insert("insert", sonuc)
    

mainWindow = Tk()
mainWindow.title("Tek Çift Sayı ayırma")
mainWindow.geometry("500x500")
app = MyApp(mainWindow)
mainWindow.mainloop()

#8

çok teşekkür ederim oldu.


#9

Rica ederim, iyi çalışmalar.