Помощь - Поиск - Пользователи - Календарь
Полная версия: Как вычеслить совпадения в массиве?
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Wild_klas
Есть массив: имя, кол-во, и вес.
 P:Passenger = ((Name:'Lubkovsky';Number:3;Wt:2.5),
(Name:'Davudov';Number:5;Wt:7),
(Name:'Beluy';Number:4;Wt:5),
(Name:'Molodenova';Number:5;Wt:7.5),
(Name:'Sereda';Number:8;Wt:9.5));





Нужно определить следущее: имеються ли 2 человека с одинаковым кол-вом и разлиаються по весу не более чем на 0.5
Я задал так что есть совпадение:
Как вычеслить совпадения в массиве?код Pascal/Delphi

  (Name:'Davudov';Number:5;Wt:7),
(Name:'Molodenova';Number:5;Wt:7.5),





А вот как это посчитать, и вывести? Подскажите пожалуйста.
volvo
found := false;
for i := 1 to n - 1 do
for j := i + 1 to n do
begin
if (p[ i ].number = p[ j ].number) and (abs(p[ i ].wt - p[ j ].wt) <= 0.5)
then found := true;
end;


А потом проверишь found. Если False - то не было двух человек, удовлетворяющих условию. Если True - то были как минимум двое (может и больше)...
Wild_klas
Спасибо, разобрался. smile.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.