Our social:

Latest Post

22 Kasım 2013 Cuma

C'de 0 ile 100 arasındaki tek sayıların toplamı



C dilinde 0 ile 100 arasındaki tek sayıların toplamını bulan programı yazacağım. For döngüsü ve if kontrolüyle programı yazmak çok kolay.

Öncelikle döngü için i adında ve toplamı yazdırmak için de toplam adında değişken oluşturuyorum. toplam değişkenine 0 değerini atıyorum.

int i,toplam=0;

Ardından 0'dan başlayarak 100'e kadar for döngüsünü oluşturuyorum.

for(i=0;i<=100;i++)
{

}

Döngünün içinde sayının tek olup olmadığını kontrol ediyorum ve tek ise toplam = toplam + i koduyla toplama ekliyorum.

if(i%2==1)
       {
           toplam = toplam + i;
       }   

Son olarak toplamı ekrana yazdırıyorum.

printf("Toplam : %d", toplam);

Kodun tamamı

#include<stdio.h>
#include<conio.h>

main()
{
    int i,toplam=0;
    for(i=0;i<=100;i++)
    {
       if(i%2==1)
       {
           toplam = toplam + i;
       }                   
    }    
    
    printf("Toplam : %d", toplam);
    
    getch();  
}

13 Kasım 2013 Çarşamba

Temel SQL Komutları - 2



SELECT, SELECT DISTINCT, WHERE, AND ve OR komutlarını Temel SQL Komutları - 1 başlıklı yazıda açıklamıştım. Bu yazıda da ORDER BY, INSERT INTO, UPDATE ve DELETE komutlarını açıklayacağım.

ORDER BY KOMUTU


Veritabanındaki kayıtları belirli bir alana göre sıralamak için kullanılır.

ORDER BY id; örneğinde tablodaki id kolonuna göre sıralama yapar.

ORDER BY id DESC azalarak,

ORDER BY id ASC ise artarak sıralar.

INSERT INTO KOMUTU


Tabloya yeni kayıt eklemek için kullanılır.

INSERT INTO tablo_adı VALUES (değer1, değer2); veya

INSERT INTO tablo_adı (kolon1, kolon2) VALUES(değer1, değer2); şeklinde kullanılır.

UPDATE KOMUTU


Kayıt güncellemek için kullanılır. Bu komut ile beraber WHERE komutu da kullanılır.

UPDATE tablo_adı SET ad='Ahmet' WHERE id='1'; şeklinde kullanılır. Bu örnekte id numarası 1 olan kullanıcının adı Ahmet olarak güncellenir.

DELETE KOMUTU


Kayıt silmek için kullanılır. Yine bu komutla beraber WHERE komutu kullanılır.

DELETE FROM tablo_adı WHERE id='1'; 

Bu kodla da id numarası 1 olan kullanıcı tablodan silinir.

4 Kasım 2013 Pazartesi

C'de OKEK bulma



OKEK yani Ortak Katların En Küçüğü. C'de OKEK'in nasıl bulunabileceğini örnekle anlatacağım. Ekrandan iki sayı alıp bunların OKEK'ini bulacağım.

Sonsuz bir while döngüsü kullandım. For döngüsü de kullanabilirdim ancak o zaman belirli bir sayıya kadar döngüyü sürdürmem gerekirdi. Sonsuz while döngüsünde ise OKEK bulunana kadar döngü devam edecek.

#include<conio.h>
#include<stdio.h>

main()
{
    int sayi1;
    int sayi2;
    int kucuk;
    int ekok;
    int i=1;   
    
    printf("1.sayi : ");
    scanf("%d",&sayi1);
    
    printf("\n\n2.sayi : ");
    scanf("%d",&sayi2);

    while(1)
    {
       i++;
       if((i%sayi1==0)&&(i%sayi2==0))
       {
          ekok = i;     
          break;                         
       }   
    }                 
    
    printf("\n\nEKOK (%d , %d) = %d",sayi1,sayi2,ekok);
    
    getch();
}

C# - MySQL veritabanından DataGridView ile veri çekme

Daha önce C# ile MySQL veritabanı bağlantısı kurmayı ve MySQL veritabanından veri çekmeyi anlatmıştım. Bu sefer MySQL veritabanından çekilen verileri DataGridView ile görüntülemeyi anlatacağım.

