Как найти минимум в таблице с

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

В данной статье вы узнаете, как написать реализацию программы на языке C++, которая находит максимальный и минимальный элемент в массиве и выводит на экран. А узнать множество решений других задач можно в разделе с решениями задач по программированию на языке C++.

Что такое максимальный и минимальный элемент массива

Для начала поймем, что же такое максимальный или минимальный элемент в массиве? Всё просто, максимальный элемент массива — это элемент, который имеет самое большое числовое значение, а минимальный элемент массива — это элемент, имеющий самое маленькое значение.

Пример: в массиве, состоящем из таких элементов: 3, 1, 0, -4, 16, 2 — максимальный элемент равен 16, т.к. это число больше других, а минимальный элемент равен -4, т.к. оно меньше остальных.

Поняв это, можно приступить к решению задачи.

Алгоритм решения задачи

— Инициализация массива, переменных, хранящих минимальное и максимальное значение.

— Заполнение массива случайными числами при помощи цикла и функции, возвращающей случайные числа.

— Вывод массива.

— Сравнение каждого элемента массива: Если элемент больше переменной с максимальным значением, то значение записывается в переменную; Если элемент меньше переменной с минимальным значением, то значение записывается в переменную.

— Вывод переменных с максимальным и минимальным элементом.

Алгоритм решения на языке C++

Для начала нужно подключить заголовок ввода/вывода <iostream>, заголовок стандартных функций <cstdlib> в ней имеется функция rand(), которая позволит заполнить массив случайными числами. Заполнение каждого элемента массива вручную требует времени, его можно сэкономить автоматизировав процесс. Подключаем пространство имён std. Создаём константу N, она будет определять количество элементов в массиве.

#include <iostream> 
#include <cstdlib> 

using namespace std; //Пространство имён std

const int N = 10;//Количество элементов в массиве

int main() 
{

	return 0;
}

В теле функции main() инициализируем массив целых чисел из N лементов, целочисленные переменные max и min, они будут хранить значение максимального и минимального элементов массива соответственно.

	int mass[N], max, min;

Теперь заполним массив случайными числами. Для этого используем цикл от 0 до N (не включительно), который пройдется по каждому элементу массива и поместит случайное значение от 0 до 98. Это можно сделать, использовав функцию rand(), которая возвращает случайное число. Поделить возвращаемое значение на 99 и внести в ячейку остаток от деления, таким образом значение ячейки будет иметь значение в диапазоне от 0 до 99(не включая 99, т.к. остаток от деления не может быть кратным делителю).  При этом выведем значения элементов массива на экран.

	cout << "Элементы: |";
	for(int r = 0; r<N; r++) // Цикл от 0 до N
	{
		mass[r] = rand()%99; // Заполнение случайным числом
		cout << mass[r] << "|"; // Вывод значения
	}
	cout << endl;

В результате программа выведет на экран значения элементов массива, разделенное вертикальными чертами:

Элементы: |28|43|72|79|23|70|55|39|69|1|

Обратите внимание! Если вы программируете под Windows и у Вас не отображаются русские символы в консоли, то советую Вам почитать о решении этой проблемы в статье Русские символы(буквы) при вводе/выводе в консоль на C++.

Далее определим максимальный и минимальный элемент в массиве, для этого вновь пройдемся по массиву циклом. При помощи условия определим максимальный и минимальный элемент массива.

Перед циклом нужно будет занести первый элемент массива в переменные min и max, они будут хранить минимальное и максимальное значение изначально, а во время цикла поменяют его, если найдётся значение меньше для min или больше для max.

	max = mass[0];//Помещаем значения 1-го элемента
	min = mass[0];//массива в переменные
	for(int r = 1; r<N; r++)
	{
		if(max < mass[r]) max = mass[r]; //если значение элемента больше значения переменной max, то записываем это значение в переменную
		if(min > mass[r]) min = mass[r]; //аналогично и для min
	}

После цикла выведем значения min и max.

	cout << "Min: " << min << endl;
	cout << "Max: " << max << endl;

После компиляции и запуска прогамма выводит следующее

Элементы: |28|43|72|79|23|70|55|39|69|1|
Min: 1
Max: 79

Пробегаемся по элементам массива глазами и видим, что минимальное значение — 1, а максимальное — 79. Переменные min и max имеют эти же значения соответственно, следовательно алгоритм работает.

