Bu sitedeki yazıların tamamı F. Oğuz ÖZKEROĞLU isimli şahıs tarafından uydurulmuş bilgilerden oluşmaktadır.

İçeriği kullanmak için kimseden izin alınmasına gerek yoktur.

Ocak 27, 2009

cSharp, php, projeler

4 yorum

Herkesin bildiği sayısal loto var bu yazımda.
Kazanmak için 1 – 49 arası sayılardan doğru olanları önceden tahmin etmek gerekiyor.

Çoğu insanın uğurlu sayıları vardır. Bazılarının bir tane, bazılarının da birkaç tane. Eğer bu sayılar 1 – 49 aralığındaysa kuponunda o sayılara yer verenlerin sayısı azımsanmayacak kadar çok. Ama kazanmak için uğurlu sayınızın olması yetmiyor.

Ayrıca kupon doldururken yazdığımız diğer sayılardan etkileniriz. Mesela 37 ve 38 yazan biri genelde aynı kolonda 39 yazmaz. Oysa 1 – 12 – 23 – 34 – 45 – 49 ile 1 – 2 – 3 – 4 – 5 – 6 gelme olasılıkları aynıdır.

Birden fazla doldurduğumuzda yazacak sayı bulmakta zorlanırız bazen.

Kuponları otomatik dolduran makineler bu sorunlara (bunlardan harhangi birini sorun olarak görenlere) bir derece yardımcı oluyorlar.

Biz de C# ile bu makineler gibi sayı üretebiliriz. Bu konuda .net’in Random sınıfı bizim işimizi görecektir.

Önce Random sınıfından bir nesne yaratmakla başlayalım :

Random rnd = new Random();

ile Rondom sınıfından rnd isimli bir nesne yaratıyoruz.

int birinciSayi = rnd.Next(1, 50);

ile de 1-50 arasında (1 dahil 50 dahil değil) rastgele bir sayı üretiyoruz.

Daha sonra

int ikinciSayi = rnd.Next(1, 50);
while (birinciSayi == ikinciSayi)
{
     ikinciSayi = rnd.Next(1, 50);
}

satırları ile ikinci ratgele sayımızı üretip diğeri ile eşit mi diye kontrol ediyoruz. Eğer iki sayı eşitse while döngüsü yardımı ile, eşit olmayana kadar ikinci sayı yeniden üretiliyor.

Üçüncü sayı için de

int ucuncuSayi = rnd.Next(1, 50);
while (birinciSayi == ucuncuSayi || ikinciSayi == ucuncuSayi)
{
     ucuncuSayi = rnd.Next(1, 50);
}

bu kodları kullanalım. Bu da aynı şekilde üretilen üçüncü sayı ile ilk iki sayıyı karşılaştırıyor. Herhangi birine eşitse yeniden üretiyor.

Benzer şekilde 6 farklı sayıyı da ürettikten sonra istersek direkt kullanabilir, istersek sıraladıktan sonra kullanabiliriz. (Trt çekilişten sonra hemen sıralayıp veriyor :))

Sıralamak için sayıları bir diziye atıp, diziyi sıralayalım. Bunu :

int[] dizi = new int[6];
dizi[0] = birinciSayi;
dizi[1] = ikinciSayi;
dizi[2] = ucuncuSayi;
dizi[3] = dorduncuSayi;
dizi[4] = besinciSayi;
dizi[5] = altinciSayi;

şeklinde diziye atarak ve :

Array.Sort(dizi);

şeklinde de sıralayarak yapabiliriz. Sıralama yapmak için C’deki gibi kendi fonksiyonumuzu yazmak yerine Array sınıfının nimetlerinden yararlanmak daha kolay olur :)

Artık elimizde 1 – 49 arasında 6 farklı elemanı olan bir dizi var. Bundan sonrası size ait. Konsolda çalışıyorsanız :

for (int i = 0; i < 6; i++)
{
     Console.WriteLine(dizi[i]);
}

