13- DOSYALAR(FILES ) ( using System.IO; // Input Otput ) M.İLKUÇAR - 1

Benzer belgeler
Verileri Sıralı ve Random Erişimli Dosyalamak

Temel I/O ve String İşlemleri. Programlama Dilleri III

7.1- C#.net Giriş Çıkış İşlemleri ve Visual Studio. M.İLKUÇAR - 1

8- PROGRAM YAPISAL KOMUTLARI ve. M.ilkucar MAKU MYO 1

Görsel Programlama 1

11- FONKSİYONLAR (FUNCTIONS)

KARAR YAPILARI. Acaba hangi yöne gitmeliyim? Oturduğun yerden kalkıp, kapıya varana kadar kaç kez karar verdiniz biliyor musunuz?

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

12- HAZIR FONKSİYONLAR

7.1- Operatörler ve Giriş-Çıkış İşlemleri. M.İLKUÇAR - 1

PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ

Visual Basic. Dosya İşlemleri

ÜNİTE NESNE TABANLI PROGRAMLAMA I İÇİNDEKİLER. Okt. Mustafa AKBUĞA HEDEFLER DOSYA VE KLASÖR İŞLEMLERİ

C# Çalışma Örnekleri

/*int sayi1, sayi2,toplam=0;

ÜNİTE NESNE TABANLI PROGRAMLAMA I İÇİNDEKİLER. Okt. Mustafa AKBUĞA HEDEFLER DOSYA VE KLASÖR İŞLEMLERİ

D İ Z İ L E R A R R A Y S

Timer İle arka plan renk değişimi

şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2;

M.ilkucar MAKU MYO 1

elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

DOSYA İŞLEMLERİ Programlama dilleri hafta -

Akış Konrol Mekanizmaları

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:

Programlama Dilleri 3

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

C Dosyalama. Öğr. Gör. M. Ozan AKI. Rev 1.0

C# Örnek Uygulamalar I

C#.NET ile PROGRAMLAMAYA GİRİŞ

BMB1002 Bilgisayar Programlamaya Giriş. Dosyalar. Prof. Dr. Necmettin Kaya

Eln 1002 Bilgisayar Programlama II

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

static void dizi_24() { Random rnd = new Random(); int [] tutulan=new int[10]; int dogru;

// hataları işaret eden referans

BPR152-Algoritma ve Programlama II Uygulama -13

Temel Dosya İşlemleri. Kütük Organizasyonu 1

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

HSancak Nesne Tabanlı Programlama I Ders Notları

Temel Bilgisayar Programlama

Programlama Dilleri 3

NESNE TABANLI PROGRAMLAMA-2 DERS UYGULAMALARI-1

(7) C#.NET PROGRAMLAMAYA GİRİŞ. M.İLKUÇAR - 1

KRİPTOANALİZ DERSİ FİNAL ÖDEVİ. PSO ile TRANSPOSITION CIPHER ÇÖZÜMÜ

Metin Dosyaları. Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü

Eln 1001 Bilgisayar Programlama I

BİL1001 Bilgisayar Bilimlerine Giriş 1

Sınav Dağılım & IMKB Endeks

BPR152-Algoritma ve Programlama II Uygulama -12

T.C. MARMARA ÜNİVERSİTESİ BİLGİSAYAR VE ÖĞRETİM TEKNOLOJİLERİ ÖĞRETMENLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI PROGRAMLAMA DERSİ KAPSAMINDA YAPILAN

Bilgisayar Grafiğine Giriş Ders Notları

Pascalda oluşturulacak dosyalar değişkenler gibi programın başında tanımlanır.

Pascal Programlama Dili

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

giriş program yapısı değişkenler metotlar class kontrol deyimleri döngü deyimleri diziler struct try. catch files GUI

NESNEYE DAYALI PROGRAMLAMA 11. HAFTA UYGULAMA DERSİ

PROGRAMLAMA. Dosyalama İşlemleri. Yrd. Doç. Dr. Bülent Çobanoğlu. Sakarya Üniversitesi Mekatronik Mühendisliği. Yrd.Doç.Dr.

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-8 Dosya İşlemleri-1. Yrd. Doç. Dr. Ümit ATİLA

Hafta 12 Karakter Tutan Diziler

KUYRUKLAR QUEUES. Doç. Dr. Aybars UĞUR

Yrd. Doç. Dr. Caner ÖZCAN

C# ve SQL Server ile Resim Yükleme ve Login İşlemi

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ALGORİTMA VE PROGRAMLAMA II

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

BPR152-Algoritma ve Programlama II Uygulama -8

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM

NESNEYE YÖNELİK PROGRAMLAMA

Visual Basic 6.0. Anadolu Üniversitesi Endüstri Mühendisliği Bölümü. Dosyalama İşlemleri. Ders Notları

ByteArrayOutputStream

ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ. Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

ARRAY Alıştırmalar. Program 1: Aşağıdaki program, array kullanmadan, 5 tane değişken tanımlayıp, onların değerlerini konsola yazıyor.

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

ALGORİTMA VE PROGRAMLAMA II

10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI

BLG4134 Görsel Programlama III. Öğr. Grv. Aybike ŞİMŞEK

BufferedReader. Kılgıladığı Arayüzler: Closeable, AutoCloseable, Readable. Altsınıfları: LineNumberReader. Bildirimi: public class BufferedReader

BPR151-Algoritma ve Programlama I Uygulama -1

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

Strings(Karakter Dizisi)

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

C# ÖRNEK UYGULAMALAR

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

BİLG Dr. Mustafa T. Babagil 1

Sınıflar ve Yapılar Arasındaki Farklılıklar. Değer ve Referans Türde Olan Aktarımlar

NESNEYE DAYALI PROGRAMLAMA 9. HAFTA UYGULAMA DERSİ

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

Giri. Program yazmaya balamadan önce

PDF. C# Console Örnekleri.

PROGRAMLAMA TEMELLERİ UYGULAMA KİTABI. Bilgin Nur GÜZELOCAK

Dosyalar 1.1 Dosya Nedir?

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

işlemler bittikten sonra dosyaların kapatılması uygun olacaktır. Bunun için, fclose(fin);

Console.Write = Ekrana Yazıyı ve değişkenin değerini yazarak imleci satırın sonunda beklemesini sağlar.

2) /* Kullanıcıdan alınan iki sayının obebini alt fonksiyon yardımı ile hesaplayan C programı*/

DATA STRUCTURES. Part I C# Programlama Dili Temelleri

CharArrayReader. Kılgıladığı Arayüzler: Bildirimi: Değişkenleri (fields): java.io.reader Sınıfından Kalıtsal Gelen Değişken:

ALGORTMA ve PROGRAMLAMA - II (C# Sürümü) DERS NOTLARI

BBS515 Nesneye Yönelik Programlama. Ders 2 Zümra Kavafoğlu

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

Transkript:

13- DOSYALAR(FILES ) ( using System.IO; // Input Otput ) M.İLKUÇAR - imuammer@yahoo.com 1

Dosya (disk) Memory Veri Ekran Yazıcı Port M.İLKUÇAR - imuammer@yahoo.com 2

13- DOSYALAR (Files) System.IO; // (Input Output) Akımlar (Stream) TextReader TextWriter FileStream MemoryStream BufferedStream GZipStream StreamReader BinaryReader StringReader StreamWriter BinaryWriterr StringWriter DeflateStream M.İLKUÇAR - imuammer@yahoo.com 3

13- DOSYALAR FileStream(string path, FileMode mode) FileStream(string path, FileMode mode, FileAccess access) Dosya Açılış Modu FileMode.Append FileMode.Create FileMode.CreateNew FileMode.Open FileMode.OpenOrCreate Açıklama Yazmak için dosya açma Yazmak üzere yeni dosya oluşturma. Varsa silinir. Yeni dosya oluşturur, ancak önceden var olmamalıdır. Daha önce oluşturulan dosya açılır Dosya açılır eğer yoksa önce oluşturulur. Dosya Erişim Modları FileAccess.Read FileAccess.Write FileAccess.ReadWrite Akımlar : Herhangi bir cihazdan(disk, USB, memory, web, Port (seri) ) veri aktarımı(okuma yazma) M.İLKUÇAR - imuammer@yahoo.com 4

13- DOSYALAR FileStream ( string path, FileMode mode, FileAccess access ) using System.IO; // Dosya oluşturma ve bilgi yazma FileStream fs = new FileStream("C:\\ornek.txt", true); fs.writeline( Ali Can ); fs.writeline( Veli Koç ); fs.close(); // Dosya açma ve bilgi okuma FileStream sr = new FileStream("C:\\ornek.txt", FileMode.Open, FileAccess.Read); int x; do x = sr.readbyte(); if ( x!= -1) Console.Write( (char) x ); while ( x!= -1 ) ; sr.close(); M.İLKUÇAR - imuammer@yahoo.com 5

13- DOSYALAR FileStream(string path, FileMode mode, FileAccess access) using System.IO; // Dosya oluşturma ve bilgi yazma FileStream fs = new FileStream("abc.txt", FileMode.Append, FileAccess.Write ); byte[ ] b = 1,2,3,4,5; fs.write( b, 0, b.length ); Fs.WriteLine( adbcde ); fs.close(); // Dosya açma ve bilgi okuma FileStream sr = new FileStream("abc.txt", FileMode.Open, FileAccess.Read); int x; do x = sr.readbyte(); if ( x!= -1) Console.Write( (char) x ); while ( x!= -1 ) ; sr.close(); M.İLKUÇAR - imuammer@yahoo.com 6

13- Dosyalar- Random Access long Seek(long offset, SeekOrigin origin) long Seek( gidilecek konum, nerden itibaren ) Değer SeekOrigin.Begin SeekOrigin.Current SeekOrigin.End Anlamı Dosyanın başı Dosyanın mevcut yerine Dosyanın sonu M.İLKUÇAR - imuammer@yahoo.com 7

13- Dosyalar- Seek( ofset, konum) Dosyada istenen yere konumlanma ( seek ( konum, nerden) ) using System.IO; static void Main() FileStream f = f = new FileStream( random.dat", FileMode.Create ); for (int i = 0; i < 26; i++) f.writebyte( (byte) ('A' + i) ); f.seek(0, SeekOrigin.Begin); // seek ilk byte Console.WriteLine("İlk karakter " + (char) f.readbyte() ); f.seek(1, SeekOrigin.Begin); // seek ikinci byte Console.WriteLine("İkinci karakter" + (char) f.readbyte() ); f.seek(2, SeekOrigin.Current); // seek olduğu yerden 2 karakter sonraki byte E Console.WriteLine( Mevcut + 2 sonraki karakter " + (char) f.readbyte() ) ; for (int i = 0; i < 26; i += 2) f.seek( i, SeekOrigin.Begin ); // seek i. Character Console.Write( (char)f.readbyte() + " "); İlk karakter A İkinci karakter B Mevcut pos. +2 kr. E A C E G I K M O Q S U W Y M.İLKUÇAR - imuammer@yahoo.com 8

13- DOSYALAR StreamReader / StreamWriter uusing System.IO; // dosya oluştur, yoksa yada ekleme modunda aç ma ve bilgi ekleme StreamWriter sw= new StreamWriter( abc.txt", true ) ; sw.writeline("bir"); sw.writeline("iki"); sw.close(); // dosyayı okuma modunda açma ve bilgi okuma StreamReader sr; sr = new StreamReader("abc.txt", System.Text.Encoding.UTF8) ; Console.Write( sr.readtoend() );// dosyayı sonu kadar oku ve ekrana yaz sr.close(); StreamReader sr1 = new StreamReader("abc.txt", System.Text.Encoding.UTF8); string s = ""; while ( ( s = sr1.readline() )!= null ) Console.WriteLine( s ); sr.close(); // sr.read( cahr [ ] buff, int index, inr count); M.İLKUÇAR - imuammer@yahoo.com 9

13- DOSYALAR FileInfo FileInfo fi = new FileInfo ( abc.txt ); StreamWriter sw = fi.createtext( ); Dosya Modu FileInfo.AppendText() FileInfo.Create () FileInfo.CreateText() FileMode.Open FileInfo.OpenText() FileInfo.OpenRead() FileInfo.OpenWrite() Açıklama Eklemek için dosya açma Yeni dosya oluşturma. Varsa silinir. Yeni dosya oluşturur ve yazma modunda aç Okumak veya yazmak için dosya açılır UFT8 kodunda okumak için açar Okumak üzere var olan dosyayı açar. Yazmak üzere var olan dosyayı açar. M.İLKUÇAR - imuammer@yahoo.com 10

13- DOSYALAR using System.IO; Void Main() FileInfo fi = new FileInfo( abc.txt ); StreamWriter sw = fi.createtext( ); sw.writeline("bir"); sw.writeline("iki"); sw.close(); StreamReader sr = fi.opentext(); string s=""; while ( (s = sr.readline() )!= null ) Console.WriteLine(s); sr.close(); M.İLKUÇAR - imuammer@yahoo.com 11

13- DOSYALAR TextWriter / TextReader using System.IO; Void Main() TextWriter tw = new StreamWriter("date.txt", true); // true değer varsa ekleme modunda açar yoksa yeni oluşturur tw.writeline(datetime.now); // write a line of text to the file tw.close(); // close the stream TextReader tr = new StreamReader("date.txt"); // create reader & open file while( tr.readline()!=null ) Console.WriteLine( tr.readline() ); // satır oku tr.close(); // close the stream System.Diagnostics.Process.Start("date.txt"); // notpad ile açar M.İLKUÇAR - imuammer@yahoo.com 12

13- Dosyalar StringWriter / StringReader Formatlı yazdırma // bazen byte yerine string olarak okuma yazma yapılabilir using System.IO; static void Main() StringWriter w = new StringWriter(); StringReader r = null; for(int i=0; i < 10; i++) w.writeline( Sayı i: " + i ); r = new StringReader( w.tostring() ) ; string s = r.readline(); // ilk satırı oku ve sonraki satıra geç while( s!= null ) s = r.readline(); Console.WriteLine(s); if(r!= null ) r.close(); if(w!= null ) w.close(); M.İLKUÇAR - imuammer@yahoo.com 13

13- DOSYALAR Yerel ağdan ( LAN ) okuma yazma using System.IO; private void agdan_dosya_oku_yaz ( ) string s; FileInfo f = new FileInfo(@ \\ L112_20 \ CS \ egitim.txt"); StreamReader oku = new StreamReader(@"C:\ CS\ bmyo.txt"); if ( f.exists ) StreamWriter yaz = new StreamWriter(@ \\ L112_20 \ CS \ egitim.txt"); while ((s = oku.readline())!= null) yaz.writeline(s); yaz.close(); oku.close(); Yerel ağdaki L112_20 adlı bilgisayarda paylaşıma açılmış CS klasörü içerisinde bulunan bmyo.txt dosyasından okur egitim.txt dosyasına yazar. M.İLKUÇAR - imuammer@yahoo.com 14

13- DOSYALAR Yerel ağdan ( LAN ) okuma yazma using System.IO; private void agdan_dosya_oku_yaz ( ) string s; FileInfo f = new FileInfo( @ \\ L112_20 \ CS \ egitim.txt"); if ( f.exists ) StreamReader oku = new StreamReader(@ \\ L112_20\ CS \ egitim.txt"); while ((s = oku.readline())!= null) Console.Write(s); oku.close(); Yerel ağdaki L112_20 adlı bilgisayarda paylaşıma açılmış CS klasörü içerisinde bulunan egitim.txt dosyasını okuyup ekrana yazdırır. M.İLKUÇAR - imuammer@yahoo.com 15

13- Dosyalar- Binary Okuma Binary Okuma Yazma static void Main() FileStream fs = new FileStream("t.dat", FileMode.Create); BinaryWriter bw = new BinaryWriter( fs); bw.write(123); bw.write("mehmet Arda"); bw.write(new byte [] 2,4,5,6 ); // 4 byte bw.close(); fs = new FileStream("t.dat", FileMode.Open); BinaryReader br = new BinaryReader(fs); Console.WriteLine(br.ReadInt32()); Console.WriteLine(br.ReadString()); byte [] byt= br.readbytes(4); foreach (byte b in byt) Console.WriteLine(b); M.İLKUÇAR - imuammer@yahoo.com 16

13- Dosyalar- Memory-File Memory(Bellekten) Yazma / Okuma static void Main() MemoryStream ms = new MemoryStream(); StreamWriter sw = new StreamWriter(ms,System.Text.Encoding.UTF32); sw.writeline("abcd"); // memory tampona yaz sw.flush(); //Tampondakini memory yaz Console.WriteLine(ms.Length); //28 byte[] b = ms.toarray(); // memory den diziye aktar FileStream fs = new FileStream("mem.dat",FileMode.Create); ms.writeto(fs); // memory dekini dosyaya aktar ms.close(); fs.close(); M.İLKUÇAR - imuammer@yahoo.com 17

13- Dosyalar- Veri sıkıştırma Akımları GZipStream- DeflateStream ( GZip ve Deflate sıkıştırma algoritmaları) using System.IO; using System.IO.Compression; static void Main() DeflateStream defs; FileStream fs = new FileStream( orjinal.dat", FileMode.Open); FileStream d = new FileStream("veri.def", FileMode.Create); defs = new DeflateStream(d, CompressionMode.Compress); byte[ ] buffer = new byte[1000]; int boyut = 0; while( (boyut = fs.read(buffer,0,buffer.length )) > 0) defs.write(buffer,0,boyut); defs.close(); fs.close(); d.close(); d = new FileStream("veri.dat", FileMode.Create); fs = new FileStream("veri.def",FileMode.Open); defs= new DeflateStream(fs, CompressionMode.Decompress); while( (boyut= defs.read(buffer,0,buffer.length)) >0) d.write(buffer,0,boyut); defs.close(); fs.close(); d.close(); M.İLKUÇAR - imuammer@yahoo.com 18

13- Dosyalar- Veri sıkıştırma Akımları GZipStream- DeflateStream ( GZip ve Deflate sıkıştırma algoritmaları) using System.IO; using System.IO.Compression; static void Main() GZipStream defs; FileStream fs = new FileStream( orjinal.dat", FileMode.Open); FileStream d = new FileStream("veri.def", FileMode.Create); defs = new GZipStream (d, CompressionMode.Compress); byte[] buffer = new byte[1000]; int boyut = 0; while( (boyut = fs.read(buffer,0,buffer.length )) > 0) defs.write(buffer,0,boyut); defs.close(); fs.close(); d.close(); d = new FileStream("veri.dat", FileMode.Create); fs = new FileStream("veri.def",FileMode.Open); defs= new GZipStream (fs, CompressionMode.Decompress); while( (boyut= defs.read(buffer,0,buffer.length)) >0) d.write(buffer,0,boyut); defs.close(); fs.close(); d.close(); M.İLKUÇAR - imuammer@yahoo.com 19

M.İLKUÇAR - imuammer@yahoo.com 20

ÇEŞİTLİ ÖRNEKLER M.İLKUÇAR - imuammer@yahoo.com 21

Soru-1 ) Klavyeden 20 öğrencinin adı, soyadı, vize ve final notu girildikten sonra, öğrencileri, Adı soyadı Vize Final Ortalama Harf Notu başlıkları altında listeleyiniz? Soru-2 ) Kareli deftere bir şekil çizerek şeklin geçtiği yerler 1 boş yerlere 0 yazınız. Daha sonra bu bilgileri iki boyutlu bir diziye işleyiniz ve ekrandan yazdırınız? Soru-3 ) Klavyeden girilecek x ve n değerleri için, aşağıdaki formüle göre y değerini hesaplayıp yazdıran programı fonksiyon kullanarak yazınız? y = 1- X + X 2 /2! X 3 /3! + + X n /n! Soru-4 ) Loto- 6-49 programını yazınız. Açıklama: 1-49 arası sayılardan rastgele birbirinin aynı olmayan 6 sayı türetilecektir. Soru-5) 5 elemanlı tek boyutlu bir double dizisine, *0,1+ aralığında rastgele üretilen sayılar hangi aralıkta ise (0.0-0.2 (0.), 0.2-0.4 (1.), 0.4-0.6(2.), 0.6-0.8(3.), 0.8-1.0(4.) ) o aralıktaki sayıyı + 1 arttırınız. Bu işlemi 100 kez tekrarladıktan sonra dizideki değerin yoğunluk grafiğini çiziniz. Soru-6) Klavyeden girilen numara, ad, soyad bilgilerini bir text dosyaya kaydeden ve daha sonra satır satır listeleyen programı yazınız. M.İLKUÇAR - imuammer@yahoo.com 22