Весь листинг программы на C++

#include <iostream>
#include <cstdlib>

using namespace std;

const int N = 10;

int main() 
{
	int mass[N], max, min;

	cout << "Элементы: |";
	for(int r = 0; r<N; r++)
	{
		mass[r] = rand()%99;
		cout << mass[r] << "|";
	}
	cout << endl;
	
	max = mass[0];
	min = mass[0];
	for(int r = 1; r<N; r++)
	{
		if(max < mass[r]) max = mass[r];
		if(min > mass[r]) min = mass[r];
	}
	cout << "Min: " << min << endl;
	cout << "Max: " << max << endl;
	
	return 0;
}

Есть массив объектов класса A.

class A
{
    pubic double value;
}

Как с помощью LINQ найти элемент с минимальным значением value, а не само это значение, как произошло бы в случае arr.Min(a => a.value)?

default locale's user avatar

default locale

18.4k4 золотых знака31 серебряный знак45 бронзовых знаков

задан 8 мар 2012 в 17:33

Nelson Tatius's user avatar

Nelson TatiusNelson Tatius

2,7383 золотых знака30 серебряных знаков45 бронзовых знаков

1

Не встречал конструкции, которая выполняла бы это действие за один Linq-запрос. А за два сделать довольно просто:

double min = arr.Min(a => a.value);
var result = arr.FirstOrDefault(a => a.Value == min);

2 вариант: Реализовать в Вашем классе интерфейс IComparable<T>:

class A : IComparable<A>
{
    public double value;

    public int CompareTo(A other)
    {
        return value.CompareTo(other.value);
    }
}

Тогда метод Min() можно вызвать так, и он вернёт объект класса A с минимальным значением поля value:

var result = arr.Min();

ответ дан 8 мар 2012 в 17:38

Shad's user avatar

1

С помощью Linq это возможно, но неэффективно. Более простым решением будет написать соответствующий метод; к примеру так:

public static TItem MinByKey<TItem, TKey>(
    this IEnumerable<TItem> items, Func<TItem, TKey> keySelector)
{
    var comparer = Comparer<TKey>.Default;

    var enumerator = items.GetEnumerator();
    if (!enumerator.MoveNext())
        throw new InvalidOperationException("Collection is empty.");

    TItem minItem = enumerator.Current;
    TKey minKey = keySelector(minItem);

    while (enumerator.MoveNext())
    {
        TKey key = keySelector(enumerator.Current);
        if (comparer.Compare(key, minKey) < 0)
        {
            minItem = enumerator.Current;
            minKey = key;
        }
    }

    return minItem;
}

Тогда задача сведётся к вызову

arr.MinByKey(a => a.value);

ответ дан 8 мар 2012 в 17:54

AlexeyM's user avatar

AlexeyMAlexeyM

1,97811 серебряных знаков20 бронзовых знаков

2

Раз уж мы подняли этот вопрос: самый простой метод — не строить собственный велосипед, а использовать готовое решение. Например, можно установить пакет MoreLinq через nuget и использовать просто

using MoreLinq;
A best = arr.MinBy(a => a.value);

ответ дан 27 окт 2017 в 17:26

VladD's user avatar

VladDVladD

206k27 золотых знаков289 серебряных знаков521 бронзовый знак

a.OrderBy(e => e.value).First();

В один короткий запрос, но это не эффективно.

ответ дан 27 окт 2017 в 13:47

Михаил Тарасов's user avatar

1

var a = array.Aggregate((r, x) => r.Value < x.Value ? r : x);

Код полностью: https://ideone.com/80oSKs

using System;
using System.Linq;

class A
{
  public double Value;
  public static implicit operator A(double x) { return new A() { Value = x }; }
}

public class Test
{
  public static void Main()
  {
    var array = new A[] { 1.7, 2.3, -7.8, -11.1, 4.5, 42 };
    var a = array.Aggregate((r, x) => r.Value < x.Value ? r : x);
    Console.WriteLine(a.Value);
    Console.WriteLine(Object.ReferenceEquals(a, array[3]));
  }
}

Результат:

-11.1
True

ответ дан 27 окт 2017 в 16:16

Qwertiy's user avatar

QwertiyQwertiy

