Program vagoni; var a: array[1..15] of real; b: array[1..15] of real; c: array[1..15] of real; i,m,q,j,d,n: integer; s,max_num, max_index: real; begin n: =15; m: =10; q: =50; writeln('vvedite massy vagonov sostava m sostoyashego iz 15 vagonov'); s: =0; begin for i: =1 to n do begin write('vagon_',i,'-> '); readln(a[i]); end; end; writeln(' '); writeln('vse vagoni: '); for i: =1 to n do writeln('vagon_',i,'=',a[i],'tonn'); writeln(' '); writeln(' '); writeln('porojnie vagoni: '); for i: =1 to n do begin if (a[i] < = m) then writeln('porojniy vagon=', i); end; writeln(''); writeln('grujenie vagoni: '); for i: =1 to n do begin if (a[i] > m) then s: =s+a[i]; if (a[i] > m) then writeln('grujeniy vagon=', i); end; writeln('summa mass grujenih vagonov: ', s); if s> q then writeln('previshenie massy! sostav ne mojet bit sformirovan') else begin writeln; writeln('noviy sostav: '); j: =1; d: =1; for i: =1 to n{-1} do if a[i] > m then begin b[j]: =a[i]; writeln('vagon_',j,'=',b[j],'tonn'); j: =j+1; end else begin c[d]: =a[i]; d: =d+1; end; end; begin writeln(' '); writeln('ostatok: '); d: =d-1; while d> 0 do begin writeln('vagon_',d,'=',c[d],'tonn'); d: =d-1; end; end; writeln(' '); begin max_index : = 1; max_num : = b[1]; for i : = 2 to j do if b[i] > max_num then begin max_index : = i; max_num : = b[i]; end; writeln('maksimalnaya massa vagona sostava b=',max_num,' tonn', ' ego nomer: ',max_index); end; end. вот программа нужно чтоб формировался состав б в любом случае но не превышал 50 тонн, а остальные груженые вагоны вывести в остаток, и среди вагонов состава б найти вагон с максимальной массой