Как найти наибольший элемент в строке массива

0 / 0 / 0

Регистрация: 12.05.2014

Сообщений: 10

1

Найти максимальный элемент в каждой строке массива

24.09.2014, 18:45. Показов 7503. Ответов 1


Студворк — интернет-сервис помощи студентам

Найти максимальный элемент в каждой строке массива!помогите пожалуйста((



0



erl27

906 / 754 / 833

Регистрация: 06.09.2013

Сообщений: 1,561

24.09.2014, 18:56

2

Лучший ответ Сообщение было отмечено Niam miash как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var
  A: array[1..15, 1..15] of integer;
  i, j, m, n, max: integer;
  
begin
  writeln('Вводим двумерный массив:');
  writeln;
  randomize;
  n := 1 + random(15);
  m := 1 + random(15);
  for i := 1 to n do
  begin
    max := 0;
    for j := 1 to m do
    begin
      a[i, j] := random(200);
      write(a[i, j]:4);
      if max < a[i, j] then max := a[i, j]
    end;
    writeln('max = ':10, max)
  end
end.



1



в C# так не работает(хотя в некоторых других языках так можно написать).

C# язык со статической типизацией https://ru.wikipedia.org/wiki/Статическая_типизация

В вашем случае вы не можете изменить тип вашего массива во время работы программы.

int[,] myArr = new int[4, 5];

Во в этой строчке, слева вы сказали(для упрощения), что переменная myArr принадлежит типу int[]. Теперь туда можно добавлять только числа и исправить это нельзя.

Вы дали очень мало описания и возможно не прочитали, как задавать вопросы. Нужно задать конкретный вопрос, ибо в данный момент он звучит “Я ничего не сделал, сделайте за меня”(поэтому вам ставят минусы, а не потому что вопрос плохой).

Для того, чтобы вам ответили, задайте конкретный вопрос. В данном случае он звучит “Как мне вставить в массив чисел символ?”

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

Подсказка, как сделать

Если правильно оформите вопрос, я на него отвечу. Пока пусто.



Ученик

(136),
закрыт



4 года назад

Ирина Анатольевна

Просветленный

(20120)


5 лет назад

var i, j, n, maxi: Integer;
a: array [1..100,1..100] of integer;
begin
write (‘n = ‘);
readln (n);
writeln (‘array’: n*4 div 2 + 3, ‘max’:n*4 div 2+8);
for i:=1 to n do
begin
maxi:=-10;
for j:=1 to n do
begin
a[i,j]:=-9+random(19);
write (a[i,j]:4);
if (j=1) then maxi:=a[i,j];
if a[i,j] > maxi then maxi:=a[i,j];
end;
write (maxi:10);
writeln;
end;
end.

ДарительУченик (136)

5 лет назад

Извините, но у меня эта программа работает не корректно или я не правильно задал вопрос. У меня программа работает так: включаю программу и идет запрос 1 числа. После ввода числа появляется строка и в выписывается макс. элемент в этой строке, а хотелось бы, чтобы вводился (к примеру) ограничитель для массива. X строк и x столбцов и в данной матрице из каждой строки выписать максимальный элемент

Егор Коневцов

Знаток

(377)


5 лет назад

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

Миллиард — реже его называют биллионом — это единица с девятью нулями. Употребляется и триллион — единица с двенадцатью нулями. Наименования еще больших чисел мало известны, да и ради экономии места они обозначаются и произносятся как степень числа 10. Например, десять в двадцать четвертой степени. Но у некоторых чисел-великанов названия есть: 10 5—квадриллион, 1018—квинтиллион, 1024—секстиллион, 1027—октиллион.. .

Американский математик Кастнер изобрел «самое большое число» и назвал его «гугол» . Это единица со ста нулями! То есть, 10100. Хотя естественный ряд чисел и бесконечен, все же в известной мере гугол — это граница исчисляемого мира.

Дадим простор своему воображению и попытаемся проверить это утверждение. Вычислим площадь Земли в квадратных миллиметрах — можно надеяться, что получится головокружительная величина. Ничего подобного. Площадь земного шара равна 5X1020 квадратных миллиметров.

Если же подсчитаем объем Земли в кубических миллиметрах, то получим чуть большее число — 1030. Но и это слишком мало по сравнению с гуголом. Если предположить, что в одном кубическом миллиметре вместится десять песчинок, и подсчитать их количество в объеме Земли, то получится всего tO31. Иными словами, Земля слишком мала для какого бы то ни было вычисления в масштабах гугола.

Возьмем просторы космоса и попытаемся выразить расстояние между звездами в ангстремах — один ангстрем равен одной десятимиллионной части миллиметра. Обычно межзвездные расстояния измеряют в световых го- — это расстояние, которое солнечный луч проходит за год, — приблизительно 9,5 триллиона километров. И если выразить световой год в ангстремах, то получим 1026 ангстрема. И расстояние до самых удаленных галактик не превышает 6X1027 ангстрем.

Предположим, что Вселенная имеет ограниченные размеры (что не доказано) и сопоставим этот самый крупный физический объект, известный людям, с ядром атома — одним из самых малых объектов, изученных физиками. Соотношение между ними составит 1040. Это также не гугол.

А теперь подсчитаем возраст Вселенной. Самое короткое время, которое мы используем в этом вычислении, составляет тот миг, который необходим световому лучу, чтобы пересечь диаметр атомного ядра. Получается, что возраст Вселенной в этих единицах составляет также 1040.

Пересчитаем все атомные частицы, существующие в известной нам Вселенной: протоны, электроны, нейтроны, а также нейтрино и фотоны. Даже в одной пылинке содержится несколько миллиардов элементарных частиц. А во Вселенной их 1088— то есть миллионная миллионной части гугола!

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

Гугол недостижим, даже если подсчитать, сколько энергии содержится во всем веществе Вселенной.

Юрий Моисеев

Оракул

(83757)


5 лет назад

const m=10;
n=10;
var a:array[1..m,1..n] of integer;
i,j,imx,jmx:integer;
mx:integer;
begin
randomize;
writeln(‘Массив’);
for i:=1 to m do
begin
for j:=1 to n do
begin
a[i,j]:=random(10);
write(a[i,j]:4);
end;
writeln;
end;
writeln(‘Максимальные в строках:’);
for i:=1 to m do
begin
mx:=a[i,1];
for j:=2 to n do
if a[i,j]>mx then begin mx:=a[i,j];imx:=i;jmx:=j end;
writeln(imx,’ ‘,jmx,’:’,’Макс=’,mx:4);
end;
end.

Перейти к содержанию

Найти наибольший элемент и его порядковый номер в массиве

Просмотров 17.6к. Обновлено 15 октября 2021

Заполнить одномерный массив случайными числами. Найти и вывести на экран наибольший его элемент и порядковый номер этого элемента.

Заполнение массива и поиск наибольшего элемента можно выполнять в одном цикле.

Поскольку необходимо найти не только максимальный элемент, но и его индекс, то лучше искать индекс, так как по нему всегда можно получить значение из массива. Конечно, при поиске можно сохранять и индекс, и элемент в двух разных переменных. Однако этого делать не обязательно. До цикла присвоим переменной, в которой будет храниться индекс максимального элемента, значение 1. Это значит, предполагается, что максимальный элемент находится в первой ячейке массива.

Тело цикла будет состоять из следующих действий:

  1. Сгенерировать случайное число и записать его в очередную ячейку массива.
  2. Вывести полученное число на экран.
  3. Если это число больше, чем то, что хранится под индексом, записанным в переменную-максимум, то присвоить этой переменной текущий индекс (не само число!).

После того, как индекс наибольшего элемента будет найден, вывести его на экран. Чтобы вывести элемент по данному индексу, надо использовать выражение извлечения элемента из массива. Например, если 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,"] = ",arr[mx]
кон



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

в C# так не работает(хотя в некоторых других языках так можно написать).

C# язык со статической типизацией https://ru.wikipedia.org/wiki/Статическая_типизация

В вашем случае вы не можете изменить тип вашего массива во время работы программы.

int[,] myArr = new int[4, 5];

Во в этой строчке, слева вы сказали(для упрощения), что переменная myArr принадлежит типу int[]. Теперь туда можно добавлять только числа и исправить это нельзя.

Вы дали очень мало описания и возможно не прочитали, как задавать вопросы. Нужно задать конкретный вопрос, ибо в данный момент он звучит “Я ничего не сделал, сделайте за меня”(поэтому вам ставят минусы, а не потому что вопрос плохой).

Для того, чтобы вам ответили, задайте конкретный вопрос. В данном случае он звучит “Как мне вставить в массив чисел символ?”

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

Подсказка, как сделать

Если правильно оформите вопрос, я на него отвечу. Пока пусто.

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