Forum: Duyurular RSS
Yeni ders: Çıktı Düzeni
acehreli (Moderatör) #1
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: Yeni ders: Çıktı Düzeni
  http://ddili.org/ders/d/cikti_duzeni.html

Ali
acehreli (Moderatör) #2
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Daha önceki derslerde geçenler de dahil olmak üzere "ondalık sayı sistemi" terimlerini "onlu sayı sistemi" olarak değiştirdim.

Ali
Avatar
esatarslan52 (Moderatör) #3
Üye Haz 2009 tarihinden beri · 142 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Elinize sağlık :)

Dosya işlemlerinde çok işimize yarayacak bir konu. Verilerin kayıt dosyalarının daha rahat okunmasını sağlıyor.
import std.stdio;
import std.stream;
import std.cstream;
import std.process;
import std.file;
import std.format;
 
version(Windows)
{
    void ekranTemizle()
    {
        system("cls");
    }
}
else version(linux)
{
    void ekranTemizle()
    {
        system("clear");
    }
}
 
char tusAl()
{
    char tus;
 
    do
    {
        din.read(tus);
    } while(tus == '\n');
 
    return tus;
}
 
 
void dosyaYaz()
{
    auto dosya = new std.stream.File("ogrenciBilgi",FileMode.Append);
    char[] ad;
    char[] soyad;
    char[] no;
    char tus;
 
    do
    {
        ekranTemizle();
 
        write("Ad:");
        din.readf(&ad);
        write("Soyad:");
        din.readf(&soyad);
        write("No:");
        din.readf(&no);
 
        dosya.writef("%-10.10s ",ad);
        dosya.writef("%-10.10s",soyad);
        dosya.writefln("%-10.10s",no);
        writeln();
        writeln("Kayıt Tamam...");
        writeln("Yeni Kayıt girmek istermisiniz(E/H)?");
        tus = tusAl();
    }while(tus =='e' || tus=='E');
}
 
void dosyadanOku()
{
 
    auto dosya = new std.stream.File("ogrenciBilgi",FileMode.In);
    char tus;
 
    ekranTemizle();
 
    while(!dosya.eof())
    {
        char[] bilgi = dosya.readLine();
        dout.writefln(bilgi);
    }
    writeln();
    write("Ana menü icin Enter'a basin...");
    din.readf(&tus);
}
 
char menu()
{
    char tus;
 
    ekranTemizle();
 
    writeln("1-Ogrenci Kaydet");
    writeln("2-Listele");
    writeln("3-Cik");
    writeln();
    write("Birini seçin:");
    tus = tusAl();
 
    return tus;
}
 
int main()
{
    char tus;
 
    if (!exists("ogrenciBilgi"))
    {
        auto dosya = new std.stream.File("ogrenciBilgi",FileMode.Append);
        dosya.writef("%-10.10s ","Ad");
        dosya.writef("%-10.10s","Soyad");
        dosya.writefln("%-10.10s","No");
        dosya.writef("%-10.10s","-------");
        dosya.writef("%-10.10s ","-------");
        dosya.writefln("%-10.10s","-------");
    }
 
    do
    {
        tus = menu();
        switch(tus)
        {
            case '1':dosyaYaz();break;
            case '2':dosyadanOku();break;
            default:break;
        }
    }while(tus != '3');
 
    return 0;
}
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Forum: Duyurular RSS
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-22, 03:03:01 (UTC -08:00)