Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 09.05.2013
Сообщений: 8
1

Найти номер рынка, где цена земляники минимальна, если человек не хочет идти до рынка, удаленного от дома на расстояние большее, чем R

09.05.2013, 13:50. Просмотров 553. Ответов 1
Метки нет (Все метки)

На N рынках продают землянику. Расстояние от дома до рынка известно. Найти номер рынка, где цена земляники минимальна, если человек не хочет идти до рынка, удаленного от дома на расстояние большее, чем R. Если таких рынков несколько, то вывести первый по номеру.
Никак не могу понять в чём ошибка, программа выводит минимальную цену из всех, а вместо номера рынка - количество всех рынков
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Program Pr4;
const
  R=5;
var
  rr,c:array [0..20] of integer;
  i,n,min,imin:integer;
begin
write ('Количество рынков: ');
read (n);
for i:=1 to n do
  begin
    write ('Расстояние от ', i, '-го рынка до дома: ');
    read (rr[i]);
    write ('Цена земляники на этом рынке: ');
    read (c[i]);
  end;
min:=maxint;
for i:= 1 to n do
  begin
    if (c[i]<min) and (rr[i]<=R) then
      min:=c[i];
      imin:=i;
  end;
writeln (min, ' ', imin)
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.05.2013, 13:50
Ответы с готовыми решениями:

Массивы: найти номер рынка, где продаются самые дешевые ягоды
Известны цены на землянику на n рынках Москвы. Известно расстояние от дома покупателя до каждого...

Специфика рынка капиталов и рынка денег.Определение параметров равновесия на рынке денег
Спекулятивный спрос на деньги описывается уравнением MDсп. = 365 - 25*i, где i - процентная ставка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
bmstu-team
301 / 136 / 91
Регистрация: 10.01.2012
Сообщений: 420
Записей в блоге: 10
10.05.2013, 11:31 2
Используйте типы - поможет связать массивы + флажок для нахождения первого рынка.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Program Pr4;
uses crt;
  type rinok = record
  price:integer; s:integer;
  end;
const R=5;
var
  c:array [0..20] of rinok;
  i,n,min,imin,k:integer;
begin
write ('Êîëè÷åñòâî ðûíêîâ: ');
readln(n);
    for i:=1 to n do begin
    write ('Ðàññòîÿíèå îò ', i, '-ãî ðûíêà äî äîìà: '); readln(c[i].s);
    write ('Öåíà çåìëÿíèêè íà ýòîì ðûíêå: '); readln(c[i].price);
    end;
min:=c[1].price;
k:=0;
     for i:= 2 to n do begin
     if (c[i].price<min) and (c[i].s<=R) and (k=0) then begin
     min:=c[i].price; imin:=i; inc(k);
     end; end;
 
writeln ('Èñêîìàÿ öåíà ',min,' íà ', imin,' ðûíêå')
end.
0
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.