• решить задачу (паскаль)
    В массиве хранится информация о годе рождения каждого из 30 человек. Определить порядковый номер самого старшего по возрасту человека.
    Если таких людей несколько, то должен быть найден номер:
    а) первого из них;
    б) последнего из них.
    При определении возраста учитывать только год рождения (месяц и день не учитывать).

Ответы 6

  • спасибо))
  • Решение некорректное. требуется "Определить порядковый номер самого старшего по возрасту человека", если такой человек один, программа выдает ответ вида "Index first: 3 Index last: 3"
  • Можно, чтобы много не переделывать, вставить проверку на maxAgeP=maxAgeLIndex last: 3
  • Ну так как я думал что раз задания под разными номерами, то это 2 разных задания и просто соединил их. Но спасибо за наставление.
  • Ну вот так вот можно!!!!!
    answer img
  • // PascalABC.NET 3.1, сборка 1250 от 28.05.2016begin  var a:=ArrRandom(30,1960,2016); a.Println;  var iFirst:=a.IndexMin;  var iLast:=iFirst;  var vMin:=a[iFirst];  for var i:=29 downto iFirst+1 do    if a[i]=vMin then begin iLast:=i; break end;  if iLast=iFirst  then Writeln('Самый старший человек номер ',iFirst+1)  else Writeln('Первый из самых старших людей имеет номер ',    iFirst+1,', последний из людей этого возраста - номер ',    iLast+1)end.Тестовое решение1987 1971 1974 1989 1989 1960 1987 2016 1992 1962 1971 2011 1993 1962 2008 1994 1994 1976 1988 2014 2011 1960 1971 2000 1973 2010 1964 1976 1971 1993Первый из самых старших людей имеет номер 6, последний из людей этого возраста - номер 22
    answer img
    • Автор:

      misael
    • 6 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years