![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Alexey Besfomiln |
![]()
Сообщение
#1
|
Школьник ![]() Группа: Продвинутые Сообщений: 11 Регистрация: 4.1.2010 Город: Фрязино ![]() |
Условие задачи: Если в прямоугольной матрице все суммы элементов строк попадают на заданный отрезок, определить номер строки с максимальной суммой элементов, иначе определить номера строк, сумма элементов которых не попала на заданный отрезок.
Помогите исправить программу так, чтобы ввод матрицы 5 на 5 и границ отрезка c,b осуществлялся через нестандартные текстовые файлы Program V; type matr=array[1..5,1..5] of integer; type massiv=array[1..5] of integer; Procedure Summa(var S:massiv; var A:matr); var i,j; integer; begin for i:=1 to 5 do begin S[i]:=0; for j:=1 to 5 do S[i]:=S[i]+A[i,j]; end; end; Function Nomer(var S:massiv; c,b:integer):integer; var i,Number:integer; begin Number:=0; for i:=1 to 5 do begin if ((S[i]>c)and(S[i]<b)) then Number:=Number+1; end; end; Procedure Number_N(var S,N:massiv; c,b:integer); var i:integer; begin for i:=1 to 5 do begin if ((S[i]<c)or(S[i]>b)) then N[i]:=i else N[i]:=0; end; end; Function Number_max(var S:massiv):integer; var i,Nmax,max:integer; begin Nmax:=1; max:=S[1]; for i:=2 to 5 do begin if S[i]>max then begin Max:=S[i]; Nmax:=I; end; end; Number_max:=Nmax; end; Var A:matr; S,N:massiv; c,b,max,I,j,Nmax,Number:integer; begin write(‘vv c,b’); readln(c,b ); for i:=1 to 5 do for j:=1 to 5 do readln(A[I,j]); Summa(S,A); Nomer(S,c,b ); if Nomer(S,c,b )=5 then begin Number_max(S); writeln(‘Nmax=’, Number_max(S)); end else begin Number_N(S,N,c,b ); for i:=1 to 5 do writeln(‘N[i]=’, N[i]); end; end. Сообщение отредактировал tig81 - 30.5.2010, 19:27 |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 25.5.2025, 20:19 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru