Birkaç gün önce Türkçe yazılım geliştirme soru/cevap sitesi önerisi için bir çağrıda bulunmuştuk. Tanım (‘definition’) aşamasında olan site için en az 60 kullanıcıya ve 10’ar puanlı 10 soruya ihtiyaç vardı. Bu aşama sitenin çerçevesini oluşturacak sorular sorma aşamasıydı. Çok kısa bir sürede bu ihtiyacı karşıladık ve birçok örnek sorumuz oldu. Şimdi ise taahhüt/söz (‘commitment’) aşamasındayız. Yani, site açılırsa […]
20 November 2011 | 4 yorum | Kategori: Programlama
Stackexchange’de Türkçe yazılım geliştirme soru/cevap site önerisi mevcut. Eğer gerekli topluluk desteği sağlanırsa site hayata geçebilecek. Şu anda tanımlama (definition) aşamasında olan önerinin bir sonraki aşamaya geçmesi için toplam 60 takipçiye ve 10ar puanlı 10 soruya ihtiyaç var. Ardından taahhüt/söz (commitment) aşamasına geçilecek ve ancak yeterli destek sağlanabilirse beta sürümüyle hayata geçecek. Yazılım konusunda böyle bir siteye […]
14 November 2011 | Yorum ekle | Kategori: Programlama
Bildiğimiz üzere, MATLAB, yorumlayıcı (interpreter) diller sınıfına ait. Yavaşlığa neden olan bu altyapı yüzünden MATLAB kullanırken döngülerden kaçınmamız tembihlenir. Peki biz bu tembihlere denemeden inanır mıyız? Cevabı aldım, evet, inanmayız! Bir e-deney (bunu yeni uydurdum, bilgisayarcının deneyi böyle olur) tasarlayalım. Döngü kullanmanın ve ilklendirme yapmanın, yani MATLAB diliyle konuşursak, for kullanmanın ve zeros ile değişken […]
6 October 2011 | 2 yorum | Kategori: Programlama | Etiketler: matlab
Önceki yazıya takviye olan bu yazıda bsxfun fonksiyonuna bakacağız. İlk yazıda bahsi geçen fonksiyonlar tek bir dizilimdeki elemanlar üstünde işlem yapmaya yarıyordu. bsxfun ise iki farklı dizilimde eleman eleman ikili işlem (binary operation) yapıp sonuçları yine bir dizilimde saklamaya yarıyor. Örneğin iki vektörde toplama yapmanın türlü türlü yolu var: a = [1 2 3]; b […]
30 September 2011 | Yorum ekle | Kategori: Programlama | Etiketler: matlab
Bu yazıda MATLAB kullanıcılarının çok bilmediği fonksiyon tutucular (function handle) ve anonim fonksiyonlara bakalım. İlk örneğimiz integral almak olsun ve şöyle basit bir fonksiyonumuz olsun: $$h(x) = 10x$$ Bu fonksiyonun [1,10] aralığında integralini analitik olarak alalım: \begin{align}\int_1^{10} h(x) \, dx &= 10 \frac{x^2}{2}\bigg|_{1}^{10}\\&= 500 – 5 \\&= 495\end{align} Şimdi bunu MATLAB ile nasıl yapacağımıza bakalım. […]
29 September 2011 | 4 yorum | Kategori: Programlama | Etiketler: anonim fonksiyonlar, fonksiyon tutucular, matlab
Faktöryel fonksiyonu çok hızlı büyüyen bir fonksiyon: $n$ çok büyük olmamasına rağmen $n!$ kısa sürede pratik olarak hesaplanamaz duruma gelebiliyor. Örneğin MATLAB’deki factorial fonksiyonu $n\leq 21$ için doğru hesaplanabilirken daha büyük $n$ değerleri için yalnızca ilk 15 basamağa kadar doğru sonuç alınabiliyor. Bu durumda Stirling yaklaşımı olarak bilinen alttaki formülden yararlanmak düşünülebilir. $$n! \approx \sqrt{2\pi […]
28 September 2011 | 2 yorum | Kategori: Programlama | Etiketler: faktöryel, log hilesi, matlab
MATLAB’de kalıcı değişken tanımlarken kullanabileceğiniz bir anahtar sözcük var: persistent. Yaratılan değişkenin siz fonksiyondan çıksanız bile hafızada korunmasını sağlıyor. C’deki static anahtar sözcüğü gibi düşünebilirsiniz. Örneğin bir koşan ortalama (running averager) fonksiyonu yazalım: function ortalama = kosanOrtalama(x) persistent n; persistent toplam; if x == ‘sifirla’ % Kalıcı değişkenleri ilklendir n = 0; toplam = 0; […]
21 September 2011 | 2 yorum | Kategori: Programlama | Etiketler: matlab
MATLAB kullanıyorsanız arrayfun, cellfun, spfun ve structfun fonksiyonlarından haberdar olmak işinizi rahatlatabilir. Bu fonksiyonlar en genel anlamda konuşacak olursak, kullandığınız verideki elemanlar üstünde hızlıca işlem yapıp sonuçları yine bir listede oluşturmanızı sağlar. Hemen taze kullandığım bir örnek vereyim: klasor= ‘../veri/yuzler/’; dosyaAdlari= arrayfun(@(x) x.name, dir([klasor ‘*.jpg’]), ‘UniformOutput’, false); Üstteki örnekte, ilgili klasördeki ‘jpg’ uzantılı dosya adlarını dosyaAdlari […]
20 September 2011 | 4 yorum | Kategori: Programlama | Etiketler: matlab
Her gün sokağa çıkmamla birlikte şoförlerin saniye sektirmediği yaya tacizine maruz kalıyorum. Bir saniye bile korna sesine bezenmeden geçmiyor. Hele taksi ve dolmuş şoförleri yok mu, yollarda terör estiriyor. Evin köşesindeki kavşağa hiçbiri sinyal vererek girmiyor. Üniversiteye gidene kadar enerjimin belki de yarısını yollarda bırakıyorum. İnsanların yüzü sırf bu yüzden asık. Sırf kafa dinlemek için […]
17 September 2011 | 2 yorum | Kategori: Genel
Eğer tünelin sonunda aydınlık bir dünya beklerseniz, tünelin karanlığı daha da uzun sürer. Artık lezzetli şeyler yemek istemediğinizde, ne yerseniz yiyin, bunun gerçek tadını alabilirsiniz. Bir yemek masasını doğal beslenmenin sade gıdalarıyla donatmak kolaydır, ama böyle bir ziyafetin gerçekten tadını çıkarabilenler azdır. Masanobu Fukuoka, “Ekin Sapı Devrimi”, Kaos Yay., 2. baskı, Mart 2011, sf. 134.
14 September 2011 | Yorum ekle | Kategori: Genel