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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2011, 17:50   #1
Вася Маклауд
 
Регистрация: 03.04.2011
Сообщений: 6
Радость Задача на нахождение максимальной разницы между вырученными и потраченными деньгами)

итак задачка...
Ярмарка товаров длится ровно n дней и в каждый день назначается определенная глобальная скидка на все виды товаров.За один день ярмарки можно купить либо купить либо продать только один товар.Если в этот день действует глобальная скидка в размере d,а цена на товар x,то можно продать или купить товар по цене равной x*(100-d)/100.
Имеется список товаров P,которые надо продать на данной ярмарке(список товаров представлен ценами на него а не конкретно названием),также имеется список Q товаров которые надо купить за время ярмарки.Известны скидки всех дней ярмарки.
Нужно максимизировать разность между деньгами,вырученными с продаж,и деньгами потраченными на покупку.
Код:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;

const
  n=4;
   var
   xp1,xp2,xq1,xq2,max,min,i,min1,max1,xpmax,xpmin,xqmin,xqmax:integer;
   ps1,ps2,qs1,qs2,razn:real;
   ckud:array [1..4]of integer;

begin
  try
       Writeln('Vvedite ceny tovara prodagi bez ckudku');
  readln(xp1);
   Writeln('Vvedite ceny tovara prodagi bez ckudku');
  readln(xp2);
     Writeln('Vvedite ceny tovara pokypku bez ckudku');
  readln(xq1);
   Writeln('Vvedite ceny tovara pokypku bez ckudku');
  readln(xq2);

   if xp1>xp2 then
  begin
  xpmax:=xp1;
  xpmin:=xp2;
  end
  else
  begin
  xpmax:=xp2;
  xpmin:=xp1;
  end;
      if xq1>xq2 then
  begin
  xqmax:=xq1;
  xqmin:=xq2;

  end
  else
  begin
  xqmax:=xq2;
  xqmin:=xq1;
  end;
  ckud[1]:=85;
  ckud[2]:=10;
  ckud[3]:=15;
  ckud[4]:=90;
  min:=ckud[1];
  max:=ckud[1];

               for i:=1 to 4 do

     if ckud[i]>max then
     begin
      max:=ckud[i];

     end;
                for i:=1 to 4 do
     if ckud[i]<min then
     begin
      min:=ckud[i];

     end;

     min1:=ckud[1];
  max1:=ckud[1];
                for i:=1 to 4 do
     if ((ckud[i]>max1)and (ckud[i]<>max)) then
     begin
      max1:=ckud[i];
     end;
                 for i:=1 to 4 do
     if ((ckud[i]<min1)and (ckud[i]<>min)) then
     begin
      min1:=ckud[i];
     end;
           ps1:=(xpmax*(100-min))/100;
  ps2:=(xpmin*(100-min1))/100;
  qs1:=(xqmax*(100-max))/100;
   qs2:=(xqmin*(100-max1))/100;
       razn:=(ps1+ps2)-(qs1+qs2);
           Writeln(razn:0:2);
    readln;

    { TODO -oUser -cConsole Main : Insert code here }
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.
Помогите урезать программу если возможно,а то у меня мыслей уже нет никаких)Если вдруг что делал в Embarcadero RAD Studio.

Последний раз редактировалось Вася Маклауд; 14.06.2011 в 22:52.
Вася Маклауд вне форума Ответить с цитированием
Старый 14.06.2011, 17:54   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Embarcadero RAD Studio
Delphi чтоли?)

Проблема-то в чем? В смысле урезать? Зачем?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 14.06.2011, 18:07   #3
Вася Маклауд
 
Регистрация: 03.04.2011
Сообщений: 6
По умолчанию

нет в ней Consol Application есть)эт тип паскаль)В том смысле чтобы программа меньше места занимала я к олимпиаде готовлюсь а там требование чем меньше прога тем лучше
Вася Маклауд вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нахождение Разницы Между датами reihtmonbern Помощь студентам 16 14.10.2011 12:19
вычисление разницы между временными промежутками lessless Microsoft Office Excel 2 02.06.2011 22:48
задача на нахождение максимальной прибыли с учётом издержек Mary-Maddlen Microsoft Office Excel 4 24.02.2011 23:49
Нахождение в массиве максимальной суммы элементов byte916 Microsoft Office Excel 1 07.10.2009 13:03