Yeni
Yükleniyor..

Who Am I

Merhaba Hoşgeldiniz ben İbrahim Gültepe Yazılım ve Siber Güvenlik uzmanıyım bu bloğu açmamdaki neden C# eğitimi ve güncel olan virüs donanım sorunlarını çözmek ve sizinde yapabileceğiniz hack çalışmalarını öğretmek.

C# 5 Soru-Cevap

1 ) Aynı firmada çalışan (Ahmet ve Hasan) iki işçiden birincisinin (Ahmet’in) aylık ücreti bir ay %50 artmakta, sonraki ay %25 azalmaktadır. Diğerinin (Hasan’ın) ise ücreti her ay %25 artmaktadır. Her ikisinin de yılbaşındaki başlangıç ücretleri ve hesaplanacak ay bilgisi klavyeden girildikten sonra ay ay ücretlerinin ne olacağını ve en sonunda hangi işçinin daha fazla (veya eşit) ücret alacağını hesaplayan  programı yazınız?

Sorunun Çözüm Kodları : 


double ahmetMaas = 0, hasanMaas = 0, ekUcret = 0;
           int kacAy = 0;
           Console.Write(Ahmet'in Başlangıç Maaşı : );
           ahmetMaas = Convert.ToDouble(Console.ReadLine());
           Console.Write(Hasan'ın Başlangıç Maaşı : );
           hasanMaas = Convert.ToDouble(Console.ReadLine());
           Console.Write(Kaç Ay Sürecek : );
           kacAy = Convert.ToInt32(Console.ReadLine());
           for (int i = 0; i < kacAy; i++)
           {
  
               if (i % 2 == 0)
               {
                   //ahmetin para artacak
                   ekUcret = ahmetMaas * 0.5 ;
                   ahmetMaas += ekUcret;
  
               }
               else {
                   //ahmetin para azalacak
                   ekUcret = ahmetMaas * 0.25;
                   ahmetMaas -= ekUcret;
  
               }
  
  
               //hasanınki her türlü artacak
  
               ekUcret = hasanMaas * 0.25;
               hasanMaas += ekUcret;
  
               Console.WriteLine({0}. Ayın Sonunda Ahmetin Maaşı : {1}, Hasanın Maaşı {2},i+1,ahmetMaas,hasanMaas);
           }
           if(ahmetMaas>hasanMaas) Console.WriteLine(Sonuç Olarak {0} Ay Sonunda Ahmet, Hasandan Daha Fazla Maaş Almaktadır.,kacAy);
           else if (ahmetMaas == hasanMaas) Console.WriteLine(Sonuç Olarak {0} Ay Sonunda Ahmet ve Hasandan Eşit Fazla Maaş Almaktadır., kacAy);
           else Console.WriteLine(Sonuç Olarak {0} Ay Sonunda Hasan, Ahmetten Daha Fazla Maaş Almaktadır., kacAy);








2-) Toplama işlemini öğretmeye çalışan bir oyun programı yazılacaktır. Oyun başladığı zaman rastgele 2 tane 1-100 arasında sayı tutulacak, tutulan sayılar ekrana gösterilecek ve kullanıcıya bu sayıların toplamı nedir diye sorulacaktır. Eğer kullanıcı doğru cevap verirse “Tebrikler Bildiniz” değil ise “Üzgünüm Bilemediniz” diye mesaj verecektir. Her cevaptan sonra “Tekrar Oynamak istiyormusunuz(e/E)?” şeklinde bir soru sorulacak ve eğer kullanıcı “e” veya “E” ile karşılık verirse oyun tekrar başlayacaktır. Kullanıcının puanı her doğru cevap için 5 puan artacak, her yanlış cevap için ise 2 puan azalacaktır. Oyun sonlandığında kullanıcının verdiği doğru cevap sayısı, yanlış cevap sayısı ve puanı ekranda listelenmelidir. Bu işlemleri yapan programın kodlarını yazınız ?

Sorunun Çözüm Kodları ;

Random rnd = new Random();
      int ilkSayi = 0, ikinciSayi = 0, toplamPuan = 0, sayilarinToplami = 0, girilenCevap = 0, dogruCevapSayisi = 0, yanlisCevapSayisi=0;
      char devam;
      do
      {
  
          ilkSayi = rnd.Next(1, 100);
          ikinciSayi = rnd.Next(1, 100);
          sayilarinToplami = ilkSayi + ikinciSayi;
          Console.WriteLine("{0} + {1} = ?",ilkSayi,ikinciSayi);
          Console.Write("Cevabınız : ");
          girilenCevap = Convert.ToInt32(Console.ReadLine());
          if (girilenCevap == sayilarinToplami)
          {
              Console.WriteLine("Tebrikler Bildiniz");
              toplamPuan += 5;
              dogruCevapSayisi += 1;
          }
          else {
              Console.WriteLine("Üzgünüm Bilemediniz");
              toplamPuan -= 2;
              yanlisCevapSayisi += 1;
          }
          Console.Write("Tekrar Oynamak istiyormusunuz(e/E)?");
          devam = Convert.ToChar(Console.ReadLine());
            
      } while (devam=='E' || devam=='e');
  
      Console.WriteLine("Toplam Doğru Cevap Sayınız {0}, Yanlış Cevap Sayınız {1}, Toplamda Almış Olduğunuz Puan {2}",dogruCevapSayisi,yanlisCevapSayisi,toplamPuan);




3 ) Bir otoparka park eden taksinin 1 saati 5TL, minibüsün 1 saati 6TL, ticari aracın 1 saati 6.5TL dir. Taksi 1 saatten sonraki her saat başı için %20 daha fazla, minibüs 1 saatten sonraki her saat başı için toplamda %21.5 ve ticari araç 1 saatten sonraki her saat başı için toplamda %25 daha fazla ödeme yapmaktadır. Buna göre klavyeden girilen araba tipi ve kalınan saat bilgisi girildikten sonra ekrana ödenecek otopark ücretini hesaplayan programın kodlarını yazınız.

