Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/25: Рейтинг темы: голосов - 25, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 03.05.2017
Сообщений: 16
1

Определить максимальный элемент массива и элемент, являющийся максимальным без учета этого элемента

04.05.2017, 09:59. Показов 5191. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дан массив b[10], заполненный с клавиатуры. Определить максимальный элемент массива и элемент, являющийся максимальным без учета этого элемента.
Пытался с кода паскаль сделать, но не работает
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.05.2017, 09:59
Ответы с готовыми решениями:

Определить максимальный элемент массива и элемент, являющийся максимальным без учета элемента
Пожалуйста, помогите решить 2-е задачки. 1- Дан массив b, заполненный с клавиатуры. Определить...

Определить максимальный элемент массива и элемент, являющийся максимальным без учёта этого элемента
Дан массив из n элементов, необходимо определить максимальный элемент массива и элемент, являющийся...

Определить максимальный элемент массива и элемент являющийся максимальным без учета этого элемента
дан массив.определить максимальный элемент массива и элемент являющийся максимальным без учета...

Определить номер первого отрицательного элемента, по абсолютной величине превышающего максимальный элемент этого массива
Помогите, пожалуйста, с этой задачей: Дан одномерный целочисленный массив D(n), содержащий как...

13
1437 / 1014 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
04.05.2017, 10:27 2
Цитата Сообщение от Bakamokara Посмотреть сообщение
Пытался с кода паскаль сделать, но не работает
Где код? Покажите, пожалуйста.

Есть два способа. Первый - отсортировать по убыванию, например, и вывести в качестве ответа первые два элемента.
Второй - найти макс.элемент, записать его в переменную max1, затем искать макс.элемент max2 с условием max2 <> max1.
0
0 / 0 / 0
Регистрация: 03.05.2017
Сообщений: 16
04.05.2017, 10:35  [ТС] 3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
b: array [1..10] of integer;
max,index,i: integer;
begin
writeln ('Г‡Г*ïîëГ*ГЁГІГҐ Г¬Г*Г±Г±ГЁГў Г± ГЄГ«Г*ГўГЁГ*òóðû');
for i:=1 to 10 do
readln(b[i]);
 
for i:=1 to 10 do
if b[i]>max then begin
index:=i;
max:=b[i];
end;
writeln('ГЊГ*ГЄГ±ГЁГ¬Г*ëüГ*ûå ýëåìåГ*ГІ Г¬Г*Г±Г±ГЁГўГ* ',max);
writeln('Г…ГЈГ® Г*îìåð ñòîëáöГ* èëè i = ',index);
end;
Код с паскаля, поэтому криво выглядет
0
1437 / 1014 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
04.05.2017, 10:53 4
Здесь
Цитата Сообщение от Bakamokara Посмотреть сообщение
writeln('ГЊГ*ГЄГ±ГЁГ¬Г*ëüГ*ûå ýëåìåГ*ГІ Г¬Г*Г±Г±ГЁГўГ* ',max);
Вы вывели макс.элемент, а в следующей строке - его индекс. Про индекс в ТЗ ничего не сказано, поэтому нет смысла и выводить его.
Кроме того, проинициализируйте max хотя бы 0 в начале программы:
Delphi
1
max := 0;
Добавлено через 5 минут
Вот, теперь заведите переменную max2:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
max2 : Integer;
...............
max2 := 0;
.........
for...................// в этом цикле находили макс.элемент max
..........
for i:=1 to 10 do
if (b[i]>max2) and (max2 <> max) then begin
max2:=b[i];
end;
 
writeln('Пред_макс. элемент: ',max2);
Добавлено через 47 секунд
Правда, выглядит не совсем оптимально, как мне кажется...
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
04.05.2017, 10:58 5
Цитата Сообщение от Matan! Посмотреть сообщение
max2 с условием max2 <> max1.
А если 2 одинаковых максимальных?
В паскале.
Pascal
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
const n=10;
var b:array[1..n] of integer;
    i,mx1,mx2:integer;
begin
writeln('Введите элементы массива');
for i:=1 to n do
readln(b[i]);
if b[1]>b[2] then
 begin
  mx1:=b[1];
  mx2:=b[2];
 end
else
 begin
  mx1:=b[2];
  mx2:=b[1];
 end;
for i:=3 to n do
if b[i]>mx1 then
 begin
  mx2:=mx1;
  mx1:=b[i];
 end
