Bilgisayar-Bilişim Teknolojileri
Ana Sayfa
Bilişim Teknolojileri Forumu Son Konuları
24 Saat
Bilişim Teknolojileri - Formatör - Bilgisayar Öğretmeni Kayıt
Kayıt Olun
iletişim
iletişim
Detaylı Arama
Arama

bi yeri yanlış kurguladım ama nereyi ?

Konu, 'Programlama Dilleri' kısmında cinefil tarafından paylaşıldı.


Sayfayı Paylaş /bbnetsosyal

  1. cinefil

    cinefil Seçkin Üye Seçkin Üye

    Kayıt:
    5 Temmuz 2007
    Mesajlar:
    759
    Beğeni:
    21
    aşağıda yazdığım programı c#da metotlar öğrenmek için alıştırma yapıyordum... soru şu: 10 tane sayıyı metot kullanarak yapmak... bu soru başka bir sürü şekillerde yapılabilir ama öğrenmek açısından bu yöntemde inatlaştım.. böyle yaptığım zaman bana toplamı vereceği yerde "tane"yi veriyor yani 10u.. bunu da şöyle anladım taneye verdiğim değeri 10 değil de 5 yaptım bu sefer de ekrana 5 yazdırdı yani taneyi yazdırdı... c#a da yeni başladığım için tam emin değilim metotda böyle bi döngü olur mu diye... ekrana toplamı bi türlü yansıtamadım... kesinlikle yazım hatası yok... sadece bi yerde mantıksal bi hata var bulamadım... döngüyü yanlış da kurmuş olabilirim ama sağlamasını da yaptım ekrana toplamı vermesi gerekirken taneyi veriyor... sizce bu mantıksal hata nerde.. yardımcı olursanız sevinirim... :roll:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;

    namespace WindowsFormsApplication95
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
    int toplam=0;
    public static int islem(int sayi)
    {
    int top =+sayi;
    return top;
    }


    private void button1_Click(object sender, EventArgs e)
    {
    int tane = 10;

    int s = 0;

    for (int j = 0; j < tane; j++)
    {
    s = +1;
    int sonuc = islem(s);
    toplam =toplam+sonuc;

    }
    MessageBox.Show(toplam.ToString());

    }
    }
    }
     
  2. manhem

    manhem Seçkin Üye Seçkin Üye

    Kayıt:
    25 Aralık 2007
    Mesajlar:
    954
    Beğeni:
    1
    s=0 diyince sürekli s yi 0 lıyor en sonunda döngü 10 a kadar dönüyor fakat s hep 0 a döndüğünden 1+9 yapıyor gibi geldi s ye ilk değer sıfır vereceksen yukarda verirsen sanki düzelir
     
  3. btnotlari

    btnotlari Süper Üye Süper Üye

    Kayıt:
    29 Mayıs 2012
    Mesajlar:
    2.140
    Beğeni:
    31
    s = +1; değilde s=s+1; gibi duruyor
     
  4. refleto

    refleto Seçkin Üye Seçkin Üye

    Kayıt:
    30 Eylül 2007
    Mesajlar:
    649
    Beğeni:
    0
    Maviyi sil kırmızı yerine yaz
     
  5. azztaa

    azztaa Aktif Üye

    Kayıt:
    29 Aralık 2007
    Mesajlar:
    101
    Beğeni:
    1
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace toooo
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
    int toplam = 0;
    public static int islem(int sayi)
    {
    int top =+sayi;
    return top;
    }

    private void button1_Click(object sender, EventArgs e)
    {
    int tane = 6;

    for (int j = 1; j <= tane; j++)
    {

    int sonuc = islem(j);
    toplam += sonuc;

    }
    MessageBox.Show(toplam.ToString());


    }
    }
    }
     
  6. azztaa

    azztaa Aktif Üye

    Kayıt:
    29 Aralık 2007
    Mesajlar:
    101
    Beğeni:
    1
    s değişgenine gerek yok taneye başka değer vererek deneme yapabilirsin
     
  7. erva

    erva Site Gezgini

    Kayıt:
    20 Kasım 2007
    Mesajlar:
    71
    Beğeni:
    0
    Hocamın dediği gibi olacak, toplama kendisini ekleyerek arttıracaksınız += kullanmalısınız. Yani, s += 1; veya s= s +1; olmalı.
     
  8. azztaa

    azztaa Aktif Üye

    Kayıt:
    29 Aralık 2007
    Mesajlar:
    101
    Beğeni:
    1
    mantık aslında baştan yanlış doğrusu aşağıdaki gibi olmalı
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace toooo
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    public static int islem(int sayi)
    {
    int sonuc=0;
    for (int j = 1; j <= sayi; j++)
    {
    sonuc +=j;
    }

    return sonuc;
    }

    private void button1_Click(object sender, EventArgs e)
    {
    int tane = 10;
    int toplam=islem(tane);//sayıyı metoda gönderip toplama islemini metodda yapıyor
    MessageBox.Show(toplam.ToString());


    }
    }
    }
     
Yüklüyor...

Sayfayı Paylaş /bbnetsosyal