121k24 золотых знака121 серебряный знак291 бронзовый знак

В этом посте будет обсуждаться, как определить минимальное и максимальное значение в списке с его индексом в C#.

1. Использование Min() а также Max() Метод

Стандартным решением для получения минимального значения в последовательности значений является использование Min() метод. Точно так же, чтобы получить максимальное значение, используйте Max() метод. Следующий пример демонстрирует использование Min() а также Max() методы поиска минимального и максимального значения в списке целых чисел.

using System;

using System.Linq;

using System.Collections.Generic;

public class Example

{

    public static void Main()

    {

        List<int> list = new List<int>() { 5, 1, 4, 9, 7, 8 };

        Console.WriteLine(“Maximum element “ + list.Max());

        Console.WriteLine(“Minimum element “ + list.Min());

    }

}

Скачать  Выполнить код

результат:

Maximum element 9
Minimum element -7

 
Мы можем легко расширить приведенное выше решение, чтобы напечатать индексы минимального и максимального значений. Чтобы получить индексы, измените код следующим образом:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

using System;

using System.Linq;

using System.Collections.Generic;

public class Example

{

    public static void Main()

    {

        List<int> list = new List<int>() { 5, 1, 4, 9, 7, 8 };

        int maxValue = list.Max();

        int maxIndex = list.IndexOf(maxValue);

        int minValue = list.Min();

        int minIndex = list.IndexOf(minValue);

        Console.WriteLine(“Maximum element {0} present at index {1}”, maxValue, maxIndex);

        Console.WriteLine(“Minimum element {0} present at index {1}”, minValue, minIndex);

    }

}

Скачать  Выполнить код

результат:

Maximum element 9 present at index 3
Minimum element -7 present at index 4

2. Использование Enumerable.Select Метод

The Enumerable.Select метод проецирует каждый элемент последовательности в новую форму, включая индекс элемента. Следующий пример демонстрирует использование Select() метод, чтобы найти как значение, так и индекс, чтобы найти минимальный и максимальный элемент в одной строке.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

using System;

using System.Linq;

using System.Collections.Generic;

public class Example

{

    public static void Main()

    {

        List<int> list = new List<int>() { 5, 1, 4, 9, 7, 8 };

        var (maxValue, maxIndex) = list.Select((x, i) => (x, i)).Max();

        var (minValue, minIndex) = list.Select((x, i) => (x, i)).Min();

        Console.WriteLine(“Maximum element {0} present at index {1}”, maxValue, maxIndex);

        Console.WriteLine(“Minimum element {0} present at index {1}”, minValue, minIndex);

    }

}

Скачать  Выполнить код

результат:

Maximum element 9 present at index 3
Minimum element -7 present at index 4

3. Использование пользовательской процедуры

В качестве альтернативы мы можем написать собственную процедуру для поиска минимального и максимального значений в списке. Идея состоит в том, чтобы перебирать список и отслеживать минимальное и максимальное значение на данный момент (и, возможно, индексировать). Наконец, верните минимальное и максимальное значение. Вот как будет выглядеть код:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

using System;

using System.Collections.Generic;

public static class Extensions

{

    public static int findMin(this IList<int> items)

    {

        int minVal = int.MaxValue;

        foreach (int i in items)

        {

            if (i < minVal) {

                minVal = i;

            }

        }

        return minVal;

    }

    public static int findMax(this IList<int> items)

    {

        int maxVal = int.MinValue;

        foreach (int i in items)

        {

            if (i > maxVal) {

                maxVal = i;

            }

        }

        return maxVal;

    }

}

public class Example

{

    public static void Main()

    {

        List<int> list = new List<int>() { 5, 1, 4, 9, 7, 8 };

        Console.WriteLine(“Maximum element “ + list.findMax());

        Console.WriteLine(“Minimum element “ + list.findMin());

    }

}

Скачать  Выполнить код

результат:

Maximum element 9
Minimum element -7

Вот и все, что касается нахождения минимального и максимального значений в списке с его индексом в C#.

Skip to content

Как найти при помощи функции МИН минимальное значение в Excel – 6 примеров

В этой статье вы узнаете, как использовать функцию МИН в Excel 2007-2019, найти минимальное значение, наименьшее значение по условию и выделить самое маленькое число в вашем диапазоне.

Сегодня мы расскажем вам, как использовать базовую, но очень важную функцию МИН в Excel. Вы увидите способы найти минимальное значение, в том числе исключая нули, абсолютный минимум и наименьшее значение с учётом условий. Кроме того, я покажу вам пошагово, как выделить цветом наименьшее число, а также подскажу, что делать, если ваша функция МИН возвращает ошибку вместо нужного результата.

  1. Функция Excel МИН – синтаксис
  2. 1. Нахождение наименьшего значения
  3. 2. Как найти самую раннюю дату
  4. 3. Поиск абсолютного минимума в Excel
  5. Как найти самое маленькое значение в Excel, исключая нули
  6. Нахождение минимума на основе условия
  7.  Как подсветить наименьшее число в Excel
  8. Почему не работает функция МИН?

Итак, начнем 🙂

Функция Excel МИН – синтаксис

Функция МИН проверяет ваш диапазон данных и возвращает минимальное значение в этом наборе.

Синтаксис для Excel МИН следующий:

    МИН (число 1; [число 2]; …)

число1, [число2],… – это серия чисел, откуда вы хотите получить минимум. Число1 – обязательный аргумент, в то время как [число 2] и следующие являются необязательными. В одной формуле МИН допускается до 255 аргументов. Аргументы могут быть числами, ссылками на ячейки и диапазонами.

Функция МИН является одной из самых простых в применении. Вот пару примеров, доказывающих это:

1. Нахождение наименьшего значения

Допустим, у вас есть фрукты на складе. Ваша задача – проверить, какие из них заканчиваются. Есть несколько способов это сделать:

1: Ввести каждое значение из столбца «Количество на складе» в формулу:

= МИН(366;476;398;982;354;534;408)

2: Сделать ссылки на каждую ячейку столбца Количество:

= МИН(В2; В3; В4; В5; В6; В7; В8)

3: Или просто сослаться на весь диапазон ячеек:

= МИН(В2:В8)

Получить минимальное значение с помощью функции МИН

4: в качестве альтернативы вы можете создать именованный диапазон и использовать его вместо этого, чтобы избежать любых прямых ссылок:

найти наименьшее из именованного диапазона

2. Как найти самую раннюю дату

Представьте, что вы ждете несколько доставок и хотели бы быть готовыми к самой ближайшей. Как узнать самую раннюю дату в Excel? Легко! Используйте функцию МИН, следуя логике из примера 1:

Примените МИН и выберите даты, ссылаясь непосредственно на ячейки:

= МИН(В2:В8)

или на именованный диапазон:

= МИН(дата_поставки)

Найти самую раннюю дату

3. Поиск абсолютного минимума в Excel

Предположим, что у вас есть диапазон чисел, и вам нужно определить не просто самое маленькое из них, но найти абсолютный минимум или минимум по абсолютному значению (по модулю). Одна только МИН функция не сможет справиться с этим, поскольку она просто будет искать минимальное число. Здесь вам нужна вспомогательная функция, которая может конвертировать все отрицательные числа в положительные.

Есть ли готовое решение для этого случая? Вопрос был риторическим, в Excel есть решение любой задачи. Если у вас есть какие-либо сомнения, просто просмотрите наш блог. 🙂

Но вернемся к нашей задаче. Готовое решение для этого конкретного случая называется функцией ABS, которая возвращает абсолютное значение заданных вами чисел. Таким образом, комбинация функций МИН и ABS сделает свое дело. Просто введите следующую формулу в любую пустую ячейку:

{= МИН(ABS(А1:Е12))}

Абсолютный минимум, найденный МИН и ABS

Важно! Вы заметили фигурные скобки вокруг формулы? Это признак того, что это формула массива, и ее нужно вводить с помощью комбинации клавиш Ctrl + Shift + Enter, а не просто Enter.

Как найти самое маленькое значение в Excel, исключая нули

Вам кажется, что вы уже знаете все о поиске минимальных значений в Excel? Не спешите с выводами, всегда есть чему поучиться. Например, как бы вы определили наименьшее ненулевое значение? Есть идеи? Не обманывай и не гугли, просто продолжай читать;)