Sorunun Çözüm Kodları :

double odenecekTutar = 0;
            int kalinanSure = 0, aracTipi = 0;
            Console.WriteLine("Araç Tipleri Taksi : 1, Minübüs : 2, Ticari : 3");
            Console.Write("Lütfen Araç Tipini Giriniz : ");
            aracTipi = Convert.ToInt32(Console.ReadLine());
            Console.Write("Kalınan Süreyi Giriniz : ");
            kalinanSure = Convert.ToInt32(Console.ReadLine());
            if (kalinanSure > 1)
            {
                for (int i = 1; i <= kalinanSure; i++)
                {
                    if (i == 1) {
                        if (aracTipi == 1) { odenecekTutar = i * 5; }
                        else if (aracTipi == 2) { odenecekTutar = i * 6; }
                        else if (aracTipi == 3) { odenecekTutar = i * 6.5; }
                    }
                    else {
  
                        kalinanSure -= 1;
                        if (aracTipi == 1) { odenecekTutar+= kalinanSure * 5 * 1.20; }
                        else if (aracTipi == 2) { odenecekTutar+= kalinanSure * 6 * 1.215; }
                        else if (aracTipi == 3) { odenecekTutar+= kalinanSure * 6.5 * 1.25; }
                    }
                }
  
  
            }
  
  
            else {
  
                if (aracTipi == 1) { odenecekTutar = kalinanSure * 5; }
                else if (aracTipi == 2) { odenecekTutar = kalinanSure * 6; }
                else if (aracTipi == 3) { odenecekTutar = kalinanSure * 6.5; }
                  
              
            }
            Console.WriteLine("Ödenecek Tutar : {0} TL",odenecekTutar);


