Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 12.09.2017
Сообщений: 200
1
Delphi 6-7

Найти сумму элементов квадратной матрицы на главной и побочной диагоналях

28.02.2018, 21:45. Показов 1805. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вроде делаю все правильно, но почему то не верно находит сумму элементы побочной диагонали, хотя с главной диагональю все хорошо
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
procedure TForm1.FormCreate(Sender: TObject);
var
  A: array[1..5, 1..5] of integer;
   S, i, j: integer;
   str: String;
begin
Randomize;
for i := 1 to 5 do
       for j := 1 to 5 do
         begin
           StringGrid1.Cells[j, i] := IntToStr(RandomRange(0, 10));
         end;
 
end;
 
procedure TForm1.Button1Click(Sender: TObject);
const
n =5;
var
A: array[1..n, 1..n] of integer;
   s, s1, i, j: integer;
   str: String;
begin
s:=0;
s1:=0;
for i:=1 to n -1 do
s:=s+strtoint(StringGrid1.Cells[i, i]);
s1:=s1 +strtoint(StringGrid1.Cells[i,n+1-i]); // думаю что проблема начинается здесь 
edit1.Text:= Floattostr(s) + ' ' + Floattostr(s1);
end;
Миниатюры
Найти сумму элементов квадратной матрицы на главной и побочной диагоналях  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2018, 21:45
Ответы с готовыми решениями:

Найти сумму элементов главной и побочной диагоналей квадратной матрицы порядка M
Дана квадратная матрица порядка M. Найти сумму элементов ее главной и побочной диагоналей. Не могу...

Дана квадратная вещ-я матрица размерности n x n. Сравнить сумму элементов матрицы на главной и побочной диагоналях

Найти сумму элементов в главной и побочной диагоналях матрицы
здравствуйте, помогите пожалуйста, завтра надо и экзамен сдавать и курсовую сдавать, а я с курсовой...

Найти сумму элементов на главной и побочной диагоналях матрицы
Задана матрица (9х9) из вещественных чисел.найти сумму элементов по диагонали выглядет на рис....

13
5395 / 4323 / 1060
Регистрация: 29.08.2013
Сообщений: 27,130
Записей в блоге: 3
28.02.2018, 22:30 2
ну а кто мешает взять отладчик в руки и посмотреть что вы складываете?

если не умеете отладчик сделайте
Delphi
1
ShowMessage(inttostr(n+1-i))
1
0 / 0 / 0
Регистрация: 12.09.2017
Сообщений: 200
28.02.2018, 23:04  [ТС] 3
Не совсем правильно понял, что вы имели в виду
0
1437 / 1014 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
28.02.2018, 23:38 4
Лучший ответ Сообщение было отмечено Joey как решение

Решение

У стринггрида отчёт с 0 начинается.
1
0 / 0 / 0
Регистрация: 12.09.2017
Сообщений: 200
28.02.2018, 23:40  [ТС] 5
Так где ошибка??
0
Джоуи
1081 / 643 / 240
Регистрация: 05.05.2015
Сообщений: 3,559
Записей в блоге: 2
01.03.2018, 00:39 6
Magicspree, Вы ответы хоть читали?
Цитата Сообщение от Magicspree Посмотреть сообщение
Delphi
1
2
3
for i := 1 to 5 do
     for j := 1 to 5 do
         begin StringGrid1.Cells[j, i]
Вот здесь, когда j будет равно 5, будет обращение r StringGrid1.Cells[1, 5] - фактически ко второй строке шестого столбца.
Цитата Сообщение от Matan! Посмотреть сообщение
У стринггрида отчёт с 0 начинается.
А так как у Вашего StringGrid только по пять и тех, и других, то...
Так понятнее?

