С# найти наибольшее число

Это первый раз, когда я использую С#, поэтому я не очень хорошо знаком с ним. Я хотел бы создать простую программу, чтобы найти самое большое число, если у меня есть пользователь, вводящий 3 числа. Мне просто нужно знать, что вводить в код, потому что я не очень уверен.

Ответ 1

Используйте Math.Max:

int x = 3, y = 4, z = 5;
Console.WriteLine(Math.Max(Math.Max(x, y), z));

Ответ 2

Существует метод расширения Linq Max(). Он доступен для всех распространенных типов номеров (int, double,...). И поскольку он работает на любом классе, который реализует IEnumerable<T>, он работает во всех обычных контейнерах, таких как массивы T[], List<T>,...

Чтобы использовать его, вы должны иметь using System.Linq в начале вашего файла С# и должны ссылаться на сборку System.Core. Оба выполняются по умолчанию для новых проектов (С# 3 или новее)

int[] numbers=new int[]{1,3,2};
int maximumNumber=numbers.Max();

Вы также можете использовать Math.Max(a,b), который работает только на двух номерах. Или напишите метод самостоятельно. Это тоже не сложно.

Ответ 3

Вы можете использовать метод Math.Max для возврата максимум двух чисел, например. для int:

int maximum = Math.Max(number1, Math.Max(number2, number3))

Существует также метод Max() из LINQ, который вы можете использовать на любом IEnumerable.

Ответ 4

using System;
using System.Linq;

class Program
{
    static void Main(string[] args)
    {
        int[] numbers = { 3, 9, 5 };
        int biggestNumber = numbers.Max();
        Console.WriteLine(biggestNumber);
        Console.ReadLine();
    }
}

Ответ 5

Мне нужно было найти способ сделать это тоже, используя номера из разных мест, а не в коллекции. Я был уверен, что есть способ сделать это в С#... хотя по внешности я путаю свои языки...

В любом случае, я закончил писать несколько общих методов, чтобы сделать это...

    static T Max<T>(params T[] numberItems)
    {
        return numberItems.Max();
    }

    static T Min<T>(params T[] numberItems)
    {
        return numberItems.Min();
    }

... назовите их таким образом...

    int intTest = Max(1, 2, 3, 4);
    float floatTest = Min(0f, 255.3f, 12f, -1.2f);

Ответ 6

Если ваши номера a, b и c, то:

    int a = 1;
    int b = 2;
    int c = 3;

    int d =  a > b ? a : b;
    return c > d ? c : d;

Это может превратиться в один из вопросов "сколько разных способов сделать это"!

Ответ 7

Вот простая логика для поиска самого большого/самого большого числа

Вход: 11, 33, 1111, 4, 0 Выход: 1111

namespace PurushLogics
{
    class Purush_BiggestNumber
    {
        static void Main()
        {
            int count = 0;
            Console.WriteLine("Enter Total Number of Integers\n");
            count = int.Parse(Console.ReadLine());

            int[] numbers = new int[count];

            Console.WriteLine("Enter the numbers"); // Input 44, 55, 111, 2 Output = "111"
            for (int temp = 0; temp < count; temp++)
            {
                numbers[temp] = int.Parse(Console.ReadLine());
            }

            int largest = numbers[0];
            for (int big = 1; big < numbers.Length; big++)
            {
                if (largest < numbers[big])
                {
                    largest = numbers[big];
                }
            }
            Console.WriteLine(largest);
            Console.ReadKey();
        }
    }
}