Void Main() // Soru-1 in cevabı int ogr_say = 20; string[,] d = new string[ogr_say, 3]; for (int i = 0; i < ogr_say; i++) Console.Write(i + 1 + ". öğrencinin Adı sıyadı:"); Console.Write(i + 1 + ". öğrencinin Vizesi:"); d[i,0]= Console.ReadLine(); d*i, 1+ = Console.ReadLine(); d*i, 2+ = Console.ReadLine(); Console.Write(i + 1 + ". öğrencinin Finali:"); Console.WriteLine(" Adı Sıyadı\tVizesi\tFinali\tOrtalma\tHarf Notu"); for (int i = 0; i <d.getlength(0); i++) double v = int.parse( d[i, 1]), f = int.parse( d[i, 2]); double ort = v * 0.4 + f * 0.6; Console.WriteLine("0\t1\t2\t3\t4\t", d[i,0], v, f, ort, harfnot(ort,f) ); static string harfnot( double ort, double f) string hn="ff"; if (f < 46) return hn; if (ort > 90) hn = "A+"; if (ort <= 90 && ort > 80) hn = "A"; if (ort <= 80 && ort > 70) hn = "A-"; if (ort <= 70 && ort > 60) hn = "C"; if (ort <= 60 && ort > 50) hn = "D"; return hn; M.İLKUÇAR - imuammer@yahoo.com 23

