İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. Programlama Dilleri
Programlama Dilleri

Matematik İşlemi

steve7828.05.201615 cevap1.659 görüntüleme
2012'den beri800 mesaj
#1
Arkadaşlar merhaba,

x=1 ve y=1 olsun. x+=y+=x+=y buradaki kodun işleyişi nasıl oluyor açıklayabilir misiniz? Cevaplar x=4, y=3
Cevaplar
2011'den beri7.329 mesaj
#2
x+=y işleminden sonra x=7 ve y=3 olur. (Başlangıç x=4, y=3)
y+=x işleminden sonra x=4 ve y=7 olur. (Başlangıç x=4, y=3)
x-=y işleminden sonra x=1 ve y=3 olur. (Başlangıç x=4, y=3)
y-=x işleminden sonra x=4 ve y=-1 olur. (Başlangıç x=4, y=3)

sadece soldaki değerlere atama yapılır, sağdaki değerler değişmez.(++ işlemi vs yoksa)
steve78 Konuyu açan
2012'den beri800 mesaj
#3
x+=y işleminden sonra x=7 ve y=3 olur. (Başlangıç x=4, y=3)
y+=x işleminden sonra x=4 ve y=7 olur. (Başlangıç x=4, y=3)
x-=y işleminden sonra x=1 ve y=3 olur. (Başlangıç x=4, y=3)
y-=x işleminden sonra x=4 ve y=-1 olur. (Başlangıç x=4, y=3)

sadece soldaki değerlere atama yapılır, sağdaki değerler değişmez.(++ işlemi vs yoksa)
Biliyorum bu kuralı. Ancak bu şekilde x+=y+=x+=y verildiğinde karıştırdım, uygulayamadım. Editörde (başlangıçta x=1 ve y=1) yazdığımda programdan x=4 ve y=3 çıktısını alıyorum ama tam oalarak anlayamadım mantığını.
2011'den beri7.329 mesaj
#4
Bu kodu nereden aldıysan oradan uzaklaş.
Bu şekilde program yazılmaz.
Artistlik olsun diye yazılmış.
Programlarda okunabilirlik çok önemlidir.
Örneğin Microsoft'un C# kütüphanelerine baktığında rahatlıkla okuyabilirsin.(Algoritmayı anlamasan da işlemleri anlarsın en azından)
Ancak gösteriş yapmak isteyen işsizler böyle program yazar.
Her satırda ++ -- işlemleri ya da pointer işlemleri yoksa tek değişken ataması yapılır.
2008'den beri1.108 mesaj
#5
Buradaki kod kendine çok güvenen, operatörlerin efendisiyim diyen birisinin marifeti. Kod bu şekilde yazılmaz. İlla aynı satırda olması gerekiyorsa önceliğe göre parantez içine alınır. Bir derleyicide sonuç yukarıdaki gibi çıkar başkasında başka değerler çıkar başkasında ise hata verebilir. Birden fazla satır kullanmak acemilik değildir
steve78 Konuyu açan
2012'den beri800 mesaj
#6
Bu kodu nereden aldıysan oradan uzaklaş.
Bu şekilde program yazılmaz.
Artistlik olsun diye yazılmış.
Programlarda okunabilirlik çok önemlidir.
Örneğin Microsoft'un C# kütüphanelerine baktığında rahatlıkla okuyabilirsin.(Algoritmayı anlamasan da işlemleri anlarsın en azından)
Ancak gösteriş yapmak isteyen işsizler böyle program yazar.
Her satırda ++ -- işlemleri ya da pointer işlemleri yoksa tek değişken ataması yapılır.
sdmh dedi: ↑
Buradaki kod kendine çok güvenen, operatörlerin efendisiyim diyen birisinin marifeti. Kod bu şekilde yazılmaz. İlla aynı satırda olması gerekiyorsa önceliğe göre parantez içine alınır. Bir derleyicide sonuç yukarıdaki gibi çıkar başkasında başka değerler çıkar başkasında ise hata verebilir. Birden fazla satır kullanmak acemilik değildir
Geçen senelerden çıkmış bir final sorusu bu. Anlıyorum ama yapabileceğim bir şey yok.
2011'den beri7.329 mesaj
#7
Kusura bakmayın ama bizim hocaların davarlığı.
Amaç bilgi ölçmek değil dingillik yapmak.
Eğitim sisteminden önce öğretmenleri düzeltmemiz lazım.

Böyle saçma bir kodun derlenmesine izin verecek esneklik ya C++ da ya da Python'da olur.
Bunun dışındaki dillerin derleyicilerinde syntax hatası verir.
Hatta bu dillerde de derleneceğinden şüpheliyim.
Senin hocada leş gibi g*t varmış, g*tünden sallamanın en güzel örneği çünkü.
Ama şimdi sırf bunun için Visual Studio yükleyip uğraşamam.

Cevap da zaten yanlış.
x 5 olmalı y de 3 olmalı.
x+=y+=x+=y
İşlemler sağdan başlar.
x+=y+=(x+=y)
x+=y+=2 // x'e 2 atandı
x+=3 // y'ye 3 atandı
Son durumda x 5 y 3

