C# Console bir sayının hanelerindeki en büyük sayıyı bulma

{{ page.title }}

Algoritma

  1. Başla
  2. a , enb = 0 , b değişkenleri al
  3. a değerini gir
  4. b = a – a / 10 * 10 işlemini yap
  5. Eğer enb < b ise enb = b
  6. Eğer a <> 0 ise 7. adıma git,değilse a = (a / 10) ve 4. adıma git
  7. Yazdır enb
  8. Bitir

Dinamik bir soru sayının kaç basamaklı bir sayı olduğu bilinmiyor ve kullanıcıdan istenilmektedir. Daha önceki çözümlerde sayıyı devamlı 10’a bölerek bunu tanımladığımız enb değişkene atarak karşılaştırma yapılmıştır. Enb değişkeni ise takas alanıdır.

En büyük basamak değeri her adımda şart uyarsa enb içine atılır.Yani her defasında enb içeriği değişebilir. Enb = 0 başlangıçta, sonra b değişkenine birler basamağı atanmaktadır.Daha sonra bu b değerini enb ile karşılaştırıyoruz.Küçükse enb = b’yi atıyoruz.Bu işlemi a = 0 olana kadar devam ettiriyoruz.Son olarak enb değeri ekrana basılmaktadır.

Kod Yapısı

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace dmg
{
class Program
{
static void Main(string[] args)
{
int a , enb , b , aci;
Console.WriteLine("Sayı giriniz = ");
a = Convert.ToInt32( Console.ReadLine() );
enb = 0;
while(a != 0)
{
b = a - a / 10 * 10;
if( enb < b )
{
enb = b;
}
a = (a / 10);
}
Console.WriteLine("En büyük = " + enb);
Console.ReadKey();
}
}
}

BOT Benson Topluluk kurucusu ve bir yazılımcı.