// soru-2 nin cevabı static byte [, ] sekil( ) byte [,]d= 1,0,0,0,1,1,1,1,1,1, 0,1,0,0,0,0,0,0,0,0, 0,0,1,0,0,0,0,0,0,0, 0,0,0,1,0,0,0,0,0,0, 0,0,0,0,1,1,1,1,1,1, 0,0,0,0,0,1,0,0,0,0, 0,0,0,0,0,0,1,0,0,0, 0,0,1,1,1,1,1,1,1,1 ; return d; static void Main() byte [,] d= new byte [ sekil().getlength(0), sekil().getlength(1) ]; d = sekil(); for (int i = 0; i <d.getlength(0); i++) for (int j = 0; j <d.getlength(1); j++) if (d[i, j]!= 0) Console.Write("."); else Console.Write(" "); Console.WriteLine(); Console.ReadKey(); M.İLKUÇAR - imuammer@yahoo.com 24

// soru-3 üncevabı static double fakt ( int x) double f = 1; if (x > 1) f = x* fakt(x - 1); return f; static double us ( int x, int y) double f = 1; if (y == 0) return f; for (int i = 1; i <=y; i++)f *= x ; return f; static void Main() Console.Write("X girinz:"); int x = int.parse( Console.ReadLine() ); Console.Write("n girinz:"); int n = int.parse(console.readline()); double y=0; for (int k = 0; k <=n; k++) if (k % 2 == 0) y += us(x,k) / fakt(k); else y -= us(x, k) / fakt(k); Console.WriteLine("y= " + y); Console.ReadKey(); M.İLKUÇAR - imuammer@yahoo.com 25