şeklinde sayıları görebilirsiniz. Eğer windows formu kullanacaksak forma 1 tane buton ve 6 tane text box eklememiz gerekecek.
Text kutularının isimlerini değiştirmezsek eğer, butonun click eventine :

textBox1.Text = Convert.ToString(dizi[0]);
textBox2.Text = Convert.ToString(dizi[1]);
textBox3.Text = Convert.ToString(dizi[2]);
textBox4.Text = Convert.ToString(dizi[3]);
textBox5.Text = Convert.ToString(dizi[4]);
textBox6.Text = Convert.ToString(dizi[5]);

bunları yazarsak, sayılarımız sıralı olarak her kutunun içinde bir tane olacak şekilde görünecektir.

Visual Studio 2008 ile derlediğim örnek uygulamayı burdan indirebilirsiniz.
Çalışması için bilgisayarınızda .net framework 2.0 veya üzeri kurulu olmalıdır.

Yukarıdaki işlerin aynısını Php ile de yapabiliriz. Sayıları Php kullanarak üretmek için şuraya göz atın.

Ocak 9, 2009

çalışmalar, php

13 yorum

Asal Sayı : 1 ve kendisinden başka tam böleni olmayan pozitif tamsayılara asal sayı denir. 2, 3, 5, 7, 37, 227.. gibi. Belli bir sayıları yoktur, sonsuzdurlar. Matematikçiler yüzyıllardan beri asal sayıları veren bi formül bulmak için uğraşıyorlar ama nafile. Bu hala çözülmeyi bekleyen en büyük problemlerden biri. Biz belki asal sayıları veren bi formül bulamayız ama php (ve daha birçok programlama dili) ile sayının asal olup olmadığını kontrol edebiliriz. Bunu çok basit olarak php’de :

function asalMi($sayi)
{
      $kok=sqrt($sayi);

      for ($i=2; $i<=$kok; $i++)
      {
           if($sayi % $i==0) return 0;
      }
      return 1;
 }
 

C’de de :

int asalMi(int sayi)
{
     int i;
     for (i=2; i<=sqrt(sayi); i++)
     {
          if (sayi%i==0) return 0;
     }
     return 1;
 }

şeklinde yapabiliriz. Sayımız 2′den, kendi kareköküne kadar olan sayılara teker teker bölünecek, eğer herhangi birine tam bölünüyorsa fonksiyon geriye 0 döndürecek (sayı asal değil), hiçbirine tam bölünmüyorsa fonksiyon geriye 1 değeri döndürecek (sayımız asal). Php ile örnek bir uygulama yazdım. Denemek isterseniz aşağıdaki kutucuğa 1 – 1.000.000 arası bir tamsayı yazıp, butona tıklayın. Scriptimiz 1′den yazdığınız sayıya kadar olan asal sayıları bulup ekrana yazacak. Not : 1.000.000′dan daha büyük değerler için bayağı kasıyor :)

İletişim için basit bir form hazırladım ve php’nin mail fonksiyonunu kullanarak formdaki bilgileri yollamasını sağladım.

Artık mail hesabınızla oturum açmadan da istek, şikayet, öneri ya da yorumlarınızı formu kullanarak basit ve hızlı şekilde yollayabilirsiniz.

Şimdilik iletişim sayfasından ulaşabilirsiniz. Vatana millete hayırlı uğurlu olsun :)

Çanakkale Pizzam           

Ocak 2, 2009

projeler

2 yorum

pizzam
Bugün 3 yıldan beri Çanakkale’de ne zaman acıksam imdadıma yetişem
Pizzam Fast-Food’un web sitesinde fiyat güncellemesi ve arama
motorlarına kayıt çalışmalarında bulundum. Müşteriler siteden baktığı
eski fiyatlarla ödeme yapmak istediğinde problem çıkıyormuş, artık
herkes rahat edecektir :)

Zamlanmasına rağmen fiyatların uygun olduğu düşüncesindeyim.
İlgilenenler menüler için buraya[0] iletişim için de buraya [1] bakabilirler.

*0 canakkalepizzam.com/menuler.php
*1 canakkalepizzam.com/iletisim.php