




İnfix Postfix Prefix (Özellikle Bıkkın Matematik Soruları İçin)
-
Bu her ne kadar bilgisayar mantığı vs.. olarak görünsede, iğrenç matematik sorularını içinden çıkmamı sağlamıştır.Çünkü öncelik ortadan kalkar.Hangi sorular mesela ?
http://www.tahribat.com/Forum-Matematik-Sorusu-Cozebilen-147902/
a ve b bir sayı olsun ;
a+b dediğimizde normal yazımdır.3+5, 7+9, 22+35 gibi.İnfix nedir.Şimdi bunu prefix haline getirelim.(pre yani önce diyoruz ve işareti öne atıyoruz)
+ab
postfix hali iste (post yani sonra);
ab+
---
Bunda da öncelikler vardır.MEsela parantez varsa öncelik girer.Şimdi linkteki örnekle göstereyim ;
6/2*(2+1)
[62/]*[21+]
62/21+*
321+*
33*
9
--
gördüğünüz gibi burada ab+ şeklinde yazdık hepsinin sonunda
62/21+*
geldi.Burda 62 değil 6 ve 2 dir.İyide çift basamaklı olursa ? o zaman {} ile ayırıcaz mesela 1{30}* dersek , 1*30 dur.
---------
çözümleme ;
daha sonra postfix olduğuna göre soldan sağa gidelim.İlk karşımıza çıkacak olan işaretle karşımıza çıkan ve onun öncesindekini işleme sokuyoruz.
array deger = 62/21+* olsun
deger[0] = 6
deger[1] = 2
deger[2] = /
deger[3] = 2
deger[4] = 1
deger[5] = +
deger[6] = *Burda deger[2] bölme işlemi.O zaman deger[2-1] ve deger[2-2]'ye bakıyoruz.
6 ve 2 . O halde 6/2 işlem.Artık array 2 azaldı (bölme işlemi silindi, 2 karakter gitti 1 karakter oldu) ve 0 = 3 oldu . Son hali ;
deger[0] = 3
deger[1] = 2
deger[2] = 1
deger[3] = +
deger[4] = *Şimdi geder[3]'e kadar işaret yok.Gittik bizde.hangi array ? 3.O zaman n-1 ve n-2 yi alıyoruz.Yani 2 ve 1 miş rakamlarımız.Daha sonra işlemimizi yaptırıyoruz.Oda + . Sonuç 3.Son array
deger[0] = 3
deger[1] = 3
deger[2] = *Yukardaki nedenlerle sonuç 3*3 oluyor.
----------------
structure da yığınlar kısmında anlatılıyor.Daha fazla döküman bulmak istedim ;
http://ceng.gazi.edu.tr/~akcayol/files/DSL3Stacks.pdf
9. sayfada var ama az.Her zamanki olduğu gibi yine Türkçe döküman bulamadım.
-
hmm demek bu yontemle cozdun :D
-
neden infix prefix islemlerinde array kullanmayi tercih ettin?
-
musdawdaf bunu yazdı:
-----------------------------
neden infix prefix islemlerinde array kullanmayi tercih ettin?
-----------------------------hocam o array değil :D mantık için açıkladım.Yani soldan sağa gidiyoruz (sadece postfix'te) , bölme işlemi geldi mesela.Hemen bölme işleminin bir öncekisine ve onun öncekisine bakıyoruz , ortaya atıyoruz vs..