else if b[i]>mx2 then mx2:=b[i];
writeln('Первый максимальный=',mx1,' второй максимальный=',mx2)
end.
Добавлено через 1 минуту
Цитата Сообщение от Bakamokara Посмотреть сообщение
Код с паскаля, поэтому криво выглядет
Интересно с какого это Паскаля что перекодировать не могу?

Добавлено через 1 минуту
Наверное в Lazarus?
0
0 / 0 / 0
Регистрация: 03.05.2017
Сообщений: 16
04.05.2017, 10:58  [ТС] 6
Я в принципе не могу в делфи его засунуть, я не понимаю где что заменить
0
1437 / 1014 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
04.05.2017, 11:07 7

Не по теме:

Ай-да дядя Puporev:bravo:


Цитата Сообщение от Puporev Посмотреть сообщение
А если 2 одинаковых максимальных?
И правда, не смекнул. Если два одинаковых макс., то в моём коде второй макс проигнорируется, и найдёт меньшее макс.число. Но это так, для ТС-а..

Добавлено через 1 минуту
Цитата Сообщение от Bakamokara Посмотреть сообщение
Я в принципе не могу в делфи его засунуть, я не понимаю где что заменить
Создаёте Console Application и просто копипаститевставляете...
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
04.05.2017, 11:08 8
Delphi
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
procedure TForm1.Button1Click(Sender: TObject);
const n=10;
var b:array[1..n] of integer;
    i,mx1,mx2:integer;
begin
for i:=1 to n do
b[i]:=strtoint(StringGrid1.Cells[i-1,0]);
if b[1]>b[2] then
 begin
  mx1:=b[1];
  mx2:=b[2];
 end
else
 begin
  mx1:=b[2];
  mx2:=b[1];
 end;
for i:=3 to n do
if b[i]>mx1 then
 begin
  mx2:=mx1;
  mx1:=b[i];
 end
else if b[i]>mx2 then mx2:=b[i];
Label1.Caption:='Первый максимальный='+inttostr(mx1)+
                ' второй максимальный='+inttostr(mx2);
end;
Вложения
Тип файла: rar 2 максимальных.rar (3.3 Кб, 9 просмотров)
0
0 / 0 / 0
Регистрация: 03.05.2017
Сообщений: 16
04.05.2017, 11:10  [ТС] 9
В этом то и дело, консоль не работает в версии, в которой работаю
0
1437 / 1014 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
04.05.2017, 11:11 10
Цитата Сообщение от Bakamokara Посмотреть сообщение
В этом то и дело, консоль не работает в версии, в которой работаю
Что же это за версия Delphi такая?
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
04.05.2017, 11:15 11
Если совсем плохой, то в инспекторе объектов для StringGrid нужно выставить colcount=10, rowcount=1, fixedcols=0, fixedrows=0, в Options goEditing=true, goTabs=true.

Добавлено через 1 минуту

Не по теме:

Цитата Сообщение от Matan! Посмотреть сообщение
Что же это за версия Delphi такая?
Наверное сам написал...

0
Matan!
04.05.2017, 11:22
  #12

Не по теме:

Puporev,

Цитата Сообщение от Puporev Посмотреть сообщение
в инспекторе объектов для StringGrid
боюсь, придётся объяснять, что такое StringGrid и откуда он берётся..

0
Puporev
04.05.2017, 11:24
  #13

Не по теме:

А также что такое инспектор объектов и где он находится..

0
D1973
04.05.2017, 17:28     Определить максимальный элемент массива и элемент, являющийся максимальным без учета этого элемента
  #14

Не по теме:

и, заодно уж, что такое Delphi...

0
04.05.2017, 17:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.05.2017, 17:28
Помогаю со студенческими работами здесь

Определить номера минимального элемента массива и элемента, являющегося минимальным без учета этого элемента.
Дан массив. Определить номера минимального элемента массива и элемента, являющегося мини-мальным...

Все отрицательные элементы заданного массива L (11) разделить на максимальный элемент этого массива. Вывести максимальный элемент, начальный и преобра
Помогите составить программу на С++

Вставить после каждого нечетного элемента массива максимальный простой элемент этого же массива
В целочисленный массив X(n) после каждого нечетного элемента вставить максимальный простой элемент...

После каждого нечетного элемента массива вставить максимальный простой элемент этого же массива
ЗАДАЧА 1. В целочисленный массив X(n) после каждого нечетного элемента вставить максимальный...

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

Найти номера минимального элемента массива и элемента, являющегося минимальным без учета этого элемента
11.109. Дан массив. Определить: а) максимальный элемент массива и элемент, являющийся максимальным...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru