Kod Parçaları etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Kod Parçaları etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

2 Mayıs 2011 Pazartesi

String diziyi char dizisine çevirme, C#, String.ToCharArray()

String dizisini char dizilerine çevirmek için böyle kod kullanabilirsiniz. String.ToCharArray() bir stringi char dizisine çevir metottur.

public char[][] StringsToCharsArray(string[] isimler)
{
    char[][] char_isimler = new char[isimler.Length][];
    for (int i = 0; i < isimler.Length; i++) {
        char_isimler[i] = isimler[i].ToCharArray();
    }
    return char_isimler;
}

Yok, string dizisini tek bir char dizisine çevirmek gerekirse:

public char[] StringsToSingleCharArray(string[] isimler)
{
    return String.Join("", isimler).ToCharArray();
}

String.Join metoduna ilk giren parametre ayracdır. İki stringi birleştirende araya koyulacak string. Arada hiç bir şey olmasını istemiyorsunuzsa yazdığım gibi (“”) yazmak yeter.

5 Nisan 2011 Salı

İki for döngüsü ile yıldızlardan eşkenar dörtgen çizimi (baklava deseni), C#

Sadece iki for döngüsü ile yıldızlardan eşkenar dörtgen çiziminin programı. (Baklava deseni de denir.)
Murat Hacıömeroğlu “Java ile nesne yönelimli programlama” dersinde ödev vermişti. Kodu C#-ta yazmışım ama.
   1: void EskenarDortgen(int n)
   2: {
   3:     for (int i = 0; i < n * 2; ++i) {
   4:         int ln = i / 2;
   5:         int cs;
   6:         char ch;
   7:  
   8:         if (i % 2 == 0) { // " "
   9:             cs = Math.Abs(n / 2 - ln);
  10:             ch = ' ';
  11:         } else { // "*"
  12:             cs = (Math.Abs(Math.Abs(n / 2 - ln) - n / 2)) * 2 + 1;
  13:             ch = '*';
  14:         }
  15:         for (int j = 0; j < cs; ++j) Console.Write(ch);
  16:         if (i % 2 != 0) Console.WriteLine();
  17:     }
  18: }
Böyle güzel çıktı veriyor:
romb9out_thumb_thumb
Not: Girilen satır sayı (yukarıda 9 girilmiş) çift olursa, verilen yıldız baklavasının ucu ısırlmış olur. Çift satırlı romb çizebilen olursa, haber versin. (not defterinde, eşaralıklı yıldızlarla.) :).