1. Пользуйтесь тегами кода. - [code] ... [/code] 2. Точно указывайте язык, название и версию компилятора (интерпретатора). 3. Название темы должно быть информативным.
В описании темы указываем язык!!!
Помогите, пожалуйста, перевести задачу из Паскаля в С Вот условие:
Цитата
Дана целочисленная квадратная матрица. Определить: 1) сумму элементов в тех столбцах, которые не содержат отрицательных элементов; 2) минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы. Переставить строки матрицы в порядке неубывания элементов первого столбца.
Вот её решение на Паскале:
program mat; var a: array [1..100,1..100] of integer; b: array [1..100] of integer; i,j,n,k,t,s: integer; summ, min, ukaz: integer; begin randomize; writeln('Введите размерность матрицы'); readln(n); For i:=1 to n do begin For j:=1 to n do begin a[i,j] := random(100)-7; write (a[i,j]:2,' '); end; writeln; b[i]:= 0; min:=a[1,1]; end; ukaz:=0; for j:=1 to n do begin s:=0; for i:=1 to n do if A[i,j] >= 0 then inc(s, A[i,j]) else begin s:=-1; ukaz:=ukaz+1; break end; if s >= 0 then writeLn('Сумма в неотрицательном столбце ', s) else if ukaz=n then writeln('Положительных столбцов нет!'); end; writeln; writeln('Суммы диагоналей выше побочной (по модулю)'); For j:=1 to n-1 do Begin summ := 0; For i:=1 to n-j do summ := summ + abs(a[i,n-j-i+1]); b[j] := summ; if abs(b[j])<min then min:=abs(b[j]); write(b[j],' '); end; writeln; writeln; writeln('Суммы диагоналей ниже побочной (по модулю)'); For j:=2 to n do Begin summ := 0; For i:=j to n do summ := summ + abs(a[i,n-i+j]); b[j+n-2] := summ; if abs(b[j+n-2])<min then min:=abs(b[j+n-2]); write(b[j+n-2],' '); end; writeln; writeln; writeln('Минимум среди сумм диагоналей ',abs(min)); writeln('Преобразованный массив '); for i:=1 to n do for j:=n downTo i+1 do if a[j-1,1]>a[j,1] then for k:=1 to n do begin t:=a[j-1,k];a[j-1,k]:=a[j,k];a[j,k]:=t end; for i:=1 to n do begin for j:=1 to n do write(a[i,j]:4); writeln; end; readln end.