Дело в том, что Excel МИН работает не только с положительными и отрицательными числами, но и с нулями. Если вы не хотите, чтобы нули были таким минимумом, вам нужна помощь функции ЕСЛИ (IF). Как только вы добавите ограничение, что ваш диапазон должен быть больше нуля, ожидаемый результат не заставит себя ждать. Вот пример формулы для использования:

{= МИН(ЕСЛИ(В2:В15>0;В2:В15))}

минимальное значение, исключая ноль

Вы, наверное, заметили фигурные скобки вокруг формулы массива. Просто помните, что вы не вводите их вручную. Они появляются в тот момент, когда вы нажимаете Ctrl + Shift + Enter на клавиатуре.

Нахождение минимума на основе условия

Предположим, вам нужно найти наименьшее количество продаж определенного фрукта в списке. Другими словами, ваша задача – определить минимальное значение на основе некоторого критерия. В Excel условия обычно требуют использования функции ЕСЛИ. Все, что вам нужно сделать, это создать идеальную комбинацию МИН и ЕСЛИ для решения этой задачи:

Определить минимум по критериям, используя МИН и ЕСЛИ

Нажмите Ctrl + Shift + Enter, чтобы эта функция массива работала, и наслаждайтесь результатом.

 Выглядит довольно легко, правда? И как вы определите минимум на основе 2 или более условий? Может быть, есть более простая формула для этой задачи, доступная в Excel? Читайте дальше, чтобы узнать ответ. 😉

 Как подсветить наименьшее число в Excel

А что, если вам не нужно возвращать минимальное значение, а вы просто хотите найти его в своей таблице? Самый простой способ найти ячейку – выделить ее. И самый простой способ сделать это – применить условное форматирование. Это даже проще, чем создать формулу:

1 Создайте новое правило условного форматирования, щелкнув Условное форматирование -> Создать правило

2 Когда откроется диалоговое окно «Создание правила форматирования», выберите тип правила «Форматировать только первые или последние значения».

3 Поскольку задача состоит в том, чтобы найти одно-единственное наименьшее значение, выберите опцию «последним» в раскрывающемся списке и укажите 1 в качестве количества ячеек, которые нужно выделить.

выделить наименьшее число с условным форматированием

Но что делать, если в вашей таблице снова есть ноль? Как игнорировать нули при выделении минимального значения? Не беспокойтесь, для этого случая тоже есть маленькая хитрость:

1. Создайте новое правило условного форматирования, выбрав опцию «Использовать формулу для определения форматируемых ячеек».

2. Введите это выражение в поле «Значения формата» для проверки условия:

=B2=МИН(ЕСЛИ($B$2:$B$15>0;$B$2:$B$15))

Где B2 – первая ячейка диапазона, в которой будет найдено самое маленькое значение

выделить самое маленькое без нуля

3. Выберите цвет ( Формат… -> Заливка) и нажмите ОК.

4. Наслаждайтесь 🙂

Почему не работает функция МИН?

В идеальном мире все формулы будут работать как часы и возвращать правильные результаты, когда вы нажмете Enter. Но в мире, в котором мы живем, формулы иногда возвращают ошибку, а не результат, который нам нужен. Не беспокойтесь, сама ошибка всегда намекает на ее возможную причину. Вам просто нужно всмотреться в вашу формулу.

Исправление ошибки #ЗНАЧ! в формуле МИН

Как правило, вы получаете #ЗНАЧ! сообщение об ошибке, когда хотя бы одно из значений, использованных в формуле, неверно. Что касается МИН, это может произойти, когда один из аргументов поврежден, например, что-то не так с ячейками, которые использует формула.

Например, #ЗНАЧ! может появиться, если один из аргументов является ячейкой с ошибкой или в ссылке на ячейку есть опечатка.

ошибка #ЗНАЧ! в МИН

Что может вызвать ошибку #ЧИСЛО! ?

Excel показывает ошибку #ЧИСЛО!, когда невозможно рассчитать вашу формулу. Обычно это происходит, когда числовое значение слишком велико или мало для отображения в Excel. В Excel допустимы номера от -2,2251E-308 до 2,2251E-308. Если один из ваших аргументов находится вне этого диапазона, функция вернет #ЧИСЛО!

ошибка #ЧИСЛО!

Я получаю сообщение #ДЕЛ/0!, что делать?

