Stajyer Alım Mülakatlarında Bir Şirket Tarafından Sorulmuş 2 Soru ?

Herkese Selamlar ! Bir önce ki blog yazılarımın tamamı uçmadan öncede yapmıştım bunu. Şirket ismi vermeden bazen işe giren adaylardan bazen ise o mülakatı yapan kişilerden doğrudan duymuş olduğum soruları buradan cevaplamaya çalışıyorum. Sizlerden ricam ise bu yazıyı okurken soruları ilk aşamada kendiniz cevaplamaya kalkın lütfen. Bu sayede bakalım o firmada staja kabul edilecek misiniz kendinizi denemiş olursunuz. Başlıktan da anlaşılacağı gibi stajyer alım mülakatı olduğu için sorular çok zor değil ama yine de fena değil. İlk sorumuz ise ;

Elimizde 0 ile 100 arasında sayılar var. Bu sayılardan 3’e bölünen bir sayı ile karşılaşıldığında 3’ün katı yerine ‘*’, 5′ e bölünen bir sayı ile karşılaşıldığında 5’in katı yerine ‘?’ , hem 3’e hem de 5’e bölünebilen bir sayı ile karşılaştığımızda ise yani sayı 15’in katı olduğunda ise o zaman 15’in katı yerine ‘!’ karakteri çıkmasını istiyoruz. Aslında son şarta kadar çok kolay gibi gözüken bir soru son şart satırında ise bir parça operatörlere ve onların çalışma prensibine ne kadar hakimsiniz bu test etmekte. Cevap ise aşağıda ! Söylediğim gibi ilk önce kendiniz deneyiniz lütfen…

 

namespace interviewQuestions1
{
   class Program
    {
     static void Main(string[] args)
      {
       for (int i = 1; i <= 100; i++)
        {
         if ((i % 3 == 0) && (i % 5 != 0) && (i % 15 != 0))
          {
             Console.WriteLine("*");
          }
         else if ((i % 5 == 0) && (i % 3 != 0) && (i % 15 != 0))
          {
           Console.WriteLine("?");
          }
         else if (i % 15 == 0)
          {
           Console.WriteLine("!");
          }
         else
          {
           Console.WriteLine(i);
          }
       }
       Console.ReadLine();
      }
   }
 }


Bir diğer soru ise tam olarak şu;
(Bu soru ile bu arada daha öncede karşılaşmıştım son zamanlarda baya popüler olmaya başladı galiba) Elimizde 0 ile 100 arasında bir grup sayı var. Rastgele içlerinden bir tanesi kayboluyor. Bu sayı hangisi onu bulmamız lazım. Soru içerisinde liste içinde yer alan kayıp sayıyı bizim kaybetmemiz gerek bu arada. Kodları bir paylaşalım sonradan açıklayalım bakalım.

 

namespace InterviewQuestions2
{
    class Program
    {
        static void Main(string[] args)
        {
            Random rnd = new Random();
            int missingNumber=rnd.Next(0, 100);
            List<int> allNumbers = new List<int>();
            List<int> allNumbers2 = new List<int>();
            int firstAddtions = 0,secondAdditions=0;
            for (int i = 0; i < 100; i++)
            {
                if (i == missingNumber)
                    continue;

                allNumbers.Add(i);
                firstAddtions += i;
            }
            //Console.WriteLine(firstAddtions);

            for (int i = 0; i < 100; i++)
            {

                allNumbers2.Add(i);
                secondAdditions += i;    
            }
            //Console.WriteLine(secondAdditions);
            Console.WriteLine("Missing Number="+(secondAdditions-firstAddtions));
            Console.ReadLine();
        }
    }
}

Arkadaşlar yukarıda 2 farklı liste var elimizde. “allNumbers” isimli listede eksik olan sayının bulunduğu sayı olacak diğer listede ise “allNumbers2” isimli listede ise tüm sayılar yer almakta. Problemi ise şu şekilde çözdüm. İlk liste içerisinde ki tüm sayıları topladım ardından ikinci liste içerisinde ki tüm sayıları topladım ve arada ki farkı alınca hangi sayı eksik ise o ortaya çıktı. Çok zor değilmiş demi ! Bence gayet yapılabilir. Umarım sizler için faydalı bir yazı olmuştur. Elinizde bu tarz sorular var ise lütfen benimle paylaşın ! Cevaplamaya çalışalım. Yazımı okuduğunuz için çok teşekkür ederim sizlere. Bu yazıyı post ederken dinlediğim şarkı ise: Chet Faker – No Diggity Başka yazılarda görüşmek üzere hoşça kalın….

leave your comment

EnglishGermanTurkish