C# - MySQL bağlantısı nasıl kurulur ?


Yukarıdaki yazıdan C# ile MySQL veritabanına nasıl bağlanıldığını öğrenebilirsiniz.

Yeni bir proje oluşturuyorum ve MySQL referansımı ekliyorum.



Ardından sayfayama DataGridView ekliyorum ve Form1_Load içine kodlarımı  yazmaya başlıyorum.

İlk olarak veritabanı bağlantımı kurup bağlantıyı açıyorum.

 MySqlConnection baglanti = new MySqlConnection("Server=localhost;Database=blog;Uid=root;Pwd='';");

 baglanti.Open();

Ardından MySqlDataAdapter ile select komutumu çalıştırıyorum.

MySqlDataAdapter da = new MySqlDataAdapter(komut, baglanti);

Yeni bir DataTable oluşturuyorum. İçindekileri DataAdapter içine atıyorum.

DataTable dt = new DataTable();
da.Fill(dt);

Son olarak DataTable içindekileri datagridview'e aktarıyorum.

dataGridView1.DataSource = dt;

Kodun tamamı



Program çalıştığında veriler çekilmiş oluyor.


3 tane ücretsiz HTML 5 - CSS 3 dropdown menü

İnternet sitelerinde dropdown menüleri sıklıkla görmekteyiz. Bu yazıda en yeni teknolojilerden HTML 5 ve CSS 3 ile kodlanmış birbirinden güzel menüleri sizlerle paylaşıyorum.

1 )


İlk menü sade ve çok hoş bir menü. Arkaplandaki grafiği kaldırdığınızda daha da güzel oluyor :)


Demo - İndir

2 )


Slayt şeklinde güzel bir menü.

Demo - İndir

3 )




3 Kasım 2013 Pazar

C#'ta textboxa girilen sayıyı yazıyla yazdırma

Bu yazıda textboxa girilen sayıyı ekrana okunuşuyla beraber yazdırmayı anlatacağım. Yani textboxa 678 sayısını girip butona tıkladığımızda labelda altı yüz yetmiş sekiz yazacak.

Programı yazarken hatırlatmam gereken işlem, kalanı bulmaya yaran % işlemi. Örneğin 12 % 5 yaparsak 2 değerini elde ederiz.

Yazdığım program binler basamağına kadar, yani en fazla dört basamaklı sayıları yazdırıyor ancak tabi ki de bu kolayca geliştirilebilir.

İlk olarak formuma bir textbox, bir button ve bir de label ekliyorum.



Ardından butonuma çift tıklayarak kodları yazmaya başlıyorum.

İlk olarak textboxın içindeki değeri integera çeviriyorum.

int sayi = Convert.ToInt32(textBox1.Text);

Ardından binler, yuzler, onlar ve birler adında integer değişkenler oluşturuyorum.

int binler, yuzler, onlar, birler;

Şimdi en önemli kısma geldik. Binler basamağını bulmak için sayıyı 1000'e bölüyorum. Örneğin sayım 8943 ise bana 8 değerini verecek. Yani binler basamağını bulacağım.

binler = sayi / 1000;

Ardından yüzler basamağını bulmak için önce sayıyı 100'e bölüyorum. Yani 8943 / 100 işleminden bana 89 sayısını veriyor. Bunu da 89 % 10 yapıyorum ve böylece 9 değerini yani yüzler basamağını buluyorum.

yuzler = (sayi / 100) % 10;

Onlar basamağını bulmak için de yüzler basamağındakine benzer işlem yapıyorum.

onlar = (sayi / 10) % 10;

Son olarak da birler basamağını buluyorum. Sayının 10'a bölümünden kalanı bularak birler basamağını elde ediyorum.

birler = sayi % 10;

Şimdi ekrana yazdırmaya geldi. Switch - case komutunu kullanıyorum.

Binler basamağı için


switch (binler)
            {
                default: return;
                case 0: label1.Text = label1.Text + ""; break;
                case 1: label1.Text = label1.Text + "bin"; break;
                case 2: label1.Text = label1.Text + "iki bin"; break;
                case 3: label1.Text = label1.Text + "üç bin"; break;
                case 4: label1.Text = label1.Text + "dört bin"; break;
                case 5: label1.Text = label1.Text + "beş bin"; break;
                case 6: label1.Text = label1.Text + "altı bin"; break;
                case 7: label1.Text = label1.Text + "yedi bin"; break;
                case 8: label1.Text = label1.Text + "sekiz bin"; break;
                case 9: label1.Text = label1.Text + "dokuz bin"; break;
            }