Добавлено через 1 минуту
Далее
Цитата Сообщение от qwertehok Посмотреть сообщение
если не умеете отладчик сделайте
Delphi
1
ShowMessage(inttostr(n+1-i))
0
0 / 0 / 0
Регистрация: 12.09.2017
Сообщений: 200
01.03.2018, 18:24  [ТС] 7
Постойте, черт вроде простое задание, а туплю жеско
Вы выделили мой код, но по факту он же правильный матрица строится правильно. Так же правильно высчитывается ГЛАВНАЯ диагональ, проблемы только с побочной
Delphi
1
2
3
for i := 1 to 5 do
     for j := 1 to 5 do
         begin StringGrid1.Cells[j, i]
0
Модератор
9261 / 6039 / 2379
Регистрация: 21.01.2014
Сообщений: 25,803
Записей в блоге: 3
02.03.2018, 05:35 8
Цитата Сообщение от Magicspree Посмотреть сообщение
матрица строится правильно
Не может она строиться правильно при таком цикле...
даже на скрине Вашем матрица 4х4, а по циклу - 5х5
0
1437 / 1014 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
02.03.2018, 10:08 9
Magicspree, мой Вам совет - установите FixedCol и FixedRow в 0. Если Вам нужны обычные матрицы, то фиксированные строки и столбцы ни к чему.
0
0 / 0 / 0
Регистрация: 12.09.2017
Сообщений: 200
02.03.2018, 11:56  [ТС] 10
А почему тогда главную диагональ считает правильно?
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
02.03.2018, 12:33 11
Считать нужно не в StringGrid, а в матрице.
Пусть матрица статистический массив.
Delphi
1
2
3
4
5
6
7
sg:=0;
sp:=0;
for i:=1 to n do
 begin
  sg:=sg+a[i,i];
  sp:=sp+a[i,n-i+1];
 end;
StringGrid использовать для вывода матрицы и, если ввод не рандом, то для ввода элементов матрицы.
1
0 / 0 / 0
Регистрация: 12.09.2017
Сообщений: 200
04.03.2018, 21:44  [ТС] 12
Не работает код
Цитата Сообщение от Puporev Посмотреть сообщение
DelphiВыделить код
1
2
3
4
5
6
7
sg:=0;
sp:=0;
for i:=1 to n do
*begin
* sg:=sg+a[i,i];
* sp:=sp+a[i,n-i+1];
*end;
Добавлено через 49 секунд
Не работает код
0
Джоуи
1081 / 643 / 240
Регистрация: 05.05.2015
Сообщений: 3,559
Записей в блоге: 2
05.03.2018, 00:02 13
Цитата Сообщение от Magicspree Посмотреть сообщение
Не работает код
А поподробнее: что не работает, какую ошибку выдает и т.д.
0
Модератор
9261 / 6039 / 2379
Регистрация: 21.01.2014
Сообщений: 25,803
Записей в блоге: 3
05.03.2018, 06:42 14
Цитата Сообщение от Magicspree Посмотреть сообщение
Не работает код
У меня этот фрагмент - работает! Главное его грамотно применить! А Вашего кода с приведенным фрагментом ни я и никто иной не видел! Так что заявление голословно!
0
05.03.2018, 06:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.03.2018, 06:42
Помогаю со студенческими работами здесь

Найти сумму отрицательных элементов на главной и побочной диагоналях матрицы
В данной действительной квадратной матрице порядка N*N.Найти : сумму отрицательных элементов на...

Найти сумму элементов ее главной и побочной диагоналей квадратной матрицы
Дана квадратная матрица порядка M. Найти сумму элементов ее главной и побочной диагоналей....

Найти сумму элементов квадратной матрицы X(n,n), находящихся на главной диагонали и на побочной
Найти сумму элементов квадратной матрицы X(n,n), находящихся на главной диагонали и на побочной...

Найти сумму элементов главной и произведение элементов побочной диагоналей квадратной матрицы
Найти сумму элементов главной и произведение элементов побочной диагоналей квадратной матрицы. в c#


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru