• 26-05-2013, 12:54:00
    #1
    Üyeliği durduruldu
    1. F(x) = 5x3 – 7x2 + 4x – 1 + 8x-1 fonksiyonunun aldığı değerleri x’in 3’ten 8’e kadar olan değerleri için 0.25’lik adımlarla hesaplayıp tablo halinde görüntüleyen bir program yazınız.

    2. Bir meteoroloji istasyonunda sabah, öğle ve akşam olmak üzere günde 3 kez sıcaklık ölçümü yapılmaktadır. Bir haftalık ölçüm yapıldığına göre ve bazı sıcaklıkların negatif olabileceğini dikkate alarak bu sıcaklıkları yan yana * işaretlerinden oluşmuş yatay çubuklar olarak ekrana çizen bir program yazınız.


    Arkadaşlar iki adet sorum var. Fakat sorular üzerinde hiç bir mantık oturtamadım sorulardan hiç birşey anlamadım acaba bana yardım eder misiniz. Teşekkürler!
  • 26-05-2013, 13:57:20
    #2
    1- bir döngü kuracaksın bu döngü 3 ten 8 e kadar 0.25 lik artışalarla sayacak ve f(x) fonksiyonunu hesaplayacak. çıkan sonucu da bir listeye atacaksın döngü bitiminde de bu listeyi ekrana yazdıracaksın.

    mantık olarak şöyle

    var x = 3;
    var liste = new List<double>();
    var tmp;
    do{
    
    tmp =  (5*x)*3 – (7*x)*2 + (4*x) – 1 +( 8*x)-1
    liste.Add(tmp);
    x+=0.25;
    }while(x!=8)
    
    foreach(var i in liste)
    Console.WriteLine(i.ToString() +"\n");
    şeklinde çalışabilir. denedim kodu direk yazdım ama mantık böyle

    2- bunu da çift boyutlu bir dizi ya da dictionary collection da tutabilirsin.
    ilk değer (key) günün ismini ve sabah-öğle-akşam ı verir, ikinci değerde (value) sıcaklığın değerini verir.
    yani yapı şöyle

    pazartesi - sabah , 20
    pazartesi - öğle, 30
    pazartesi - akşam, 15

    salı - sabah , 18
    salı - öğle, 26
    salı - akşam, 10

    ...


    tüm değerler bu collection a eklendikten sonra bir döngüsüyle koleksiyondaki tüm verileri gez ve her bir değer için ilgili öğenin valuesu kadar bir döngü oluşturup * ları yatay biçimde koy..

    kod olarak o kısım şöyle
    foreach(var item in verilerim)
    {
       Console.Write(item.Key + ": " );  
      for(int i =0;i<item.Value;i++)
      Console.Write("*");
    
       Console.WriteLine("");
    
    }
    bu şekilde halledebilirsin

    kolay gelsin