C# Console ile Adres Defteri Oluşturma(DönemÖdevi)

D4rkBB
21-04-2013, 15:45   |  #1  
OP Taze Üye
Teşekkür Sayısı: 0
1 mesaj
Kayıt Tarihi:Kayıt: Nis 2013

Merhaba arkadaşlar adres defteri lazım bana şimdi hocaya KOD 2 yi gösterdim ama kabul etmedi dedi menülü olcakmış örneğin 1'e basınca "yeni kayıt ekle" 2'ye basınca "kayıtı ara" 3'e basınca "kayıtı sil" gibi menüler olması lazımmış + adres defterini kaydederken tek bir txt dosyasına kaydetme yapacakmıs.Ben birkaç şey yaptım ama KOD 1'in içini yapamadım :( aşağıda 2 tane kod var eksiklerimi tamamlar mısınız ? Yardım eden herkeze şimdiden çok teşekkürler

KOD 1

[ Tüm kodu seç ] [ Yeni Pencerede Göster ]
  int deger = 0; Console.WriteLine("Hoşgeldiniz"); Console.WriteLine("Programa Yeni Kayıt Eklemek İçin 1 Basınız!.."); Console.WriteLine("Programın Kayıtlı Adres Defterini Aramak İçin 2 Basınız!.."); Console.WriteLine("Programdaki Kayıtlı Adres Defterini Silmek İçin 3 e Basınız!.."); deger = int.Parse(Console.ReadLine()); if (deger == 1) { Console.Clear(); Console.WriteLine("Yeni Kayıt Ekleme Sayfasına Hoşgeldiniz"); } else if (deger == 2) { Console.Clear(); Console.WriteLine("Kayıtlı Adres Defterini Arama Sayfasına Hoşgeldiniz."); } else if (deger == 3) { Console.Clear(); Console.WriteLine("Kayıtlı Adres Defteri Silindi"); } if (deger > 3) { Console.WriteLine("HATALI NUMARA GIRDINIZ "); Console.WriteLine("LUTFEN TEKRAR DENEYINIZ"); } Console.ReadKey();
KOD 2
[ Tüm kodu seç ] [ Yeni Pencerede Göster ]
List<string[]> lst = new List<string[]>();            bool ExitProgram = false;            while (!ExitProgram)            {                Console.Clear();                Console.WriteLine("Oluşturulan Toplam Adres Defteri: " + lst.Count);                Console.WriteLine("\nYeni Oluşturulan Adres Defteri: \n");                string str1, str2, str3, str4, str5, str6, str7, SoruCevabi;                Console.Write("Adınızı Giriniz: ");                string s1 = Console.ReadLine();                Console.Write("Soyadınızı Giriniz: ");                string s2 = Console.ReadLine();                Console.Write("Yaşınızı Giriniz: ");                string s3 = Console.ReadLine();                Console.Write("Yaşadığınız Ülkeyi Giriniz: ");                string s4 = Console.ReadLine();                Console.Write("Ev Adresinizi Giriniz: ");                string s5 = Console.ReadLine();                Console.Write("E-Posta Adresinizi Giriniz: ");                string s6 = Console.ReadLine();                Console.Write("Telefon Numaranızı Giriniz: ");                string s7 = Console.ReadLine();                string[] addressBook = { s1, s2, s3, s4, s5, s6, s7 };                lst.Add(addressBook);                Console.WriteLine();                for (int i = 0; i < lst.Count; i++)                {                    str1 = addressBook[0];                    str2 = addressBook[1];                    str3 = addressBook[2];                    str4 = addressBook[3];                    str5 = addressBook[4];                    str6 = addressBook[5];                    str7 = addressBook[6];                    Console.WriteLine(                        "\nOluşturulan Adres Defteri " + (i + 1) +                        ": \nAdı: {0} \nSoyadı {1} \nYaşı: {2} \nYaşadığı Ülke: {3} \nEv Adresi: {4} \nE-Posta Adresi: {5} \nTelefon Numarası: {6} ",                        str1, str2, str3, str4, str5, str6, str7);                }                Console.WriteLine(                    "\n          *** Adres Defteri Oluşturduğunuz İçin Teşekkür Ederiz *** \n                         *** Hazırlayan Can KORAY *** ");                TextWriter dosya = new StreamWriter(@"C:\Adres Defteri " + s1 + " " + s2 + ".txt");                try                {                    dosya.WriteLine("Adı: " + s1);                    dosya.WriteLine("Soyadı: " + s2);                    dosya.WriteLine("Yaşı: " + s3);                    dosya.WriteLine("Yaşadığı Ülke: " + s4);                    dosya.WriteLine("Ev Adresi: " + s5);                    dosya.WriteLine("E-Posta Adresi: " + s6);                    dosya.WriteLine("Telefon Numarası: " + s7);                }                finally                {                    dosya.Close();                }                Console.WriteLine("\nAdres Defteri C: Dizinine Kaydedildi !");                Console.Write("\nDevam Etmek İçin Herhangi Bir Tuşa Basınız \nYada Programdan Çıkmak için [Q] Tuşuna Basınız ");                string nextTask = Console.ReadLine().ToUpper();                if (nextTask == "Q")                    ExitProgram = true;                SoruCevabi = String.Empty;                Console.Write("\nYaptığım Adres Defteri Programını Beğendiniz mi ? [E/H]");                SoruCevabi = Console.ReadLine();                switch (SoruCevabi)                {                    case "E":                        Console.Write("Bu Programı Tercih Ettiğiniz İçin Teşekkür Ederim ");                        break;                    case "H":                        Console.Write("Yanıtınız İçin Teşekkür Ederim ");                        break;                    default:                        Console.Write("Geçersiz İşlem ");                        break;                }                Console.ReadKey();

hobbit1421
02-05-2013, 13:03   |  #2  
Yeni Üye
Teşekkür Sayısı: 0
35 mesaj
Kayıt Tarihi:Kayıt: Mar 2013

D4rkBB, bu program için sınıf kullanabilirsiniz.

Mesela

public class AdresDefteri

{

public string ad;

public string soyad;

public string yas;

public string ulke;

 public string evAdresi;

public string ePostaAdresi;

public string telefonNumarasi;

public void yeniAdresHazirla()

        {

Console.Write("Adınızı Giriniz: ");

this.ad = Console.ReadLine();           

Console.Write("Soyadınızı Giriniz: ");

this.soyad = Console.ReadLine();

//....

      }

}

//gibi

[ Tüm kodu seç ] [ Yeni Pencerede Göster ]
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace AdresDefteri2 { class Program { static void Main(string[] args) { //gibi //Tabiiki lst kolleksiyonuda aşağıdaki gibi değişecek List<AdresDefteri> lst = new List<AdresDefteri>(); AdresDefteri sonrakiAdres = new AdresDefteri(); //KOD 2 12 .satır şu şekilde Console.Write("Adınızı Giriniz: "); sonrakiAdres.ad = Console.ReadLine(); Console.Write("Soyadınızı Giriniz: "); sonrakiAdres.soyad = Console.ReadLine(); //v.s. //yukarıdaki kodu daha iyi yapalım //KOD 2 12. satırdan 34. satıra olan kısmı ayrıca sınıf içinde bir metot haline getirelim //mesela sonrakiAdres.yeniAdresHazirla(); lst.Add(sonrakiAdres); //gibi //değer==1 durumu ele alınmış anlaşılan //değer==2 durumu için Console.WriteLine("Kayıtlı Adres Defterini Arama Sayfasına Hoşgeldiniz."); Console.WriteLine("Bir isim giriniz..."); string isim = Console.ReadLine(); List<AdresDefteri> bulunanAdresler = new List<AdresDefteri>(); for (int i = 0; i < lst.Count; i++) { AdresDefteri siradakiAdres = lst[i]; if (siradakiAdres.ad.Contains(isim)) bulunanAdresler.Add(siradakiAdres); } //gibi yazılabilir tercih sizin //daha fazla tadını kaçırmayayım :) //Böyle kod ile uğraşmış olarak gelince insanın yardımcı olası geliyor. //İyi çalışmalar... } } }

Son Düzenleme: hobbit1421 ~ 02 Mayıs 2013 13:22