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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.02.2008, 00:26   #1
Uchiha
 
Регистрация: 18.02.2008
Сообщений: 5
По умолчанию Поиск оптимального решения

Дана задача что студент мол опаздывает на занятия.
Ему даются виды транспорта. И нужно найти оптимальное решение по стоймости и цене чтобы студент успел на учебу. У меня получается найти только наименьшую цену и стоимость. А как сделать так чтобы найти вариант подходящий по обоим критериям пусть и не по минимальным.

Последний раз редактировалось Квэнди; 18.02.2008 в 11:39.
Uchiha вне форума Ответить с цитированием
Старый 18.02.2008, 01:59   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Простите, а программирование тут при чем?
Это же чистая математика, а у нас - форум программистов...
Кстати, вы в одном предложении забыли в конце поставить восклицательный знак...
mihali4 вне форума Ответить с цитированием
Старый 18.02.2008, 02:06   #3
Uchiha
 
Регистрация: 18.02.2008
Сообщений: 5
По умолчанию

Дело в том, что это нужно реализовать на Delphi.
А насчет восклицательных знаков исправлюсь...=)
Uchiha вне форума Ответить с цитированием
Старый 18.02.2008, 08:16   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А как ты решаеш эту задачу на бумажке? По шагам распиши.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.02.2008, 10:19   #5
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

На мой взгляд решающим фактором тут является успеваемость на занятия. Вобщем, надо найти все варианты транспорта, при которых он успевает на учебу, а из них выбрать самый дешевый.
Sibedir вне форума Ответить с цитированием
Старый 18.02.2008, 11:39   #6
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Uchiha если до завтра не появятся ваши наработки, будет перенесено в фриланс.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 18.02.2008, 21:36   #7
Uchiha
 
Регистрация: 18.02.2008
Сообщений: 5
По умолчанию

Решение на бумаге:
Вводим виды траноспорта введу для примера 5
Вид Время Стоимость
Автобус 30 7
Газелька 15 15
Троллейбус 35 6
Такси 15 60
Личное авто 15 30(типа расход на бензин)

Вооот! По идее на бумаге оптимальный вариант для студента получаецца
что это Газелька быстро и недорого.
На бумаге это легко и выглядело так.
Uchiha вне форума Ответить с цитированием
Старый 19.02.2008, 07:57   #8
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

В исходных данных не хватает одного значения - Максимально возможное кол-во времени на дорогу. А в остальном все так, как я говорил.
Код:
type
  TTrensport = record
    Name: String;
    Time: Real;
    Money: Real;
  end;

...

var
  Variants: array of TTrensport;
  MaxTime: Real;

...

procedure TForm1.Button2Click(Sender: TObject);
var
  i, n: Integer;
begin
  n := -1;
  for i := 0 to Length (Variants) - 1 do begin
    if Variants [i].Time < MaxTime then begin
      if n = -1 then n := i
      else
        if Variants [i].Money < Variants [n].Money then n := i;
    end;
  end;
  if n = -1 then ShowMessage ('Подходящего транспорта нет')
  else ShowMessage ('Оптимальный вид транспорта: ' + Variants [n].Name);
end;
Sibedir вне форума Ответить с цитированием
Старый 19.02.2008, 08:44   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Как по мне тут просто нужно найти минимальную разницу между стоимостью и временем...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.02.2008, 08:51   #10
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Вообще, если, как говаривал Винни-Пух, "я что-нибудь в чём-нибудь понимаю", это - типичная задача на производную, где ставится условие потратить как можно меньше денег и при этом успеть вовремя. Соостветственно и строится функция, дающая стоимость путешествия, берется по ней производная, приравнивается к нулю, ну и т.д. Можно, конечно, ее решить и своего рода "численным методом" - бездумным перебором вариантов, но уж никак не утверждать, что на самолете быстрее всего. В любом случае, такие штуки сначала хорошо бы делать на бумаге, а уж потом думать, при чем здесь дельфи, так мне кажется.
B_N вне форума Ответить с цитированием
Ответ


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

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск оптимального решения Lamborghini Помощь студентам 4 12.10.2012 23:24
Где найти поиск решения? Красавчег))) Microsoft Office Excel 3 10.05.2008 15:02
поиск решения,линейная модель. ZhukElena Microsoft Office Excel 9 24.04.2008 11:20
Поиск решения.(Задача) Lamborghini Microsoft Office Excel 1 19.02.2008 11:58