Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.10.2014, 15:01   #1
Святослав Марков
Новичок
Джуниор
 
Регистрация: 18.10.2014
Сообщений: 1
По умолчанию Поиск второго максимума.

Здравствуйте, у меня возникла проблема. Нужно найти второй максимум в массиве(элемент, который в отсортированном по убыванию массиве стоял бы вторым), однако при компиляции выводит только первый элемент массива. Прошу помощи в поисках ошибки. Работал в паскале.

Код:
const n=6;
var a:array[1..n] of integer;
i,k,max,max2:integer;
begin
for i:=1 to n do readln(a[i]);
max:=a[1];
for i:=1 to n do
if a[i]>max then max:=a[i];
for k:=1 to max do
for i:=1 to n do begin
if a[i]=max-k then max2:=a[i]; break; end;
writeln(max2);
end.

Последний раз редактировалось Stilet; 18.10.2014 в 16:19.
Святослав Марков вне форума Ответить с цитированием
Старый 18.10.2014, 16:23   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Работал в паскале.
Не ты. )
Цитата:
только первый элемент массива.
Код:
writeln(max:10,max2:10);
И кстати я бы не так этот код делал.
Код:

const n=6;
var a:array[1..n] of integer;
i,k,max,max2:integer;
begin
for i:=1 to n do begin
 readln(a[i]);
 if (i=1) or (max2<a[i]) then max2:=a[i];
 if (i=1) or (max<max2) then begin k:=max; max:=max2;max2:=k;end;
end;

writeln(max:10,max2);
end.
Это с потолка. Не проверял, но смысл передает.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.10.2014, 16:42   #3
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Не читал сообщения и листинги. Советую то, что сразу пришло в голову - при поиске второго максимума игнорировать максимальный элемент, найденный при первом поиске...
Вадим Мошев вне форума Ответить с цитированием
Старый 18.10.2014, 17:20   #4
Demius
Пользователь
 
Регистрация: 03.12.2012
Сообщений: 24
По умолчанию

Цитата:
Сообщение от Святослав Марков Посмотреть сообщение
Здравствуйте, у меня возникла проблема. Нужно найти второй максимум в массиве(элемент, который в отсортированном по убыванию массиве стоял бы вторым), однако при компиляции выводит только первый элемент массива. Прошу помощи в поисках ошибки. Работал в паскале.

Код:
const n=6;
var a:array[1..n] of integer;
i,k,max,max2:integer;
begin
for i:=1 to n do readln(a[i]);
max:=a[1];
for i:=1 to n do
if a[i]>max then max:=a[i];
for k:=1 to max do
for i:=1 to n do begin
if a[i]=max-k then max2:=a[i]; break; end;
writeln(max2);
end.
Вопрос: обязательно ли использовать массив? Эта задача отлично решается и без него...
Demius вне форума Ответить с цитированием
Старый 18.10.2014, 18:14   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Demius
Вопрос: обязательно ли использовать массив?
Demius, странный вопрос...

задача состоит в том, чтобы:
Цитата:
Нужно найти второй максимум в массиве
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.10.2014, 18:40   #6
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Осмелюсь предположить, что Demius, осмелился предположить, что ТС осмелился привести свою интерпретацию задания, ошибочно добавив туда фразу про массив..
Poma][a вне форума Ответить с цитированием
Старый 18.10.2014, 18:43   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Ой сикока смелых. Ромаха начудил ))
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск максимума xotonic Помощь студентам 5 07.04.2013 22:15
поиск максимума и минимума на sql volfmen15 БД в Delphi 4 07.02.2012 17:48
последовательность чисел - поиск максимума, второго после максимума значения, количество чисел равных максимуму wasy96 Паскаль, Turbo Pascal, PascalABC.NET 1 28.09.2011 01:19
Поиск максимума sp_Иришка Общие вопросы C/C++ 9 17.12.2009 15:18
поиск второго максимума Arcueid1691 Общие вопросы C/C++ 7 15.10.2009 22:43