4 ) Meteoroloji merkezi için bir program tasarlanılması istenilmiştir. Programın çalışma şekli ise şöyle olmalıdır:
a. İlk önce hangi ay için sıcaklık bilgisi girileceği kullanıcıya sorulacaktır.
b. Girilen ay bilgisine uygun olarak o ayda kaç tane gün var ise kullanıcıdan gün sayısı kadar sıcaklık bilgisi girilmesi istenilecektir(ġubat ayı için gün sayısını 28 alınız).
c. Sıcaklık veri girişi bittikten sonra o ayın sıcaklık ortalaması ve en düşük sıcaklık bilgisi ekrana yazdırılacaktır. Bu işlemden sonra program sonlanacaktır.
Örnek Çıktı: Şubat Ayına ait Ortalama Sıcaklık=15,6 derecedir ve En düşük sıcaklık 6.Gün=10,1 derecedir.
Sorunun Çözüm Kodu:

string hangiAy;
      int gunSayisi = 30, enDusukGun = 0;
      double gunlukSicaklik = 0, ayToplami = 0, ayOrtalamasi = 0, enDusuk = 999999;
      Console.Write("Hangi Ay Bilgisi Girilecek : ");
      hangiAy = Console.ReadLine();
      if (hangiAy == "şubat" || hangiAy == "Şubat") {gunSayisi = 28;}
            
          for (int i = 0; i < gunSayisi; i++)
          {
              Console.Write("{0}. Güne Ait Sıcaklık Değeri : ",i+1);
              gunlukSicaklik = Convert.ToDouble(Console.ReadLine());
              if (gunlukSicaklik < enDusuk) { enDusuk = gunlukSicaklik; enDusukGun = i + 1; }
              ayToplami += gunlukSicaklik;
  
          }
          ayOrtalamasi = ayToplami / gunSayisi;
          Console.WriteLine("{0} Ayına Ait Sıcaklık Ortalaması {1} Derecedir. En Düşük Sıcaklık {2}. Gün = {3} Derecedir.",hangiAy,ayOrtalamasi,enDusukGun,enDusuk);



5) Klavyeden girilen bir cümleyi şifreleyen program yazılacaktır. Kullanıcı bir cümle girdikten sonra enter tuşuna bastıktan sonra ilk önce girilen cümle tekrar ekrana yazdırılacak sonra ise cümle tersten şifreli olarak ekrana yazdırılacaktır. Tersten ekrana yazdırılır iken a yerine ?, e yerine *, i veya ı yerine =, ö veya o yerine & ve ü veya u yerine + karakterleri kullanılacaktır. Cümlede kaç tane karakter şifrelendi, kaç tanesi şifrelenmedi bilgisi de ekrana yazdırılacaktır. 

Sorunun Çözüm Kodu : 

string cumle; char harf;
            Console.Write("Cümleyi Giriniz : ");
            cumle = Console.ReadLine();
            Console.WriteLine("Girilen Cümele : {0}", cumle);
            Console.Write("Şifreli Hali : ");
            int sifreli=0;
            for (int i = cumle.Length - 1; i >= 0; i--)
            {
                harf = cumle[i];
                if (harf == 'a') { harf = '?'; sifreli++; }
                if (harf == 'e') {harf = '*';sifreli++; }
                if (harf == 'ı' || harf == 'i') {harf = '=';sifreli++; }
                if (harf == 'ö' || harf == 'o') {harf = '&';sifreli++; }
                if (harf == 'u' || harf == 'ü') {harf = '+';sifreli++; }
                if (i == 0) Console.WriteLine("{0}", harf);
                else Console.Write("{0}", harf);
            }
            Console.WriteLine("Toplam {0} tane harf şifrelendi {1} tanesi şifrelenmedi", sifreli, cumle.Length - sifreli);
            Console.ReadKey();


    Blogger Yorumları
    Facebook Yorumları

0 yorum :

Yorum Gönder

Ziyaretçi Sayısı

15.08.2015 den itibaren Toplam 1.982.258 Kişi Tarafından Ziyaret Edildi