Umut D.

Umut D.

Powered by Jekyll & Github

  • Coding-Challenges

  • Soru

    Programcıya bir hedef sayı (girilenSayi) veriliyor. Ardından, girilen sayıya kadar döngüsel olarak devam ederek, her bir satırda sayı artışıyla başlayan bir yapı oluşturması isteniyor.

    Örnek

    Girdi Çıktı
    girilenSayi: 3 123
    231
    312
    girilenSayi: 5 12345
    23451
    34512
    45123
    51234

    Çözüm - C#

    using System;
    using System.Collections.Generic;
    
    class Program
    {
        public static void Main()
        {
            int girilenSayi = 5;
    
            // Girilen sayı 0 ise boş yazdır
            if (girilenSayi.ToString().Length == 0)
                Console.WriteLine("Boş");
    
            // Girilen sayıya kadar olan sayıları diziye ekle
            List<int> sayilar = new List<int>();
            for (int i = 1; i <= girilenSayi; i++)
                sayilar.Add(i);
    
            string sonuc = "";
            for (int i = 0; i < girilenSayi; i++)
            {
                // Dizideki her bir sayıyı sonuca ekle
                foreach (int sayi in sayilar)
                    sonuc += sayi.ToString();
    
                // Gerekli eklemeyi diziye ekleyerek, 0. indisteki değeri kaldır
                sayilar.Add(sayilar[0]);
                sayilar.RemoveAt(0);
                // Her bir satır sonunda boşluk ekle
                sonuc += "\n";
            }
    
            // En sondaki değeri kaldır
            sonuc = sonuc.Remove(sonuc.Length - 1, 1);
            Console.WriteLine(sonuc);
    
            Console.Read();
        }
    }