Задача на Паскале
Пусть дано натуральное число n и целочисленная квадртная матрица порядка n. Получите b1,...bn где bi - это: сумма элементов, предшествующих последнему отрицательному элементу i-й строки (если все элементы строки неотрицательны, то принять bi=-1)
Другие языки программирования и технологии
Помогите, пожалуйста с задачей :( Сижу, туплю уже какой день, вообще не соображу - чтокуда. Задача на Паскале
Ну давайте разбираться:
Пусть дано натуральное число n и целочисленная квадртная матрица порядка n.
--Здесь все понятно.
Получите b1,...bn
--Нужно получить одномерный массив. Предположим у нас матрица 3 порядка, 9 чисел. Нужно получить 3 числа.
где bi - это: сумма элементов, предшествующих последнему отрицательному элементу i-й строки
--Каждое число в одномерном массиве - это сумма элементов i-й строки, после последнего отрицательно числа в этой строке.
--Пример: 5 2 -6
_________3 -4 6
_________1 2 3
--На выходе будет 3 числа: 0, 6, -1.
--Также стоит учесть, и обратить внимание на слово "последнему".
(если все элементы строки неотрицательны, то принять bi=-1)
--Здесь думаю тоже всё понятно.
Imobilazer, что-то у вас все очень сложно. Зачем, если всё можно сделать гораздо проще:
program tt;
var i,j,n,o :longint;
a :array[1..100,1..100] of longint;
b,c :array [1..100] of longint;
Begin
readln(n);
for i:=1 to n do begin
for j:=1 to n do begin read(a[i,j]); end; end;
for i:=1 to n do begin o:=0;
for j:=1 to n do begin
b:=b+a[i,j];
if(a[i,j]<0) then begin b:=0; end;
if(a[i,j]>0) then begin o:=o+1; end;
if(o=n) then begin b:=-1; end;
end; end;
for i:=1 to n do begin writeln(b); end;
End.
Пусть дано натуральное число n и целочисленная квадртная матрица порядка n.
--Здесь все понятно.
Получите b1,...bn
--Нужно получить одномерный массив. Предположим у нас матрица 3 порядка, 9 чисел. Нужно получить 3 числа.
где bi - это: сумма элементов, предшествующих последнему отрицательному элементу i-й строки
--Каждое число в одномерном массиве - это сумма элементов i-й строки, после последнего отрицательно числа в этой строке.
--Пример: 5 2 -6
_________3 -4 6
_________1 2 3
--На выходе будет 3 числа: 0, 6, -1.
--Также стоит учесть, и обратить внимание на слово "последнему".
(если все элементы строки неотрицательны, то принять bi=-1)
--Здесь думаю тоже всё понятно.
Imobilazer, что-то у вас все очень сложно. Зачем, если всё можно сделать гораздо проще:
program tt;
var i,j,n,o :longint;
a :array[1..100,1..100] of longint;
b,c :array [1..100] of longint;
Begin
readln(n);
for i:=1 to n do begin
for j:=1 to n do begin read(a[i,j]); end; end;
for i:=1 to n do begin o:=0;
for j:=1 to n do begin
b:=b+a[i,j];
if(a[i,j]<0) then begin b:=0; end;
if(a[i,j]>0) then begin o:=o+1; end;
if(o=n) then begin b:=-1; end;
end; end;
for i:=1 to n do begin writeln(b); end;
End.
Примерный алгоритм (для 1-й строки)
for j = 1 to n //цикл от 1 до n
if a[1, j]< 0 then k:=j //получаем номер k последнего отрицательного числа в строке
//конец цикла
//если k=0 то берем b из условия, иначе запускаем цикл
for j=1 to (k-1) //цикл от 1 до элемента, предшествующего последнему отрицательному
b[1]:= b[1] + a[1, j] //ищем сумму
//вывести b[1]
//конец цикла
for j = 1 to n //цикл от 1 до n
if a[1, j]< 0 then k:=j //получаем номер k последнего отрицательного числа в строке
//конец цикла
//если k=0 то берем b из условия, иначе запускаем цикл
for j=1 to (k-1) //цикл от 1 до элемента, предшествующего последнему отрицательному
b[1]:= b[1] + a[1, j] //ищем сумму
//вывести b[1]
//конец цикла
И все дни только тупили, даже кусочка кода не написали? )))
Чот я сення добры, надеюсь не наворотил спросонья =)

Чот я сення добры, надеюсь не наворотил спросонья =)

Похожие вопросы
- Pascal. Помогите пожалуйста решить задачу в паскале !
- Помогите,пожалуйста,решить задачу в Паскале.
- Помогите пожалуйста с задачей на Паскаль.
- Помогите пожалуйста набрать задачу на паскале или на С++
- Помогите пожалуйста решить задачу в паскале.
- помогите пожалуйста!!!!решить задачу на паскале...
- помогите пожалуйста решить задачи в паскале очень нужно!
- Помогите пожалуйста решить задачу в Паскале!
- Люди помогите пожалуйста решить задачу по паскалю
- Помогите пожалуйста с задачей в Паскале!