21 Mart 2016, 14:30 | #1 | |
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0) | 1′den 1000′e kadar olan sayıların toplamını bulup sonucu ekranda gösteren program Kod: Kodu kopyalamak için üzerine çift tıklayın!
__________________ SusKun ve Sessiz Mürekkep... Kullanıcı imzalarındaki bağlantı ve resimleri görebilmek için en az 20 mesaja sahip olmanız gerekir ya da üye girişi yapmanız gerekir. | |
|
17 Nisan 2023, 12:12 | #2 | ||||||||
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0) | Cevap: 1′den 1000′e kadar olan sayıların toplamını bulup sonucu ekranda gösteren program Hani bunun için bu kadar uzun 1000 döngülük sorgu yapmak yerine, güzelim matematiğimizin güzelim imkanlarını kullansak daha iyi olmaz mı. Bir sayı kümesindeki sayıların toplamını bulmanın çok basit bir fomülü var;
Bu formülle 1 ile 1000 arasındaki sayıların toplamını konsola bu şekilde basitçe yazdırabiliriz. Kod: Kodu kopyalamak için üzerine çift tıklayın!
Bu formülün iyi yanı 10000000 tane veriyi bile sorgulamadan kolaylıkla hesaplayabilirsin Kod: Kodu kopyalamak için üzerine çift tıklayın!
1 yerine farklı bir sayıdan başlarsak formül şöyle olmalı; Kod: Kodu kopyalamak için üzerine çift tıklayın!
Burada 18-728 arasını aldık mesela. Niye float kullandığıma da gelirsek, integer noktalı sayılardan oluşamaz ve toplamı 2 ye böldüğümüz durumlar var bu nedenle çarpmada 0.5lik sapmalar olmaması için float olarak kullanılması gerekir. Artış belirtilen sayılarda formül az daha karışıyor çünkü kalan değerler giriyor ortaya mesela 7-100 arasındaki her 5 sayıyı alırsak 97 son değer olmalı yani -3 lük bir kayma söz konusu bunun için ise formül;
şeklinde olmalıdır. Artışlı sayılara da örnek vereyim, mesela 7 ile 100000 arasındaki her 5 rakamı toplamak istiyoruz diyelim 5+10+15+20 gibi Kod: Kodu kopyalamak için üzerine çift tıklayın!
Her ne kadar buradan bakınca karmaşık görünse de büyük sayılar işin içine girdiğinde optimizasyonu ancak bu şekilde matematiğin faydalarını kullanarak sağlayabiliriz. 1000 sorgu c# için saliseler içinde yapılabilecek bir şey olabilir, ancak formüllerle bunu hiç bir sorgu yapmadan çok daha optimize bir şekilde yapmak mümkün. O yüzden matematiği sevelim Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir. Arithmetic Sequence nedir, formülleri nasıldır buradan bakabilirsiniz; [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]. Türkçe kaynak: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...].[COLOR="Silver"] Konu xwerswoodx tarafından (17 Nisan 2023 Saat 11:13 ) değiştirilmiştir. | ||||||||
|
Etiketler |
1′den 1000, toplama |
Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir) | |
| |
Benzer Konular | ||||
Konu | Konuyu Başlatan | Forum | Cevaplar | Son Mesaj |
Need For Speed’in Tarihçesi: 1995′den 2013′e NFS Tarihi | AftieL | Bilgisayar Oyunları | 2 | 11 Ağustos 2014 18:35 |
1′den 49′a Kadar Girilen İle Tutulan Sayılardan Eşleşenleri Bulma | aSi | C ve C++ | 0 | 24 Şubat 2012 22:26 |
Witcher 2′nin Xbox 360′a çıkışı ertelenebilir | KarakıZ | Oyun Dünyasından Son Haberler | 0 | 17 Ocak 2012 14:48 |
2009′dan 2010′a Kalan Trendler | YapraK | Ah Kadınlar | 0 | 05 Mart 2010 01:10 |