// PascalABC.NET 3.2, сборка 1411 от 23.03.2017// Внимание! Если программа не работает, обновите версию!begin var a:=ArrRandom(ReadInteger('n='),-10,10); a.Println; Writeln('Последнее вхождение минимального элемента: ',a.LastIndexMin+1); var mx:=a.Max; Writeln('Количество элементов, равных максимальному: ', a.Where(x->x=mx).Count)end.
Примерn= 2010 10 -10 2 -8 9 8 -8 4 -5 10 -9 9 -2 1 7 -4 9 -10 7Последнее вхождение минимального элемента: 19Количество элементов, равных максимальному: 3
ПоясненияArrRandom(ReadInteger('n='),-10,10); запрашиваем количество элементов n в массиве, а затем создаем целочисленный массив заполняем его случайными целыми числами на интервала [-10;10]a.Println; выводим содержимое массива а на мониторa.LastIndexMin+1 находим в массиве a позицию последнего минимального элемента. Счет позиций идет с нуля, поэтому добавляем единицу. var mx:=a.Max; находим в массиве а максимальный элемент и запоминаем его в mxa.Where(x->x=mx).Count) выбираем из массива а элементы, равные mx и подсчитываем их количество