Scratch Uygulamaları - 6. Sınıf

by Hayati ŞAHİN 20. Kasım 2017 13:56

6. sınıflarda yaptığımız Scratch uygulamalarını buradan indirebilirsiniz.

6. SINIF.zip (1,20 mb)

Tags:

Maol Grup - Mesleki Açık Öğretim Lisesi Grup Oluşturma Programı (Ücretsiz)

by Hayati ŞAHİN 15. Nisan 2013 12:13

Mesleki Açık Öğretim Lisesi'nin sorumluluğu bana verildiğinde, Geçiş ve Muafiyet Belgelerini takip ederek grupları oluşturmanın zor olduğunu gördüm ve öğrencilerin alacağı derslere göre grupları oluşturan bir program yazmaya karar verdim.

Programı 2012 Temmuz'unda geliştirmeye başladım ve kullandıkça gerekli gördüğüm kısımlara eklemeler yaptım.

Programın büyük bir bölümünü okulda, diğer işlerden fırsat bulduğum zamanlarda yazdım. Yani programın ücretini almış bulunmaktayım.

Program tüm işlemleri Mesleki Açık Öğretim Lisesi Yönetmeliğine göre yaparak yanlış işlem yapılmasının önüne geçmektedir.

Detaylı bilgi için;

www.hayatisahin.com/maolgrup

C#'ta Fatura Tutarını Yazı İle Yazdırma

by Hayati ŞAHİN 15. Şubat 2012 14:54

Geliştirdiğiniz programda fatura yazdırma özelliği varsa, fatura tutarını yazıya çevirmeniz gerekir. Bu konuda ihtiyacı karşılayacak bir çevirme fonksiyonu hazırladım. Ayrıca fonksiyonun kullanıldığı küçük bir program da yazdım. Fonksiyonun çalışmasını bu program üzerinden test edebilirsiniz. İnşallah işinize yarar.

Yazı İle Yazan Program

private string yaziyaCevir(decimal tutar)
{
    string sTutar = tutar.ToString("F2").Replace('.', ','); // Replace('.',',') ondalık ayracının . olma durumu için            
    string lira = sTutar.Substring(0, sTutar.IndexOf(',')); //tutarın tam kısmı
    string kurus = sTutar.Substring(sTutar.IndexOf(',') + 1, 2);
    string yazi = "";        
            
    string[] birler = { "", "BİR", "İKİ", "Üç", "DÖRT", "BEŞ", "ALTI", "YEDİ", "SEKİZ", "DOKUZ" };
    string[] onlar = { "", "ON", "YİRMİ", "OTUZ", "KIRK", "ELLİ", "ALTMIŞ", "YETMİŞ", "SEKSEN", "DOKSAN" };
    string[] binler = { "KATRİLYON", "TRİLYON", "MİLYAR", "MİLYON", "BİN", "" }; //KATRİLYON'un önüne ekleme yapılarak artırabilir.

    int grupSayisi = 6; //sayıdaki 3'lü grup sayısı. katrilyon içi 6. (1.234,00 daki grup sayısı 2'dir.)
                        //KATRİLYON'un başına ekleyeceğiniz her değer için grup sayısını artırınız.

    lira = lira.PadLeft(grupSayisi * 3, '0'); //sayının soluna '0' eklenerek sayı 'grup sayısı x 3' basakmaklı yapılıyor.            
        
    string grupDegeri;
	
    for (int i = 0; i < grupSayisi * 3; i += 3) //sayı 3'erli gruplar halinde ele alınıyor.
    {
        grupDegeri = "";

        if (lira.Substring(i, 1) != "0")
            grupDegeri += birler[Convert.ToInt32(lira.Substring(i, 1))] + "YÜZ"; //yüzler                

        if (grupDegeri == "BİRYÜZ") //biryüz düzeltiliyor.
            grupDegeri = "YÜZ";

        grupDegeri += onlar[Convert.ToInt32(lira.Substring(i + 1, 1))]; //onlar

        grupDegeri += birler[Convert.ToInt32(lira.Substring(i + 2, 1))]; //birler                

        if (grupDegeri != "") //binler
            grupDegeri += binler[i / 3];

        if (grupDegeri == "BİRBİN") //birbin düzeltiliyor.
            grupDegeri = "BİN";

            yazi += grupDegeri;
	}
            
    if (yazi != "")
        yazi += " TL ";

    int yaziUzunlugu = yazi.Length;

    if (kurus.Substring(0, 1) != "0") //kuruş onlar
        yazi += onlar[Convert.ToInt32(kurus.Substring(0, 1))];
            
    if (kurus.Substring(1, 1) != "0") //kuruş birler
        yazi += birler[Convert.ToInt32(kurus.Substring(1, 1))];

    if (yazi.Length > yaziUzunlugu)
        yazi += " Kr.";
    else
    yazi += "SIFIR Kr."; 

    return yazi;
}

