Подскажите, чего не хватает в процедуре?
Последняя процедура должна выводить наименьшую зарплату. Что-то никак не пойму где в ней что прописать, подскажите пожалуйста. Остальное всё работает корректно. Выкладываю всё что бы проще разобраться было
program RAbota; const N=3; type worker=record; Name: String [30]; Salary:Integer; Podrazdel: String [50]; Number: String [2]; end; var Org : array [1..N] of worker; i,Min:Integer; procedure Vvod (var S:Worker); begin writeln ('Введите ФИО'); readln (S.Name); writeln ('№ подразделения'); readln (S.Podrazdel); writeln ('Введите личный №'); readln (S.Number); writeln ('Введите размер оклада'); readln (S.Salary); end; Procedure Vivod (S:Worker); begin writeln (S.Name, ':', S.Podrazdel, ':', S. Number, ':', S.Salary); end; procedure Abc(Org:Worker); begin Min:=Org. for i:=1 to N do if S.Salary<Min then Min:=S.Salary; writeln ('Минимальная зарплата =', Min); end; begin For i:=1 to N do Vvod (Org[i]); for i:=1 to N do vivod (Org[i]); Abc (Worker[i]) end. |
Ошибок - просто море.
1. Параметру процедуры Abc Вы зачем-то присваиваете имя глобальной переменной Org. Зачем? 2. В то же время внутри процедуры Вы пытаетесь манипулировать с переменной-записью S, для данной процедуры вовсе не определенной. 3. Изначальное значение переменной Min в виде Org. (и никакого поля!!!) - полнейшая нелепость. 4. В теле основной программы запись вида Abc (Worker[i]) - тоже нечто невразумительное. Если по замыслу обращение к процедуре Abc входит в цикл по i, то: а) процедуры vivod и Abc, составляющие тело цикла, должны быть заключены в операторные скобки begin end. Но этого не сделано. б) Применение того же глобального счетчика (i) без переопределения в теле процедуры абсолютно недопустимо. Если же обращение Abc (Worker[i]) НЕ входит в глобальный цикл, то что тогда там такое i и зачем оно? В общем так. Я бы это организовал как-нибудь в таком роде: Код:
procedure Abc; |
Спасибо за помощь, но вы меня не совсем так поняли) в процедуре Abc имена параметру процедуры и прочил состовляющих я поставил от балды, тк отчался найти рабочую их комбинацию...
А за столь подробные обьяснения большое спасибо:tehnari_ru_203: |
Часовой пояс GMT +4, время: 16:28. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.