Yüzler basamağı için


switch (yuzler)
            {
                default: return;
                case 0: label1.Text = label1.Text + ""; break;
                case 1: label1.Text = label1.Text + " yüz"; break;
                case 2: label1.Text = label1.Text + " iki yüz"; break;
                case 3: label1.Text = label1.Text + " üç yüz"; break;
                case 4: label1.Text = label1.Text + " dört yüz"; break;
                case 5: label1.Text = label1.Text + " beş yüz"; break;
                case 6: label1.Text = label1.Text + " altı yüz"; break;
                case 7: label1.Text = label1.Text + " yedi yüz"; break;
                case 8: label1.Text = label1.Text + " sekiz yüz"; break;
                case 9: label1.Text = label1.Text + " dokuz yüz"; break;
            }

Onlar basamağı için


switch (onlar)
            {
                default: return;
                case 0: label1.Text = label1.Text + ""; break;
                case 1: label1.Text = label1.Text + " on"; break;
                case 2: label1.Text = label1.Text + " yirmi"; break;
                case 3: label1.Text = label1.Text + " otuz"; break;
                case 4: label1.Text = label1.Text + " kırk"; break;
                case 5: label1.Text = label1.Text + " elli"; break;
                case 6: label1.Text = label1.Text + " altmış"; break;
                case 7: label1.Text = label1.Text + " yetmiş"; break;
                case 8: label1.Text = label1.Text + " seksen"; break;
                case 9: label1.Text = label1.Text + " doksan"; break;
            }

Birler basamağı için


switch (birler)
            {
                default: return;
                case 0: label1.Text = label1.Text + ""; break;
                case 1: label1.Text = label1.Text + " bir"; break;
                case 2: label1.Text = label1.Text + " iki"; break;
                case 3: label1.Text = label1.Text + " üç"; break;
                case 4: label1.Text = label1.Text + " dört"; break;
                case 5: label1.Text = label1.Text + " beş"; break;
                case 6: label1.Text = label1.Text + " altı"; break;
                case 7: label1.Text = label1.Text + " yedi"; break;
                case 8: label1.Text = label1.Text + " sekiz"; break;
                case 9: label1.Text = label1.Text + " dokuz"; break;
            }

Programdan görüntü



C# for döngüsü ile ComboBox içine sayı yazdırma

Bu yazıda ComboBox içerisine for döngüsü ile sayıları yazdırmayı anlatacağım. Çok çeşitli durumlarda kullanmanız gerekebilir. Örneğin plaka kodlarını yazdırmanız gerektiğinde kullanabilirsiniz. Ben de bu yazıda 1-81 arası sayıları yazdıracağım.

İlk olarak projemi oluşturuyorum ve bir ComboBox ekliyorum.


Form1_Load içerisine gidiyorum ve kodlarımı yazmaya başlıyorum.

i=1 den başlayarak <=81 olana kadar i'nin 1 arttığı for döngüsü oluşturuyorum.

Yeni item eklemek için de comboBox1.Items.Add komutunu kullanıyorum.

 for (int i = 1; i <= 81; i++)
            {
                comboBox1.Items.Add(i);
            }

Programı çalıştırdığımda aşağıdaki gibi itemların listelendiğini görüyorum.



C'de girilen sayının asal olup olmadığını bulma

Bu yazıda klavyeden girilen bir sayının asal olup olmadığını bulan programın nasıl yazılabileceğini anlatacağım. Kendisi ve 1'den başka tam böleni olmayan sayılara asal sayı deniyor. Programı yazarken de for döngüsü oluşturacağım ve programın tam bölenlerini bulacağım.

Tam bölen demek, bölenden kalan 0 demek. Bu durumda % işaretiyle kalanın 0 olup olmadığını kontrol etmek gerekiyor.

Öncelikle i, sayi ve 0'a eşit olan sayac adında integer değişkenler oluşturuyorum.

int i,sayi,sayac=0;

Ardından kullanıcının sayı girmesini istiyorum. scanf komutuyla sayıyı kullanıcıdan alıyorum.

printf("Sayiyi girin : ");
scanf("%d",&sayi);