Programı indirmek için :

Yazi_Ile_Yaz.rar (5,57 kb)

(Programın çalışabilmesi için bilgisayarınızda .NET Framework 4 Client Profile'in yüklü olması gerekir.)

Php İle Çarpım Tablosu Yapımı

by Hayati ŞAHİN 9. Aralık 2011 21:21

Php'de iç içe for döngüleri kullanarak çarpım tablosunun tamamını bir kaç satır kod ile ekrana yazdırabiliriz.

<?php
for ($i=1; $i<=9; $i++)
{
	for ($j=1; $j<=9; $j++)
	{
		echo "$i x $j = " . $i * $j . "<br />";		
	}
	echo "<br />";
}
?>


EasyPhp 5.3.2 de çalışan dosyayı buradan indirebilirsiniz.

carpim-tablosu.php (136,00 bytes)

Ücretsiz Barkodlu Satış Programı

by Hayati ŞAHİN 19. Kasım 2011 20:52

2004 yılında hazırladığım barkodlu satış programı. Küçük marketler ve barkodlu ürün satışı yapan tüm işyerleri kullanabilirler. Büyük işletmeler için yeterli performansı göstermeyebilir.

Programı herhangi bir barkod okuyucu ile kullanabilirsiniz. Eğer fazla ürününüz yoksa, barkod okuyucuya gerek olmadan, satacağınız ürünü listeden seçerek de kullanabilirsiniz. Müşteriye veya açığa satış yapabilirsiniz. Kayıtlı müşterilerinize ödemesi sonra yapılmak üzere(veresiye) satış yapabilirsiniz. Müşteri ektresi alabilirsiniz.

Programı küçük market sahibi bir tanıdığımın isteği üzerine yazmıştım. Daha sonra 2005'te proje ödevim olarak da kullandım. Programı bir bilgisayar firmasının ismi altında satmayı düşündüm ama üzerinde durup gerekli geliştirmeleri yapmadığım için bu da mümkün olmadı. Şuan ticari değeri yoktur.

Programın kullanımı tamamen ücretsizdir. Programa hiçbir şekilde destek verilmemektedir.

Programın ekran görüntüleri :

Bazı kısımlarda kodlamadaki amatörlükten kaynaklanan performans kayıpları mevcuttur. Bu durum kendini en çok Tüm Satışlar kısmında, istatistik zaman aralığı geniş seçildiğinde göstermektedir.

Program kurulum gerektirmez. İlk çalıştırıldığında ürün anahtarı isteyecektir. Programın çalışabilmesi için bilgisayarınızda Microsoft Office Access'in kurulu oması gerekir.

Ürün Anahtarı : D8PWINNLZK

Programı buradan indirebilirsiniz :

Market_1_0.rar (674,70 kb)

Programın kaynak kodlarını(Delphi 7) ve tanıtım belgesini(.doc) buradan indirebilirsiniz :

Market_1_0_Kodlar_Tanitim.rar (1,12 mb)

Not: Yeni ürün kaydında seri numarası en az 3 hane olmalıdır.

Programın kullanımıyla ilgili sorularınızı buradan sorabilirsiniz.

 

Yeni: Zeynel BOZKALE Hocamız programı okul kantinlerinde kullanılmak üzere düzenlemiş, programa yeni özellikler eklemiştir. 

Zeynel Hocamızın geliştirdiği programa buradan ulaşabilirsiniz. (Hocamız bana ulaştı, çalışmasından bahsetti. Ben de bağlantı ekledim. İncelemenizi tavsiye ederim.)

Tags: , ,

Genel

Silverlight Uygulamalarını Çalıştırmak

by Hayati ŞAHİN 10. Kasım 2011 16:35

Silverlight uygulamanız bilgisayarınızda çalışıyor fakat sunucuya attığınızda çalışmıyor(içi boş olarak geliyor) ise sunucunuzda Silverlight uygulamaları için mime type tanımlı değil demektir.

Bu durumu düzeltmek için hosting firmanızın destek bölümüne "Web sitemde Silverlight uygulamaları çalıştırmak istiyorum. Gerekli mime type'ı ekleyiniz." diye mesaj atabilir veya durumu telefonla görüşerek ifade edebilirsiniz. 

Mime Type'lar dosya türleri ile uygulamalar arasındaki bağlantıyı tanımlayan bilgilerdir. Silverlight uygulamanız .xap uzantılıdır. Bu dosya doğrudan istemciye göndirilen bir dosya değildir. Dinamik sayfalarda(asp,php,...) olduğu gibi önce sunucu üzerinde işlenmesi gerekir. Gerekli mime type tanımlandığında sunucu .xap uzantılı dosyanızı öncelikle .NET Framework'e gönderir. .NET Framework tarafından .xap uzantılı Silverlight dosyanızın içeriği oluşturulur ve bundan sonra uygulamamız istemciye gönderilir. Yani .xap uzantılı Silverlight uygulamaları sunucu üzerinde işlenen dinamik uygulamalardır ve doğrudan istemciye gönderildiklerinde çalışmazlar. ("Sadece xaml kodlarından" oluşan Silverlight uygulamaları sunucu üzerinde işlenmeye gerek duymazlar.)

Silverlight Nedir?

by Hayati ŞAHİN 7. Kasım 2011 09:40

Silverlight Web, Masaüstü ve Mobil alanlarda etkileşimli uygulamalar geliştirmek için oluşturulmuş bir tasarım ve programlama aracıdır.

Silverlight ile zengin içerikli web sitelerini ve uygulamaları kolayca geliştirebilirsiniz.

Silverlight ile web sitenize animasyon, video, ses gibi çoklu ortam nesneleri ekleyebilir veya web sitenizin tamamını Silverlight uygulaması olarak geliştirebilirsiniz.

Silverlight uygulamalarını Microsoft Visual Studio, Microsoft Visual Web Developer Express veya Microsoft Expression Blend araçlarını kullanarak geliştirebilirsiniz. Bunlardan Microsoft Visual Web Developer Express'i ücretsiz olarak kullanabilirsiniz.

Tags:

Silverlight

C# Kitabı

by Hayati ŞAHİN 1. Kasım 2011 16:24

Meslek Liselerinin Bilişim Teknolojileri Alanında okutulan Programlama Temelleri Dersi için Milli Eğitim Bakanlığı'nın hazırlamış olduğu modüller(kitapçıklar) C# programlama dilinin temelini öğrenmek isteyenler için ideal bir kaynak.

Kitapçıklar oldukça sade ve anlaşılır bir dille hazırlanmış.

Programlama ile ilgili temel kavramların anlatıldığı kitapçık :  

KODLAMAYA HAZIRLIK.pdf (517,75 kb)

Değişkenler, Sabitler ve Operatörlerin anlatıldığı kitapçık:

BASİT KODLAR.pdf (394,05 kb)

Program Kontrol Deyimleri(if-else, switch-case), Döngü deyimleri ve Dizilerin anlatıldığı kitapçık:

KONTROL DEYİMLER.pdf (1,55 mb)

Fonksiyon oluşturmanın ve hazır fonksiyonların(metinsel, matematiksel ve tarih-saat) anlatıldığı kitapçık: 

METOTLAR.pdf (1,99 mb)

C#'ta Değişkenler

by Hayati ŞAHİN 26. Ekim 2011 08:40

Değişkenler, programların üzerinde işlem yaptığı verilerin saklandığı bellek alanlarıdır. Bu veriler tam sayı, ondalıklı sayı, metin gibi farklı türlerde olabilir. Bu yüzden programlama dillerinde de farklı türlerde değişkenler vardır.

C#'ta değişken tanımlanırken önce değişkenin türü sonra değişkenin adı yazılır.

Örneğin;

int i;

ifadesi ile "int" türünde "i" adında bir değişken tanımlamış oluyoruz. 

Değişkenlerimizi isimlendirirken uymamız gereken bazı kurallar vardır. Değişken adları;

  • Sayı ile başlayamaz.
    • 1ogrenci  yanlış.
    • ogrenci1  doğru.
  • Boşluk ve özel karakterler(?,!,],&,...) içeremez.
    • Ad Soyad  yanlış.
    • AdSoyad  doğru.
    • ad&soyad  yanlış.
    • ad_soyad  doğru.
  • Programlama diline ait anahtar kelimelerden oluşamaz.
    • for  yanlış.(C#'ta bir döngü çeşitidir.)
    • TextBox  yanlış.(C#'ta bir sınıf adıdır.)
  • İngilizce'de bulunmayan karakterlerin(ö,ü,ç,ş,ğ,...) kullanımı tavsiye edilmez. Kullanılırsa hata oluşmaz.
    • Sınıf1  yerine  Sinif1
    • yaş  yerine  yas

Değişkenimizi tanımlamadan önce, değişkenin saklayacağı veriye göre değişkenin türünü belirlememiz gerekir. Değişkenler verileri saklamak için bellekte türlerine göre alan ayırırlar. Saklayacağımız veriden çok daha büyük veri türleri kullanmak programımızın bellekte gereksiz yer kaplamasına neden olacaktır. Diğer yönden saklayacağımız veriyi tutacak büyüklükte olmayan bir değişken de programımızın hata vermesine neden olacaktır.

C#'ta genel hatlarıyla değişken türleri:

  • Tamsayı Türleri (0, 25, 3200, -237, ...)
    • İşaretli Tamsayı Türleri (0'dan küçük tamsayıları da tutarlar.)
      • sbyte : -128 ile 127 arası değerler.
      • short : -32 bin ile 32 bin arası değerler.
      • int : -2 milyar ile 2 milyar arası değerler.
      • long : -9 x 1018 ile 9 x 1018 arası değerler.
    • İşaretsiz Tamsayı Türleri (0 ve 0'dan büyük tamsayıları tutarlar.)
      • ushort : 0 ile 64 bin arası değerler.
      • uint : 0 ile 4 milyar arası değerler.
      • ulong : 0 ile 18 x 1018 arası değerler.
  • Ondalıklı Sayı Türleri (1.5, 0.23, 317.45, ...)
    • float : -1.5 x 10-45 ile 3.4 x 1038 arası değerler.
    • double : -5.0 x 10-324 ile 1.7 x 10308 arası değerler.
  • Karakter türleri ('a', "İstanbul", ...)
    • char : tek bir karakter tutar. 'x', 'z', '0', ...
    • string : karakter dizilerini tutar. "İstanbul", "Hayati ŞAHİN", ...
  • Doğru veya Yanlış türü
    • bool : true veya false değerlerinden birini alabilir.
Değişken tanımlama örnekleri :
string adSoyad;

char harf;

float maas;

bool gecti;

short ogrenciNo;

 

C# İle Ekran Çıktısı Oluşturma

by Hayati ŞAHİN 24. Ekim 2011 17:32

C#'ta ekran çıktısı oluşturmak için Console sınıfının Write() ve WriteLine() metotlarını kullanabiliriz.

Aralarındaki fark; WriteLine() metodu parantez içindeki ifadeyi ekrana yazdıktan sonra imleci alt satıra indirir. Write() metodu ise imleci ekrana yazdığı ifadenin sağında bırakır.

C#'ta yeni bir Console Application oluşturarak aşağıdaki kodları yazdığımızda,

static void Main(string[] args)
{
    Console.Write("Hayati ŞAHİN");

    Console.ReadKey(); //Ekran çıktısını görebilmemiz için...
}

elde edeceğimiz ekran görüntüsü,

şeklinde olacaktır. Görüldüğü gibi imleç alt satıra geçmemiş, ekrana yazılan ifadenin sağında kalmıştır.

Aynı işlemi WriteLine() metodu ile yaptığımızda,

static void Main(string[] args)
{
    Console.WriteLine("Hayati ŞAHİN");

    Console.ReadKey(); //Ekran çıktısını görebilmemiz için...
}

elde edeceğimiz ekran görüntüsü,

şeklinde olacaktır. WriteLine() metodu parantez içindeki ifadeyi ekrana yazdıktan sonra imleci alt satıra indirmiştir.

Tags: , ,

C# (Console)

Son Yorumlar

Comment RSS

Etiket Bulutu