// soru-4 ün cevabı static void Main() Random r = new Random(); ConsoleKeyInfo keypress; do int [ ] d = new int[6]; for (int k = 0; k < 6; ) int n = r.next(1, 50); if (Array.IndexOf(d, n) == -1) d[k] = n; k++; foreach (int i in d) Console.Write( i + " "); keypress = Console.ReadKey(); while (keypress.keychar!= 'Q' ); M.İLKUÇAR - imuammer@yahoo.com 26

// Soru-5 in cevabı Void Main() double[] d = new double[5]; Random r = new Random(); for (int i = 0; i <100; i++) double x = r.nextdouble(); if (x < 0.2) d[0]++; if (x >= 0.2 && x< 0.4) d[1]++; if (x >= 0.4 && x < 0.6) d[2]++; if (x >= 0.6 && x < 0.8) d[3]++; if (x >= 0.8 ) d[3]++; for (int i = 0; i <d.length; i++) for (int k = 0; k <d[i]; k++) Console.Write("*"); Console.WriteLine(); M.İLKUÇAR - imuammer@yahoo.com 27

// Soru-6 in cevabı Void Main() TextWriter tw = File.CreateText("abc.txt"); ConsoleKeyInfo key; int i = 1; do Console.Write(i + ". Kişinin numara ad soyad giriniz:"); string s = Console.ReadLine(); tw.writeline(s); i++; Console.Write("Çıkmak için Q devam için herhanbir tuşa basınız"); key = Console.ReadKey(); while (key.keychar!= 'Q'); tw.close(); TextReader tr = File.OpenText("abc.txt"); string st = ""; while ( (st=tr.readline())!= null) Console.WriteLine(st); Console.ReadKey(); M.İLKUÇAR - imuammer@yahoo.com 28