Gecenin 1'inde tepem atıyor.
Böyle hocaların vizyonuna sokayım.
steve78 Konuyu açan
2012'den beri800 mesaj
#8
Kusura bakmayın ama bizim hocaların davarlığı.
Amaç bilgi ölçmek değil dingillik yapmak.
Eğitim sisteminden önce öğretmenleri düzeltmemiz lazım.

Böyle saçma bir kodun derlenmesine izin verecek esneklik ya C++ da ya da Python'da olur.
Bunun dışındaki dillerin derleyicilerinde syntax hatası verir.
Hatta bu dillerde de derleneceğinden şüpheliyim.
Senin hocada leş gibi g*t varmış, g*tünden sallamanın en güzel örneği çünkü.
Ama şimdi sırf bunun için Visual Studio yükleyip uğraşamam.

Cevap da zaten yanlış.
x 5 olmalı y de 3 olmalı.
x+=y+=x+=y
İşlemler sağdan başlar.
x+=y+=(x+=y)
x+=y+=2 // x'e 2 atandı
x+=3 // y'ye 3 atandı
Son durumda x 5 y 3

Gecenin 1'inde tepem atıyor.
Böyle hocaların vizyonuna sokayım.
Aynen matıken x'i bende 5 buluyorum ancak NetBeans'de çıktısını aldığımda x'i 4 veriyor.
steve78 Konuyu açan
2012'den beri800 mesaj
#9
Kusura bakmayın ama bizim hocaların davarlığı.
Amaç bilgi ölçmek değil dingillik yapmak.
Eğitim sisteminden önce öğretmenleri düzeltmemiz lazım.

Böyle saçma bir kodun derlenmesine izin verecek esneklik ya C++ da ya da Python'da olur.
Bunun dışındaki dillerin derleyicilerinde syntax hatası verir.
Hatta bu dillerde de derleneceğinden şüpheliyim.
Senin hocada leş gibi g*t varmış, g*tünden sallamanın en güzel örneği çünkü.
Ama şimdi sırf bunun için Visual Studio yükleyip uğraşamam.

Cevap da zaten yanlış.
x 5 olmalı y de 3 olmalı.
x+=y+=x+=y
İşlemler sağdan başlar.
x+=y+=(x+=y)
x+=y+=2 // x'e 2 atandı
x+=3 // y'ye 3 atandı
Son durumda x 5 y 3

Gecenin 1'inde tepem atıyor.
Böyle hocaların vizyonuna sokayım.
Pekii x = 2**3; bu durumda x kaç olur? IDE hata veriyor ama buda geçen senelerden çıkmış bir soru. Çift yıldızın ne analama geldiğini bilmiyorum. Sorunun orjinalide bu x = 19 % 4 + 15 / 2 * 3**2;
2011'den beri7.329 mesaj
#10
Hangi programlama dili için ?
steve78 Konuyu açan
2012'den beri800 mesaj
#11
Hangi programlama dili için ?
Java için.
steve78 Konuyu açan
2012'den beri800 mesaj
#13
Javanın yapımcısı Oracle kendi sitesinde bütün operatörleri listelemiş.
Böyle bir operatör yok.
Diyorum ya senin hoca sallıyor işkembeden.
Operators (The Java™ Tutorials > Learning the Java Language > Language Basics)

Stringlerde böyle bir işlem var. Klasörün içindeki tüm dosyaları eşleştirmek için. Senin işlemle alakası yok.
When to use ** (double star) in glob syntax within JAVA
Kaldık yani!.. o_O
steve78 Konuyu açan
2012'den beri800 mesaj
#14
steve78 dedi: ↑
Kaldık yani!.. o_O
Javanın yapımcısı Oracle kendi sitesinde bütün operatörleri listelemiş.
Böyle bir operatör yok.
Diyorum ya senin hoca sallıyor işkembeden.
Operators (The Java™ Tutorials > Learning the Java Language > Language Basics)

Stringlerde böyle bir işlem var. Klasörün içindeki tüm dosyaları eşleştirmek için. Senin işlemle alakası yok.
When to use ** (double star) in glob syntax within JAVA
Bir şey daha sormak istiyorum. iki koşul sağlaması gerektiğinde yada iki koşuldan herhangi biri sağlaması gerektiğinde bunu Java da nasıl yapabilirim?

Örn:

int a=2 b=3;

if( a=2 && b=3) yada if (a=2 || b=5)

{ yapılacaklar}

Önceki programlamalarda bu yukarıdaki gibi yapılıyordu. Java da IDE hata veriyor. Bu durumu Java da nasıl gösteriyoruz?
2011'den beri7.329 mesaj
#15
if( a==2 && b==3) yada if (a==2 || b==5)

= yerine == koy.
steve78 Konuyu açan
2012'den beri800 mesaj
#16
if( a==2 && b==3) yada if (a==2 || b==5)

= yerine == koy.
Doğru ya iyice çorba oldu kafam çift = koyuyorduk. Çok teşekkür ederim.

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.