Напишем программу, которая вычисляем максимальный элемент в массиве.
Нахождение максимального элемента массива.
program massiv5; uses crt; const N=10; type x=array [1..N] of integer; var a:x; i:integer; max:integer; imax:integer; begin clrscr; randomize; for i:=1 to N do begin a[i]:= -50+random(101); write (A[i]:5) end; writeln; imax:=1; max:=A[1]; for i:=2 to N do if max
В строке №7 записываем переменную для хранения величины максимального элемента.
В строке №8 записываем переменную для хранения индекса максимального элемента.
В строке №11 мы включаем функцию Randomize. Эта функция позволяет генерировать случайные числа в программе. В данном случае нам необходимо каждому элементу массива [1..N] (всего 10 элементов) присвоить какое-нибудь значение. В программе «massiv3» значения для всех элементов массива мы вводили с клавиатуры. В этой задаче мы ничего вводить не будем.
Функция Randomize сама создаст значения для каждого элемента массива. В массиве у нас 10 элементов ([1..N], const N=10), соответственно будет сгенерировано 10 случайных чисел.
Урок 15. Паскаль с нуля. Максимальный элемент массива
В строке №12 включаем цикл. Переменная «I» будет изменяться в цикле от 1 до «N»
В строке №14 очередному элементу массива мы присваиваем случайное число, которое лежит в диапазоне от – 50 до + 50. (Сначала пишется минимальное число – 50, затем знак +, затем слово RANDOM, затем в скобках указывается общее количество возможных чисел в диапазоне; в диапазоне от – 50 до + 50 получается 100 чисел + число 0, всего 101)
Строка №15. Если мы запустим программу на данном этапе, у нас выведется на экран 10 различных чисел со значением от – 50 до + 50.
В строке №18 в переменную для хранения индекса (номера) максимального элемента мы записали число 1, т.е. будем считать, что первый элемент массива – максимальный.
В строке №19 в переменную для хранения величины максимального элемента записываем значение первого элемента массива (например, если первое сгенерированное число будет 13, то его и будем считать максимальным).
В строке №20 задаем цикл. В него мы не включаем 1-ый элемент. А затем, в строке №21 мы проверяем условие. Мы сравниваем все значения элементов массива (т.е. все сгенерированные числа) начиная со 2-го и до 10-го с 1 — ым числом.
И если очередное число в массиве больше чем 1-ое число, то в переменную для хранения максимального числа записываем это очередное число (строка №23), а в переменную для хранения индекса максимального числа записываем индекс этого очередного числа. После выполнения цикла в переменной max должно остаться максимальное число, а в переменной «imax» должен остаться номер этого числа.
Паскаль с нуля [ч14]. Многомерные (двумерные) массивы
После запуска программы в верхней строке у нас вывелось 10 сгенерированных чисел.
Во второй строке вывелось максимальное число из всех этих сгенерированных чисел.
В-третей строке вывелся номер по порядку, где стоит это максимальное число.
Если в массиве несколько маскимальных элементов и нужно вывести на экран индексы всех этих элементов, то программа будет выглядет так:
program massiv5; uses crt; const N=10; type x=array [1..N] of integer; var a:x; i:integer; max:integer; imax:integer; begin clrscr; randomize; for i:=1 to N do begin a[i]:= -5+random(3); write (A[i]:5) end; writeln; imax:=1; max:=A[1]; for i:=2 to N do if max
Источник: mojainformatika.ru
Найти наибольший элемент и его порядковый номер в массиве
Заполнить одномерный массив случайными числами. Найти и вывести на экран наибольший его элемент и порядковый номер этого элемента.
Заполнение массива и поиск наибольшего элемента можно выполнять в одном цикле.
Поскольку необходимо найти не только максимальный элемент, но и его индекс, то лучше искать индекс, так как по нему всегда можно получить значение из массива. Конечно, при поиске можно сохранять и индекс, и элемент в двух разных переменных. Однако этого делать не обязательно. До цикла присвоим переменной, в которой будет храниться индекс максимального элемента, значение 1. Это значит, предполагается, что максимальный элемент находится в первой ячейке массива.
Тело цикла будет состоять из следующих действий:
- Сгенерировать случайное число и записать его в очередную ячейку массива.
- Вывести полученное число на экран.
- Если это число больше, чем то, что хранится под индексом, записанным в переменную-максимум, то присвоить этой переменной текущий индекс (не само число!).
После того, как индекс наибольшего элемента будет найден, вывести его на экран. Чтобы вывести элемент по данному индексу, надо использовать выражение извлечения элемента из массива. Например, если max — это индекс, а arr — массив, то выражение будет таким: arr[max].
Pascal
найти максимальный элемент массива паскаль
const N = 10;
var
arr: array[1..N] of integer;
i, max: byte;
begin
randomize;
max := 1;
for i:=1 to N do begin
arr[i] := random(100);
write(arr[i], ‘ ‘);
if arr[max] < arr[i] then
max := i;
end;
writeln;
writeln(‘arr[‘,max,’] = ‘,arr[max]);
end.
64 26 99 37 57 64 6 21 48 19
arr[3] = 99
Язык Си
#include < stdio.h>
#define N 10
main() int arr[N], i, mx;
srand(time(NULL));
mx = 0;
for (i=0; i < N; i++) arr[i] = rand() % 100;
printf(«%d «, arr[i]);
if (arr[i] > arr[mx])
mx = i;
>
printf(«narr[%d] = %dn», mx, arr[mx]);
>
75 46 7 39 11 29 34 77 86 25
arr[8] = 86
Python
найти максимальный элемент массива python
from random import random
N = 10
arr = [0] * N
mx = 0
for i in range(N):
arr[i] = random() * 100
print(«%.2f» % arr[i], end=’; ‘)
if arr[i] > arr[mx]:
mx = i
print(«narr[%d] = %.2f» % (mx, arr[mx]))
73.83; 16.23; 30.18; 27.41; 94.27; 46.27; 66.17; 61.07; 18.89; 61.16;
arr[4] = 94.27
КуМир
алг
нач
цел N = 10
целтаб arr[1:N]
цел mx, i
mx := 1
нц для i от 1 до N
arr[i] := irnd(100)
вывод arr[i], » »
если arr[mx] < arr[i] то
mx := i
все
кц
вывод нс,»arr[«,mx,»] wp-block-code»>
57 78 14 96 76 9 19 36 45 54
arr[4] = 96
Basic-256
decimal 1
N = 10
dim arr(N)
mx = 0
for i=0 to N-1
arr[i] = rand * 100
print arr[i] + «; «;
if arr[i] > arr[mx] then mx = i
next i
print
print «Номер элемента: » + mx
print «Значение элемента: » + arr[mx]
21.9; 58.4; 24.4; 72.6; 88.5; 65.2; 56.6; 65.1; 72.6; 40.4;
Номер элемента: 4
Значение элемента: 88.5
Источник: gospodaretsva.com
Решу Паскаль
Максимум — это самое большое число, сохраненное в массиве.
Алгоритм поиска заключается в следующем:
- за начальное значение максимума взять самое маленькое число, которое может быть сохранено в массиве;
- обращаясь к каждому элементу массива выполнять проверку: значение элемента больше, чем значение максимума, если да, что значение максимума заменить на значение элемента.
Предположим, что в массиве a из N элементов могут храниться числа из промежутка от 1 до 100. Заполним массив случайными числами (прочитать статью «Сформировать массив случайных чисел»)
За начальное значение максимума возьмем число 1:
Осуществим обращение к каждому элементу массива оператором цикла:
обращение к элементу a[k]
Выполнять проверку и изменение максимума будем оператором:
if a[k]>m then m:=a[k];
Программа решения задачи на языке Паскаль
var a:array[1..30] of integer;
print(‘Введите количество элементов массива N =’);
if a[k]>m then m:=a[k];
println(‘Максимум в массиве:’,m);
Результат запуска программы
Для наглядности можно выводить текущее значение максимума в цикле.
Для поиска минимума начальное значение следует взять за самое большое число в массиве (в нашем случае это число 100). А проверка условия и изменение минимума будет таким:
Источник: reshupascal.blogspot.com