13- Dosyalar- Byte Yazma void WriteByte(byte value) void Write( byte[ ] array, int offset, int count ) static void Main(string[] args) FileStream fout = new FileStream("test.txt", FileMode.CreateNew); for(char c = 'A'; c <= 'Z'; c++) fout.writebyte( (byte) c ); if ( fout!= null) fout.close(); M.İLKUÇAR - imuammer@yahoo.com 29

13- Dosyalar- Memory-File static void Main() byte[] d = new byte[255]; MemoryStream memstrm = new MemoryStream(d); // Create memory-tabanlı akım. StreamWriter msw = new StreamWriter(memstrm); // memory yazma. StreamReader msr = new StreamReader(memstrm); for (int i = 0; i < 10; i++) //memory yazma. msw.writeline("byte [" + i + "]: " + i); msw.writeline("."); msw.flush(); Console.WriteLine("Diziden okuma: "); foreach (char ch in d) if (ch == '.') break; Console.Write(ch); Console.WriteLine("\nMmeory den okuma: "); memstrm.seek(0, SeekOrigin.Begin); // reset file pointer string str = msr.readline(); while (str!= null) str = msr.readline(); if (str[0] == '.') break; Console.WriteLine(str); msw.close(); msr.close(); M.İLKUÇAR - imuammer@yahoo.com 30

