Напишите функцию, определяющую наибольшую цифру заданного числа - C#
Формулировка задачи:
Как решить эту задачу используя "%" и "/" ?
Задание:
Дано натуральное число n. Напишите функцию static int MaxDigit (int n),
определяющую наибольшую цифру данного числа (например, при вводе 179 программа
выводит 9).
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace Program
- {
- class Program
- {
- static int MaxDigit(int n)
- {
- string s = System.Convert.ToString(n);
- int[] mas = new int[s.Length];
- int count = 0;
- foreach (char ch in s)
- {
- mas[count] = int.Parse(ch.ToString());
- count++;
- }
- return mas.Max();
- }
- static void Main(string[] args)
- {
- int x;
- Console.WriteLine("Введете натуральное число");
- int n = Convert.ToInt32(Console.ReadLine());
- if (n < 0)
- {
- Console.WriteLine("Вы ввели отрицательное число");
- Console.ReadKey();
- }
- else
- {
- x = MaxDigit(n);
- Console.WriteLine("Самая большая цифра в числе {0} это {1}", n, x);
- Console.ReadKey();
- }
- }
- }
- }
Решение задачи: «Напишите функцию, определяющую наибольшую цифру заданного числа»
textual
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace ConsoleApplication176
- {
- class Program
- {
- static void Main(string[] args)
- {
- var v = 11839;
- var max = MaxDigit(v);
- Console.WriteLine(max);
- Console.ReadLine();
- }
- private static int MaxDigit(int n)
- {
- return GetDigits(n).Max();
- }
- private static IEnumerable<int> GetDigits(int v)
- {
- var count = 1 + (int) Math.Log10(v);
- for(int i=0;i<count;i++)
- yield return (v/(int)Math.Pow(10, i)) % 10;
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д