Etiket arşivi: Nesne Tabanlı Programlama

C# ile Dosyalama ve Şifreleme Örneği

Uzun zamandır programlama örneği vermiyordum. Bu yazımızın konusu yarın yapacağım sınav öncesinde öğrencilerime pratik olsun diye hazırlattığım bir uygulama.

Soru:Bir Metin (text) dosyası içerisine yazılanları şifreli olarak saklayacak ve o metin dosyası, yazacağımız program dışında başka herhangi bir metin editörü ile açıldığında şifreli olarak görüntülenecektir. Yazının şifrelenmemiş halini ancak kendi yazdığımız program ile görüntüleyebileceğiz.

İşlem Basamakları:

1)Form üzerine 1 Label, 1 TextBox, 2 Button, 1 OpenFileDialog ve son olarak da 1 SaveFileDialog elemanlarını aşağıdaki şekildeki gibi form üzerine yerleştiriyoruz.

2)Nesnelere aşağıdaki özellikleri tanımlıyoruz;

  • Label1.Text = “Metin İçeriği:”
  • button1.Text = “Kaydet”
  • button2.Text = “Aç”
  • saveFileDialog1.Filter = “Metin Dosyası (*.txt)|*.txt”
  • openFileDialog1.Filter = “Metin Dosyası (*.txt)|*.txt”

3) sifrele ve sifreCoz isimli 2 adet metot oluşturuyoruz.

[sourcecode language=”csharp”]private string sifrele(string icerik)
{
string sifrelenmisi = "";
foreach (char harf in icerik)
{
sifrelenmisi += Convert.ToChar(harf+2);
}
return sifrelenmisi;
}[/sourcecode]

 

[sourcecode language=”csharp”]private string sifreCoz(string sifreliIcerik)
{
string cozulmusIcerik = "";
foreach (char harf in sifreliIcerik)
{
cozulmusIcerik += Convert.ToChar(harf – 2);
}
return cozulmusIcerik;
}[/sourcecode]

4) button1 tıklandığında;

[sourcecode language=”csharp”]saveFileDialog1.Filter = "Metin Dosyası (*.txt)|*.txt";
saveFileDialog1.ShowDialog();
string yol=saveFileDialog1.FileName;
File.CreateText(yol).Close();
string icerik = textBox1.Text;
string yeniIcerik = sifrele(icerik);
File.WriteAllText(yol, yeniIcerik);
MessageBox.Show("Kayıt İşlemi Gerçekleştirildi");
textBox1.Clear();[/sourcecode]

  5) button2 tıklandığında;

[sourcecode language=”csharp”]openFileDialog1.ShowDialog();
string yol = openFileDialog1.FileName;
string sifreliIcerik = File.ReadAllText(yol);
string yeniIcerik = sifreCoz(sifreliIcerik);
textBox1.Text = yeniIcerik;[/sourcecode]

komutlarını yazıyoruz.

Şifreleme işleminde parametre olarak gönderilen metinsel (string) ifadeyi, karakter karakter okutup, ilgili karakteri, kendisinden 2 karakter sonra gelen karakter ile değiştirme yöntemiyle metnimizi şifreliyoruz. (Örneğin a=c,b=d,c=e…)

Şifre çözme işleminde de şifreleme işleminde yaptığımız işlemin tam tersini yapıp, gelen karakteri, kendisinden 2 karakter önce gelen karakter ile değiştirerek kullanıyoruz.

Programa ait çalışma anı görselleri için aşağıdaki ekran görüntülerini inceleyebilirsiniz.

Nesne Tabanlı Programlama Dersi 1.Dönem 3.Sınavı Soru ve Cevapları

Bugün TL-12/A sınıfına gerçekleştirmiş olduğum Nesne Tabanlı Programlama Dersi 1.Dönem 3.Sınavı Soru ve Cevaplarını bu yazının sonundaki linkten indirebilirsiniz.

SORU-1) Aşağıdaki formu tasarlayıp, textbox’lara girilen sayıların toplamını, ortalamasını, en büyük ve en küçük olanlarını buldurup label içerisine yazdıran programı aşağıdaki adımları göz önünde bulundurarak tasarlayınız.

SORU-2)Aşağıdaki fonksiyonun sonucunu ilk 50 eleman için hesaplayıp CONSOLE ekranına yazdıran programın kodunu yazınız.

SORU-3) Bir bankanın kredi bölümünde çalışanların işini kolaylaştıracak bir uygulama yazın. Uygulama kullanıcıdan çekilmek istenen kredi miktarını, faiz oranı ve vadeyi alıp müşterinin ödeyeceği faiz miktarını hesaplayacaktır. Faiz miktarını mesaj kutusu yardımıyla gösteren programı hazırlayınız.Faizi hesaplamak için kullanacağımız formül:
Faiz = ( Ana Para x Faiz Oranı x Gün ) / 360

Programı ve sınav evraklarını indirmek için http://www.rtyucel.com/site/notlarim/NTP_TL_12_A.rar adresini ziyaret ediniz.

C# Örnekleri -2

Daha önce şurada dizilerle ilgili ve şurada da başlangıç seviyesi C# program örnekleri vermiştim.

Geçtiğimiz haftalar da öğrencilerime ödev olarak vermiş olduğum sorulardan sizlerin de faydalanabileceğini düşündüklerimi burada, onların anlatımıyla yayınlamaya başlıyorum.

İlk örneğimiz TL-11-A sınıfından Samet BAL’ın hazırlamış olduğu ” KENAR UZUNLUKLARI GİRİLEN ÜÇGENİN, ÇEŞİTKENAR MI, İKİZKENAR MI, EŞKENAR MI YOKSA DİK ÜÇGEN Mİ OLDUĞUNU BULAN  PROGRAM

Buyurun Samet’in dilinden programın kodları ve çalışması;
C# Örnekleri -2 yazısına devam et