13- DOSYALAR (Files) Input (Read) / Output (Write) Okuma Read - Input Yazma-Write- Output Read() ReadLine() ReadKey() Write () WriteLine() M.İLKUÇAR - imuammer@yahoo.com 31

13- Klavyeden okuma Read()- ReadLine() static void Main() char ch; Console.Write( ENTER basınız: "); ch = (char) Console.Read(); // Karakter oku Console.WriteLine( Basılan Tuş: " + ch); //ENTER basınız : //Basılan tuş: \r ( yani enter) M.İLKUÇAR - imuammer@yahoo.com 32

13- Klavyeden Okuma - ReadKey() static ConsoleKeyInfo ReadKey( ) static ConsoleKeyInfo ReadKey(bool intercept) static void Main() ConsoleKeyInfo keypress; Console.WriteLine("Eçıkış için : Q "); do keypress = Console.ReadKey(); // tuş oku Console.WriteLine(" Your key is: " + keypress.keychar); if( (ConsoleModifiers.Alt & keypress.modifiers)!= 0) Console.WriteLine("Alt key pressed."); if( (ConsoleModifiers.Control & keypress.modifiers)!= 0) Console.WriteLine("Control key pressed."); if( (ConsoleModifiers.Shift & keypress.modifiers)!= 0) Console.WriteLine("Shift key pressed."); while(keypress.keychar!= 'Q'); M.İLKUÇAR - imuammer@yahoo.com 33