Merhaba arkadaşlar, giriş seviyesinde dört işlem yapan bir metot tanımladım fakat çalıştıramıyorum. Hata veriyor. Yazdığım kod aşağıdaki gibidir.

static void Main(string[] args)
    {
        islem(5, 6);
    }

    /// <summary>
    /// Bu metot 4 işlem yapar.
    /// </summary>
    static int islem(int x, int y)
    {
        int  toplam = 0, carpma = 1, bolme = 1, cikar = 0;
        int x, y;

        Console.Write("Birinci sayıyı giriniz: ");
        int x = Convert.ToInt32(Console.ReadLine());
        Console.Write("İkinci sayıyı giriniz: ");
        int y = Convert.ToInt32(Console.ReadLine());

        return toplam = x + y;
        return cikar = x - y;
        return carpma = x * y;
        return bolme = x / y;

        Console.WriteLine("Toplama: " + toplam);
        Console.WriteLine("Çıkarma: " + cikar);
        Console.WriteLine("Çarpma: " + carpma);
        Console.WriteLine("Bölme: " + bolme);

    }

int x ve int y satırında hata alıyorum. Mesaj şu aşağıdaki şekilde. x ve y 'yi tanımladığım zaman da hata alıyorum.

  • A local variable named 'x' cannot be declared in this scope because it would give a different meaning to 'x', which is already used in a 'parent or current' scope to denote something else

Teşekkürler.

soruldu: 02 Oca '15, 16:21

ernuynk's gravatar image

ernuynk
366710
cevap kabul oranı: 0%

değiştirildi: 02 Oca '15, 16:22


int x, y;

        Console.Write("Birinci sayıyı giriniz: ");
        int x = Convert.ToInt32(Console.ReadLine());
        Console.Write("İkinci sayıyı giriniz: ");
        int y = Convert.ToInt32(Console.ReadLine());

aynı değişkenden birden fazla tanımlamısınız.

yukarıdaki int x, y tanımlamayı kaldırınız yada alttaki int değişken tipini kaldırınız.

permanent link

cevaplandı: 02 Oca '15, 16:24

Turgay%20Can's gravatar image

Turgay Can
8.3k63798
cevap kabul oranı: 18%

1

Ek olarak console writeline kısmının işlevselliği yok return olduğu için derleyici o kod blogunu okumaz hatta Java'da return ifadesinden sonra böyle bir kod kısmı hata çıkarır dallanma olmadığı için remove olmasını ister derleyici C#'ta öyle olduğunu tahmin ediyorum yani üstteki hatayı düzeltsen yine hata alırsın

(02 Oca '15, 16:39) serefAltindal serefAltindal's gravatar image

Hata düzeldi. Ek olarak evet derleyici return den sonrasını okumuyor hatta sadece toplama sonucu ekranda yazıyor.

(02 Oca '15, 16:54) ernuynk ernuynk's gravatar image

toplama sonucunda return etmişsin.

içerideki return leri kaldırıp, metodu void yapmalısın değer dönmeyeceksen.

static int islem(int x, int y)

--------- şeklinde ->

static void islem(int x, int y)

(02 Oca '15, 16:58) Turgay Can Turgay%20Can's gravatar image

-- [code]

static int islem(int x, char islem, int y) { if(islem == '+') return (x + y); else if(islem == '-') return (x - y); else if(islem == '*') return (x * y); else if(islem == '/') if(y != 0) return = x / y; else return 0; else return 0; }

[/code]

Kullanım:

Console.WriteLine(islem(5, '*', 5));

permanent link

cevaplandı: 03 Oca '15, 03:28

lavara123's gravatar image

lavara123
261
cevap kabul oranı: 0%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×238
×14
×7
×5

Soruldu: 02 Oca '15, 16:21

Görüntüleme: 774 kez

Son güncelleme: 03 Oca '15, 03:28

powered by BitNami OSQA