Daha sonra bir for döngüsü oluşturuyorum ve 2'den başlatarak <sayi olana kadar devam ediyorum.

Döngümün içine bir if şartı koyuyorum ve eğer kalan 0 ise sayac değişkenini 1 arttırıyorum.

for(i=2;i<sayi;i++)
    {
       if(sayi%i==0)
       {
           sayac++;
       }    
    }  

Son olarak sayac değişkenini kontrol ediyorum. Eğer sayaç 0'a eşit ise kalansız böleni yok demektir. Yani sayı asaldır. Aksi taktirde ise sayı asal değildir.

if(sayac==0)
    {
        printf("Asal");                    
    }
    else
    {
        printf("Asal degil"); 
    }

Programı çalıştırdığımda ve bir sayı girdiğimde aşağıdaki gibi bir ekranla karşılaşıyorum.




Kodun tamamı :


#include<stdio.h>
#include<conio.h>

main()
{
    int i,sayi,sayac=0;
    printf("Sayiyi girin : ");
    scanf("%d",&sayi);
    
    for(i=2;i<sayi;i++)
    {
       if(sayi%i==0)
       {
           sayac++;
       }    
    }     
    
    if(sayac==0)
    {
        printf("Asal");                    
    }
    else
    {
        printf("Asal degil"); 
    }
    
    getch();
}



2 Kasım 2013 Cumartesi

Localhost'a MyBB kurulumu

Bu yazıda Localhost'a nasıl MyBB forum yazılımını kurulacağını anlatacağım.

MyBB yani My Bulletin Board ücretsiz ve oldukça kullanışlı bir forum scripti.

İlk olarak http://www.mybb.com/downloads adresinden MyBB'nin son sürümünü indiriyorum. İndirmiş olduğum zip dosyasını açıyorum ve Upload klasörü içindekileri xamppp/htdocs içinde mybb adında klasör oluşturarak içine atıyorum.

phpMyAdmin'e girerek mybb adında yeni bir veritabanı oluşturuyorum.

http://localhost/mybb/install/ linkini açıyorum. Karşıma gelen ekranda Next butonuna tıklıyorum.

1 Kasım 2013 Cuma

C# Hesap Makinesi yapımı

C# öğrenmeye başlayan neredeyse herkesin karşısına hesap makinesi yapımı çıkar. Ben de bu yazıda C# ile basit bir hesap makinesinin nasıl yapıldığını anlatacağım.

Yapacağım hesap makinesinde butonları statik olarak oluşturduğumu söylemem gerekiyor. Çünkü bazen dinamik olarak hesap makinesi yapımı da istenebiliyor. Onu da daha sonraki yazılarımda anlatacağım.

İlk olarak yeni bir form oluşturuyorum ve aşağıdaki gibi butonlarımı ve textboxımı yerleştiriyorum.


1 yazan butona tıklıyorum ve içine aşağıdaki kodu yazıyorum.

MonstaFTP - PHP / Ajax tabanlı FTP uygulaması



Benim de yeni keşfettiğim MonstaFTP'yi tanıtmak istedim. MonstaFTP, PHP ile kodlanmış bir FTP istemcisi. Çok büyük beklentilere girmeden, temel düzeydeki FTP işlemlerini başarılı bir şekilde gerçekleştirebilirsiniz.

Temel SQL Komutları - 1

Temel SQL komutlarından SELECT, SELECT DISTINCT, WHERE, AND ve OR komutlarını açıklayacağım.

SELECT KOMUTU


Tablodan veri çekmek için kullanılır.

SELECT * FROM tablo; şeklinde kullanıldığında tablodaki tüm alanları seçer.

SELECT kolon_adi FROM tablo_adi; şeklinde kullanıldığında ise sadece kolon_adi adlı alanı seçer.

SELECT DISTINCT KOMUTU

Asp.NET (C#) ile MS-SQL bağlantısı kurma

Daha önce http://bilgisayar-muhendisleri.blogspot.com/2013/07/c-sharp-mysql-baglantisi-kurma.html yazısında C# ile MySQL bağlantısının nasıl kurulduğunu anlatmıştım. Bu yazımda da MS-SQL (Microsoft SQL Server) bağlantısının nasıl kurulacağını anlatacağım.

İlk olara sayfamın üstüne aşağıdaki satırları ekliyorum.

using System.Data;
using System.Data.SqlClient;