Şimdi Ara

C# 8'lik tabana çevirme

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir (1 Mobil) - 1 Masaüstü1 Mobil
5 sn
13
Cevap
0
Favori
1.583
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar hoca ödev verdi dizi kullanmadan kullanıcının girdiği 5 tane sayıyı 8 'lik sisteme çeviricem ama dizi kullanmadan olmuyor. Yapabilen varsa bir yardım edebilir mi ?



  • using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    int[] dizim = new int[5];
    for (int i = 0; i < dizim.Length; i++)
    {
    Console.WriteLine("{0}. sayıyı gir: ", (i + 1));
    dizim[i] = Convert.ToInt32(Console.ReadLine());
    }
    for (int i = 0; i < dizim.Length; i++)
    {
    Console.WriteLine("{0} = 8'lik sistemde {1}", dizim[i], Cevir(dizim[i], 8));
    }
    Console.ReadKey();
    }

    public static string Cevir(int sayi, int yeniTaban)
    {
    string str = "";
    int bolum = sayi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    str = reverse(str);
    return str;
    }

    public static string reverse(string s)
    {
    string reversedS = "";
    for (int i = s.Length - 1; i >= 0; i--)
    {
    reversedS += s[i];
    }
    return reversedS;
    }

    }
    }

    Bi dene, Cevir fonksiyonunu ben yazdım, hatalı olabilir. Ama ikilik sistemde denedim düzgün çalışıyordu.




  • welrocken W kullanıcısına yanıt
    Kardeşim uğraşıp yapmışsın eyvallah ama dizi kullanmadan olacakmış yoksa ben dizi kullanarak yaptım. Dizi kullanmadan yapabilirsen çok makbule geçer ben beceremedim dizi kullanmadan yapmayı
  • quote:

    Orijinalden alıntı: Sphex44

    Kardeşim uğraşıp yapmışsın eyvallah ama dizi kullanmadan olacakmış yoksa ben dizi kullanarak yaptım. Dizi kullanmadan yapabilirsen çok makbule geçer ben beceremedim dizi kullanmadan yapmayı

    O daha basit de, "dizi kullanmadan olmuyor" demişsin :).
    Buyur;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, Cevir(girdi, 8));
    }
    Console.ReadKey();
    }

    public static string Cevir(int sayi, int yeniTaban)
    {
    string str = "";
    int bolum = sayi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    str = reverse(str);
    return str;
    }

    public static string reverse(string s)
    {
    string reversedS = "";
    for (int i = s.Length - 1; i >= 0; i--)
    {
    reversedS += s[i];
    }
    return reversedS;
    }

    }
    }




  • Gökşen PASLI G kullanıcısına yanıt
    Kardeşim araştırıp bulmuşsun bir site ama burada görmediğimiz bir komut kullanmış (int.Parse) ondan dolayı kullanamayacağım genede sağol eğer benim istediğim gibi bulursan mesaj atabilirsin
  • quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    Kardeşim uğraşıp yapmışsın eyvallah ama dizi kullanmadan olacakmış yoksa ben dizi kullanarak yaptım. Dizi kullanmadan yapabilirsen çok makbule geçer ben beceremedim dizi kullanmadan yapmayı

    O daha basit de, "dizi kullanmadan olmuyor" demişsin :).
    Buyur;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, Cevir(girdi, 8));
    }
    Console.ReadKey();
    }

    public static string Cevir(int sayi, int yeniTaban)
    {
    string str = "";
    int bolum = sayi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    str = reverse(str);
    return str;
    }

    public static string reverse(string s)
    {
    string reversedS = "";
    for (int i = s.Length - 1; i >= 0; i--)
    {
    reversedS += s[i];
    }
    return reversedS;
    }

    }
    }


    Uğraştırıyorum seni ama verdiğin kod da benim öğrenmediğim komutlar var. return, public static ve reverse benim şimdiye kadar gördüğüm if while do foreach jump bunlar. Şu hafta dizilere geçtik ama sordum dizi kullanmadan yapın diyor hoca.




  • quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    Kardeşim uğraşıp yapmışsın eyvallah ama dizi kullanmadan olacakmış yoksa ben dizi kullanarak yaptım. Dizi kullanmadan yapabilirsen çok makbule geçer ben beceremedim dizi kullanmadan yapmayı

    O daha basit de, "dizi kullanmadan olmuyor" demişsin :).
    Buyur;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, Cevir(girdi, 8));
    }
    Console.ReadKey();
    }

    public static string Cevir(int sayi, int yeniTaban)
    {
    string str = "";
    int bolum = sayi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    str = reverse(str);
    return str;
    }

    public static string reverse(string s)
    {
    string reversedS = "";
    for (int i = s.Length - 1; i >= 0; i--)
    {
    reversedS += s[i];
    }
    return reversedS;
    }

    }
    }


    Uğraştırıyorum seni ama verdiğin kod da benim öğrenmediğim komutlar var. return, public static ve reverse benim şimdiye kadar gördüğüm if while do foreach jump bunlar. Şu hafta dizilere geçtik ama sordum dizi kullanmadan yapın diyor hoca.

    Geliyo bomba;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    int yeniTaban = 8;
    //Sayı tabanı çevirme;
    string str = "";
    int bolum = girdi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    string reversedS = "";
    for (int j = str.Length - 1; j >= 0; j--)
    {
    reversedS += str[j];
    }
    str = reversedS;
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, str);
    }
    Console.ReadKey();
    }

    }
    }




  • quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    Kardeşim uğraşıp yapmışsın eyvallah ama dizi kullanmadan olacakmış yoksa ben dizi kullanarak yaptım. Dizi kullanmadan yapabilirsen çok makbule geçer ben beceremedim dizi kullanmadan yapmayı

    O daha basit de, "dizi kullanmadan olmuyor" demişsin :).
    Buyur;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, Cevir(girdi, 8));
    }
    Console.ReadKey();
    }

    public static string Cevir(int sayi, int yeniTaban)
    {
    string str = "";
    int bolum = sayi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    str = reverse(str);
    return str;
    }

    public static string reverse(string s)
    {
    string reversedS = "";
    for (int i = s.Length - 1; i >= 0; i--)
    {
    reversedS += s[i];
    }
    return reversedS;
    }

    }
    }


    Uğraştırıyorum seni ama verdiğin kod da benim öğrenmediğim komutlar var. return, public static ve reverse benim şimdiye kadar gördüğüm if while do foreach jump bunlar. Şu hafta dizilere geçtik ama sordum dizi kullanmadan yapın diyor hoca.

    Geliyo bomba;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    int yeniTaban = 8;
    //Sayı tabanı çevirme;
    string str = "";
    int bolum = girdi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    string reversedS = "";
    for (int j = str.Length - 1; j >= 0; j--)
    {
    reversedS += str[j];
    }
    str = reversedS;
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, str);
    }
    Console.ReadKey();
    }

    }
    }


    Valla bomba elinde patladı o zaman
    son for un içinde reserved kullanmışsın ve str[j] bu komut dizi olmuyor mu cahilliğime ver bilmiyorum




  • quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    Kardeşim uğraşıp yapmışsın eyvallah ama dizi kullanmadan olacakmış yoksa ben dizi kullanarak yaptım. Dizi kullanmadan yapabilirsen çok makbule geçer ben beceremedim dizi kullanmadan yapmayı

    O daha basit de, "dizi kullanmadan olmuyor" demişsin :).
    Buyur;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, Cevir(girdi, 8));
    }
    Console.ReadKey();
    }

    public static string Cevir(int sayi, int yeniTaban)
    {
    string str = "";
    int bolum = sayi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    str = reverse(str);
    return str;
    }

    public static string reverse(string s)
    {
    string reversedS = "";
    for (int i = s.Length - 1; i >= 0; i--)
    {
    reversedS += s[i];
    }
    return reversedS;
    }

    }
    }


    Uğraştırıyorum seni ama verdiğin kod da benim öğrenmediğim komutlar var. return, public static ve reverse benim şimdiye kadar gördüğüm if while do foreach jump bunlar. Şu hafta dizilere geçtik ama sordum dizi kullanmadan yapın diyor hoca.

    Geliyo bomba;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    int yeniTaban = 8;
    //Sayı tabanı çevirme;
    string str = "";
    int bolum = girdi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    string reversedS = "";
    for (int j = str.Length - 1; j >= 0; j--)
    {
    reversedS += str[j];
    }
    str = reversedS;
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, str);
    }
    Console.ReadKey();
    }

    }
    }


    Valla bomba elinde patladı o zaman
    son for un içinde reserved kullanmışsın ve str[j] bu komut dizi olmuyor mu cahilliğime ver bilmiyorum

    str bir string. String de char dizisi, C#'ın hatası yani ona yapacak birşey yok :D




  • quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    Kardeşim uğraşıp yapmışsın eyvallah ama dizi kullanmadan olacakmış yoksa ben dizi kullanarak yaptım. Dizi kullanmadan yapabilirsen çok makbule geçer ben beceremedim dizi kullanmadan yapmayı

    O daha basit de, "dizi kullanmadan olmuyor" demişsin :).
    Buyur;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, Cevir(girdi, 8));
    }
    Console.ReadKey();
    }

    public static string Cevir(int sayi, int yeniTaban)
    {
    string str = "";
    int bolum = sayi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    str = reverse(str);
    return str;
    }

    public static string reverse(string s)
    {
    string reversedS = "";
    for (int i = s.Length - 1; i >= 0; i--)
    {
    reversedS += s[i];
    }
    return reversedS;
    }

    }
    }


    Uğraştırıyorum seni ama verdiğin kod da benim öğrenmediğim komutlar var. return, public static ve reverse benim şimdiye kadar gördüğüm if while do foreach jump bunlar. Şu hafta dizilere geçtik ama sordum dizi kullanmadan yapın diyor hoca.

    Geliyo bomba;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    int yeniTaban = 8;
    //Sayı tabanı çevirme;
    string str = "";
    int bolum = girdi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    string reversedS = "";
    for (int j = str.Length - 1; j >= 0; j--)
    {
    reversedS += str[j];
    }
    str = reversedS;
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, str);
    }
    Console.ReadKey();
    }

    }
    }


    Valla bomba elinde patladı o zaman
    son for un içinde reserved kullanmışsın ve str[j] bu komut dizi olmuyor mu cahilliğime ver bilmiyorum

    str bir string. String de char dizisi, C#'ın hatası yani ona yapacak birşey yok :D

    Peki reversed olmadan olmaz mı bu kod yemin ediyorum sanki windows yazıcaz sınavdan yüksek not alınca performans ödevini geçirdi hoca




  • quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    Kardeşim uğraşıp yapmışsın eyvallah ama dizi kullanmadan olacakmış yoksa ben dizi kullanarak yaptım. Dizi kullanmadan yapabilirsen çok makbule geçer ben beceremedim dizi kullanmadan yapmayı

    O daha basit de, "dizi kullanmadan olmuyor" demişsin :).
    Buyur;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, Cevir(girdi, 8));
    }
    Console.ReadKey();
    }

    public static string Cevir(int sayi, int yeniTaban)
    {
    string str = "";
    int bolum = sayi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    str = reverse(str);
    return str;
    }

    public static string reverse(string s)
    {
    string reversedS = "";
    for (int i = s.Length - 1; i >= 0; i--)
    {
    reversedS += s[i];
    }
    return reversedS;
    }

    }
    }


    Uğraştırıyorum seni ama verdiğin kod da benim öğrenmediğim komutlar var. return, public static ve reverse benim şimdiye kadar gördüğüm if while do foreach jump bunlar. Şu hafta dizilere geçtik ama sordum dizi kullanmadan yapın diyor hoca.

    Geliyo bomba;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    int yeniTaban = 8;
    //Sayı tabanı çevirme;
    string str = "";
    int bolum = girdi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    string reversedS = "";
    for (int j = str.Length - 1; j >= 0; j--)
    {
    reversedS += str[j];
    }
    str = reversedS;
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, str);
    }
    Console.ReadKey();
    }

    }
    }


    Valla bomba elinde patladı o zaman
    son for un içinde reserved kullanmışsın ve str[j] bu komut dizi olmuyor mu cahilliğime ver bilmiyorum

    str bir string. String de char dizisi, C#'ın hatası yani ona yapacak birşey yok :D

    Peki reversed olmadan olmaz mı bu kod yemin ediyorum sanki windows yazıcaz sınavdan yüksek not alınca performans ödevini geçirdi hoca

    Bu olayın (taban değiştirme) gerçek hayattaki versiyonunda da (bilmiyorum hatırlar mısın), ters çevirme var. Yani bölme yapıyorsun bilmem kaç defa, en son kalanları tersten okuyunca sayının basamağı değişmiş oluyor. Reversed olmadan sayının tersini elde edersin. Örneği 10'un 8'lik tabanda karşılığı 12. Sen bunu 21 diye alırsın. Stringi ters çevirmen şart yani. Veya hocana diyebilirsin ki hocam ters sonuç veriyor, öğrenmediğimiz için o kısmı yapamadım.




  • quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    quote:

    Orijinalden alıntı: welrocken

    quote:

    Orijinalden alıntı: Sphex44

    Kardeşim uğraşıp yapmışsın eyvallah ama dizi kullanmadan olacakmış yoksa ben dizi kullanarak yaptım. Dizi kullanmadan yapabilirsen çok makbule geçer ben beceremedim dizi kullanmadan yapmayı

    O daha basit de, "dizi kullanmadan olmuyor" demişsin :).
    Buyur;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, Cevir(girdi, 8));
    }
    Console.ReadKey();
    }

    public static string Cevir(int sayi, int yeniTaban)
    {
    string str = "";
    int bolum = sayi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    str = reverse(str);
    return str;
    }

    public static string reverse(string s)
    {
    string reversedS = "";
    for (int i = s.Length - 1; i >= 0; i--)
    {
    reversedS += s[i];
    }
    return reversedS;
    }

    }
    }


    Uğraştırıyorum seni ama verdiğin kod da benim öğrenmediğim komutlar var. return, public static ve reverse benim şimdiye kadar gördüğüm if while do foreach jump bunlar. Şu hafta dizilere geçtik ama sordum dizi kullanmadan yapın diyor hoca.

    Geliyo bomba;
    using System; 
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace SayiTabanlari
    {
    class Program
    {
    static void Main(string[] args)
    {
    for (int i = 0; i < 5; i++)
    {
    Console.WriteLine("Sayiyi giriniz: ");
    int girdi = Convert.ToInt32(Console.ReadLine());
    int yeniTaban = 8;
    //Sayı tabanı çevirme;
    string str = "";
    int bolum = girdi;
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    while (bolum >= yeniTaban)
    {
    str += bolum % yeniTaban;
    bolum = bolum / yeniTaban;
    }
    str += bolum % yeniTaban;

    string reversedS = "";
    for (int j = str.Length - 1; j >= 0; j--)
    {
    reversedS += str[j];
    }
    str = reversedS;
    Console.WriteLine("{0} = 8'lik sistemde {1}", girdi, str);
    }
    Console.ReadKey();
    }

    }
    }


    Valla bomba elinde patladı o zaman
    son for un içinde reserved kullanmışsın ve str[j] bu komut dizi olmuyor mu cahilliğime ver bilmiyorum

    str bir string. String de char dizisi, C#'ın hatası yani ona yapacak birşey yok :D

    Peki reversed olmadan olmaz mı bu kod yemin ediyorum sanki windows yazıcaz sınavdan yüksek not alınca performans ödevini geçirdi hoca

    Bu olayın (taban değiştirme) gerçek hayattaki versiyonunda da (bilmiyorum hatırlar mısın), ters çevirme var. Yani bölme yapıyorsun bilmem kaç defa, en son kalanları tersten okuyunca sayının basamağı değişmiş oluyor. Reversed olmadan sayının tersini elde edersin. Örneği 10'un 8'lik tabanda karşılığı 12. Sen bunu 21 diye alırsın. Stringi ters çevirmen şart yani. Veya hocana diyebilirsin ki hocam ters sonuç veriyor, öğrenmediğimiz için o kısmı yapamadım.

    Açıklaman iyi oldu sağol valla hocaya söylerim çok sağol kod için




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.