Исправление #ДЕЛ/0! –  это легко. Не делите на ноль! 🙂 Не шучу, это единственное решение этой проблемы. Проверьте диапазон ваших данных, исправьте ошибку #ДЕЛ/0!, и формула незамедлительно вернет правильный результат.

#ДЕЛ/0!

Ищете минимум, но получаете #ИМЯ?

Сообщение #ИМЯ? означает, что Excel не может распознать формулу или ее аргументы. Наиболее вероятная причина этого результата – опечатка. Вы можете либо неправильно написать формулу, либо указать неверные аргументы для получения такого результата.

сообщение #ИМЯ?

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

#ИМЯ? ошибка в именованном диапазоне в МИН

Это были некоторые из способов найти минимум в Microsoft Excel с помощью функции МИН. Для вас я рассмотрел различные подходы, чтобы найти самое маленькое значение в Excel и найти абсолютный минимум. Вы можете считать эту статью своей шпаргалкой и использовать всякий раз, когда вам нужно найти минимальное число в зависимости от условия, чтобы предотвратить и исправить возможные ошибки.

Вот и все на сегодня. Пожалуйста, не стесняйтесь делиться своими мыслями и вопросами в разделе комментариев, я буду рад получить от вас обратную связь! 🙂

Еще полезная дополнительная информация:

Функция МАКС в Excel: как найти максимальное значение В этой статье объясняется функция МАКС с множеством примеров формул, которые показывают, как найти наибольшее значение в Excel и выделить наибольшее число на листе. МАКС – одна из самых простых и простых в использовании функций Excel. Тем не менее, у нее…
Как сделать зависимый выпадающий список в Excel? Одной из наиболее полезных функций проверки данных является возможность создания выпадающего списка, который позволяет выбирать значение из предварительно определенного перечня. Но как только вы начнете применять это в своих таблицах, то неизбежно столкнетесь с проблемой: нужно сделать один выпадающий список…
использование формул для выпадающего списка Создаем выпадающий список в Excel при помощи формул Задача: Создать выпадающий список в Excel таким образом, чтобы в него автоматически попадали все новые значения. Сделаем это при помощи формул, чтобы этот способ можно было использовать не только в Excel 2007 и старше, но и в Excel 2003. Как…
автоматическое добавление значений в выпадающий список 5 способов создать выпадающий список в ячейке Excel Одной из наиболее полезных функций при вводе данных является возможность использовать выпадающий список в Excel. Он позволяет выбирать значение из предварительно определенного перечня и разрешает вводить только те данные, которые соответствуют вашим требованиям. Мы предложим вам несколько простых способов, как…

Одним из самых частых алгоритмов, которые используются в программировании – это поиск максимального и минимального элементов в потоковом получении данных(когда данные появляются друг за другом, например, с помощью цикла).

Здесь необходимо выделить 2 случая:
– когда Вы знаете диапазон чисел, который будет приходить(например, строго трёхзначные, то есть от 100 до 999 или строго записанный диапазон от числа а до числа b);
– когда Вы не знаете диапазон чисел, который будет к вам приходить;

Рассмотрим первый случай, то есть когда вы знаете диапазон чисел:

В Этом случае вы должны перед получением данных в переменную, отвечающую за поиск минимума положить верхнюю границу диапазона, а в переменную, отвечающую за поиск максимума положить нижнюю границу диапазон, после чего в цикле просто обрабатывать числа по стандартному правилу нахождения наибольшего и наименьшего из двух.

При использовании такого алгоритма ваши максимум и минимум сменятся на адекватные значения, которые по окончанию работы цикла и будут действительным максимумом и минимумом.

Рассмотрим второй случай, когда диапазон неизвестен:

Алгоритм точно такой же за исключением того, что первоначально в минимум кладётся самое наибольшее число из используемого типа данных, а в максимум самое наименьшее число из используемого типа данных.

Границы типов данных можно найти в другой моей статье:

Пример программы по поиску минимального и максимального целого числа числа при неизвестном диапазоне:

int min = INT_MAX; //константа наибольшего числа в int
int max = INT_MIN; //константа наименьшего числа в int
int val;

for(int i=0; i<1000: i++){
cin>>val;
if(val>max){
max = val;
}
if(val<min){
min = val;
}
}

cout << “Max = ” << max << endl;
cout << “Min = ” << min << endl;

Добавить комментарий