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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2008, 19:07   #1
real-people
 
Регистрация: 21.12.2008
Сообщений: 3
По умолчанию определения магазина, в котором стоимость некоторой заданной корзины продуктов будет минимальной, Pascal

Здравтсвуйте, решите задачу плз, в Паскале ничего не понимаю

Раз в неделю в газете публикуется список цен на наиболее распространенные продукты питания в нескольких самых популярных магазинах города. Разработать АЛГОРИТМ и привести ПРОГРАММУ для определения магазина, в котором стоимость некоторой заданной корзины продуктов будет минимальной, при этом время, за которое можно доехать до этого магазина не превышает среднего значения по всем магазинам.

КОНТРОЛЬНЫЙ ПРИМЕР:

Магазины

Магазин Яблоки 1кг Колбаса 1кг Помидоры 1кг Время
Магнит 40 150 20 10
Копейка 50 120 20 15
Рамстор 60 120 15 13
Пятачок 50 120 10 12

Корзина

Название Колличество
Помидоры 10
Колбаса 1

Результат: Искомый магазин - "Пятачок"

если, есть желание, дам 7-ми знак, за решенную задачу.
real-people вне форума Ответить с цитированием
Старый 22.12.2008, 18:18   #2
real-people
 
Регистрация: 21.12.2008
Сообщений: 3
По умолчанию

помогите, пожалуйста, завтра уже сдавать
real-people вне форума Ответить с цитированием
Старый 22.12.2008, 19:32   #3
5naip
Форумчанин
 
Аватар для 5naip
 
Регистрация: 05.10.2007
Сообщений: 536
По умолчанию

попробуй такую.
массивы там статические и все заточено под данный пример.
Но, прим смене цен или времени - все будет работать.
Как-то длинновато получилось.
чего не разберешься - спрашивай.
Вложения
Тип файла: rar project.rar (23.0 Кб, 13 просмотров)
rocklistener...
5naip вне форума Ответить с цитированием
Старый 22.12.2008, 20:16   #4
real-people
 
Регистрация: 21.12.2008
Сообщений: 3
По умолчанию

Я сразу же не разобрался =)
Сорри, тупой вопрос, но чем открыть TP не открывает файлы, там вроде (pas). Мне лучше текстом, у нас будут не прогу проверять, а сам код.
real-people вне форума Ответить с цитированием
Старый 22.12.2008, 20:32   #5
5naip
Форумчанин
 
Аватар для 5naip
 
Регистрация: 05.10.2007
Сообщений: 536
По умолчанию

блин,ага...я чето не посмотрел,что без *.pas.
Код:
var
  i,x,y:integer;
  mass_prices: array[1..4,1..4] of double;
  mass_names_shops: array[1..4] of string;
  mass_first_prices: array[1..3] of double;
  time: double;
begin


//Тут забивается примерный массив
// [i,1] - цена яблок
// [i,2] - цена колбасы
// [i,3] - цена помидоров
// [i,4] - время
//Забьем имена магазов
mass_names_shops[1]:='Magint';
mass_names_shops[2]:='Kopeika';
mass_names_shops[3]:='Ramstor';
mass_names_shops[4]:='Pyata4ok';
//Магнит
mass_prices[1,1]:=40;
mass_prices[1,2]:=150;
mass_prices[1,3]:=20;
mass_prices[1,4]:=10;
//Копейка
mass_prices[2,1]:=50;
mass_prices[2,2]:=120;
mass_prices[2,3]:=20;
mass_prices[2,4]:=15;
//Рамстор
mass_prices[3,1]:=60;
mass_prices[3,2]:=120;
mass_prices[3,3]:=15;
mass_prices[3,4]:=13;
//Пятачок
mass_prices[4,1]:=50;
mass_prices[4,2]:=120;
mass_prices[4,3]:=10;
mass_prices[4,4]:=12;

//Найдем среднее время
//вместо 4 поставь количество магазинов,если оно отлично от 4
time:=0;
for i:=1 to 4 do
  time:=mass_prices[i,4]+time;
time:=time/4;
//Ввод параметра поиска
{
1 - яблоки
2 - колбаса
3 - помидоры
}
write('Vvedite parametr: ');
readln(x);

//Забьем просто первые цены
for i:=1 to 4 do
if mass_prices[i,4]<=time
  then
    begin
      mass_first_prices[1]:=mass_prices[i,1];
      mass_first_prices[2]:=mass_prices[i,2];
      mass_first_prices[3]:=mass_prices[i,3];
      y:=i;
    end;

case x of
1:
begin
for i:=1 to 4 do
  if (mass_first_prices[1]>mass_prices[i,1]) and (mass_prices[i,4]<=time)
    then
      begin
        mass_first_prices[1]:=mass_prices[i,1];
        y:=i;
      end;
Write(mass_names_shops[y])
end;
2:
begin
for i:=1 to 4 do
  if (mass_first_prices[2]>mass_prices[i,2]) and (mass_prices[i,4]<=time)
    then
      begin
        mass_first_prices[2]:=mass_prices[i,2];
        y:=i;
      end;
Write(mass_names_shops[y])
end;
3:
begin
for i:=1 to 4 do
  if (mass_first_prices[3]>mass_prices[i,3]) and (mass_prices[i,4]<=time)
    then
      begin
        mass_first_prices[3]:=mass_prices[i,3];
        y:=i;
      end;
Write(mass_names_shops[y])
end;
end;

readln;
end.
rocklistener...
5naip вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
программа продуктов модульной структуры 4ERRY Паскаль, Turbo Pascal, PascalABC.NET 12 06.12.2008 16:05
Ищу программиста для написания корзины на сайт micle_k Фриланс 1 11.11.2008 18:06
Редактирование Корзины injhdc Софт 1 30.09.2008 15:20
Pascal, нужна помощь с меню заданной конфигурации Хоб Помощь студентам 1 12.02.2008 09:26