Страница 3 из 3

Re: Небольшая программка на Паскале

Добавлено: 05 апр 2008, 19:41
Medved
Вероятно не совпадают столбец-строка. Замените мас2[i,j] на mas2[j,i]

Re: Небольшая программка на Паскале

Добавлено: 05 апр 2008, 19:47
scudo
Чтоб брался только один элемент со строки.Т.е.Если без а, то суммирует в 1 строчке все элементы которые находятся под вторым for. А именно: For j:=nach_stb to kon_stb do. Поэтому не осуществляется переход на вторую строку (осуществляется после того как закончит работу со столбцами). А надо чтоб было данным образом:

Матрица:
1 2 3 4

6 7 8 9

1 2 2 3

4 5 9 7.

Как в сумме появилось число необходимо строка+1 и столбец+1

Re: Небольшая программка на Паскале

Добавлено: 05 апр 2008, 19:54
Medved
Теперь я уже практически на сто процентов уверен что попутаны строки-столбцы

Re: Небольшая программка на Паскале

Добавлено: 05 апр 2008, 20:02
scudo

Код: Выделить всё

  For i:=nach_str to kon_str do
     For j:=nach_stb to kon_stb do
      begin
       a:=a+1;
        If a=1 then
         sum1:=sum1+mas2[j,i];
        If j=kon_stb then
         a:=0;
      end;
Ну вот. Там где осуществляется сумма поменял местами i и j. Выводит 28. Для выше приведенной матрицы. Данный код осуществляет работу тока в верхней части от главной диагонали. А если посчитать, то должен выводить 13

Re: Небольшая программка на Паскале

Добавлено: 05 апр 2008, 20:05
Medved
А в первоначальном варианте что выводил?

Re: Небольшая программка на Паскале

Добавлено: 05 апр 2008, 20:11
scudo
ОООО.Заоблачные цифры.Проверяю пошагово (выше приведенная матрица). После того как он переходит на 2 строку, сумма оказывается не 10 а 9.Менял немного матрицу.Т.е. вместо 7 писал 10 (указал на матрице в скобках где именно)

Матрица:
1 2 3 4

6 7(10) 8 9

1 2 2 3

4 5 9 7.

После этого сумма становилась не 9, а 12...Он почему то сумирует в самом начале 2 элемент столбеца из второй строки. Если есть желание посмотреть на программу то магу кинуть на мыло

Re: Небольшая программка на Паскале

Добавлено: 05 апр 2008, 20:47
scudo
Теперь подшаманил стал считать только одну диагональ

Re: Небольшая программка на Паскале

Добавлено: 06 апр 2008, 18:09
scudo
Всем Огромное спасибо! Разобрался с задачей.Все работает. :)