Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.05.2012, 15:04
Esterlen Esterlen вне форума
Прохожий
 
Регистрация: 27.05.2012
Сообщения: 2
Репутация: 10
Печаль поиск двух соседних элементов массива

Здравствуйте уважаемые пользователи форума Delphi Sources.
Я хочу обратиться к вам за помощью, она заключается в разработке программы поиска двух соседних элементов массива, сумма которых максимальна(тема курсовой работы). Самому сделать что то подобное мне даже близко не удалось, я очень надеюсь на вас. Ибо курсовую работу сдавать уже завтра.
Ответить с цитированием
  #2  
Старый 27.05.2012, 15:34
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Если нет желания самому что-то делать и разбираться - добро пожаловать в раздел форума "Работа".
Если есть - пробуй, ищи в гугле статьи, примеры, пиши, пиши, пиши, - и когда совсем зайдешь в тупик, выкладывай наработки и спрашивай, "что не правильно".
Подсказка для самостоятельного написания: проходишь по массиву, складываешь во временной переменной текущий и следующий элементы, если эта сумма больше текущего максимума - сохраняешь как максимум и запоминаешь текущий индекс.

З.Ы. программу такой сложности можно в почти готовом виде в гугле найти (найти похожее и по аналогии сделать). Даже странно, что это - курсовая.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.

Последний раз редактировалось Bargest, 27.05.2012 в 15:36.
Ответить с цитированием
Этот пользователь сказал Спасибо Bargest за это полезное сообщение:
Esterlen (27.05.2012)
  #3  
Старый 27.05.2012, 15:47
Esterlen Esterlen вне форума
Прохожий
 
Регистрация: 27.05.2012
Сообщения: 2
Репутация: 10
Печаль

Цитата:
Сообщение от Bargest
З.Ы. программу такой сложности можно в почти готовом виде в гугле найти (найти похожее и по аналогии сделать). Даже странно, что это - курсовая.

К сожалению поиски ни к чему дельному не привели (У меня слишком маленькие познания в сфере программирования в среде Delphi 7 чтобы сделать по аналогии чего либо). Программирование - это не профильный предмет видимо поэтому тема курсового проекта кажется вам "странной".
Все таки было очень круто если бы кто то из участников форума написал бы код, тем более такого простого. Для таких специалистов как вы не должно составить никого труда.
Спасибо за ответ

Последний раз редактировалось Esterlen, 27.05.2012 в 15:52.
Ответить с цитированием
  #4  
Старый 27.05.2012, 16:01
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Цитата:
Для таких специалистов как вы не должно составить никого труда.
Написать код + отладить + объяснить, где, что и зачем...
Мало кто станет тратить время просто потому, что студент ничего не делал по предмету в семестре. Подсказку (а вернее весь алгоритм) я уже написал. От Вас остается только переписать то же самое на делфи. Если в семестре хоть что-нибудь делали - труда не составит.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием
  #5  
Старый 27.05.2012, 21:17
robt robt вне форума
Активный
 
Регистрация: 17.02.2011
Сообщения: 298
Репутация: -1806
По умолчанию

Цитата:
Сообщение от Esterlen
Ибо курсовую работу сдавать уже завтра.
да както похрен
уважаемым людям завтра на работу,а седня они отдыхают
Ответить с цитированием
  #6  
Старый 27.05.2012, 21:33
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,035
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Сообщение от Esterlen
Здравствуйте уважаемые пользователи форума Delphi Sources.
Я хочу обратиться к вам за помощью, она заключается в разработке программы поиска двух соседних элементов массива, сумма которых максимальна(тема курсовой работы). Самому сделать что то подобное мне даже близко не удалось, я очень надеюсь на вас. Ибо курсовую работу сдавать уже завтра.

А в чем проблема?
Грубо, алгоритм очень простой.
Сначала проходишь по массиву и создаешь новый массив, состоящий из сумм соседних элементов (ну и индексы запоминаешь, т.е. у тебя элементом нового массива будет запись, состоящая из значения суммы и 2х индексов). Ну а потом в получившемся массиве ищешь макс. элемент по значению суммы.

Тут можно оптимизировать, что бы считать за один проход, т.е. просто запоминать макс. значение прямо в процессе поиска, т.к. мы рассматриваем только сумму соседних элементов.
Ответить с цитированием
  #7  
Старый 27.05.2012, 22:41
Аватар для Yurk@
Yurk@ Yurk@ вне форума
Специалист
 
Регистрация: 07.09.2007
Адрес: Украина, г. Днепропетровск
Сообщения: 892
Версия Delphi: 7 + ОгнеПтица
Репутация: выкл
По умолчанию

навскидку:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
M : array [0..9] of integer;
i,fEidx, sEidx, newS, oldS :integer;
begin
oldS:=0;
Label1.Caption:='';
for i:=0 to Length(M)-1 do
  begin
  randomize;
  M[i]:=random(1000);
  Label1.Caption:=Label1.Caption+'|'+IntToStr(M[i]);
  end;
for i:=1 to Length(M)-1 do
  begin
  newS:=M[i-1]+M[i];
  if oldS<newS
    then
    begin
    oldS:=newS;
    fEidx:=i-1;
    sEidx:=i;
    end;
  end;
ShowMessage(IntToStr(fEidx)+'('+IntToStr(M[fEidx])+')'+'+'+IntToStr(sEidx)+'('+IntToStr(M[sEidx])+')='+IntToStr(oldS));
end;
__________________
Поживу - увижу, Доживу - узнаю, Выживу - учту.
[P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 09:27.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter