Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

petrov52 avatar petrov52 4 Точки

Lists and Matrices Exercises - Problem 3 Diagonal difference

Здравейте,

 

Имам проблем със тази задача: Write a program that finds the difference between the sums of the square matrix diagonals (absolute value).

Не мога да направя така че while loop-а да е правилен и да се печата правилния резултат. Ето кода: http://pastebin.com/jENfK7n7

 

Подозирам, че проблема е тук: rdTotal += arr[left++, right];

input: 3
          11 2 4
          4 5 6
         10 8 -12

desired output: 15

actual output: 6

 

0
Fundamentals Module 05/06/2016 15:28:44
petrov52 avatar petrov52 4 Точки

Ето решението на проблемната част от кода :) 

while (left <= (N - 1))
        {


            ldTotal += arr[left, left];


            rdTotal += arr[left, right];
            left++;
            right--;
        }

0
Nikola_Andreev avatar Nikola_Andreev 671 Точки

Аз ето така го коригирах и работи.

while (left < N )
        {

            ldTotal += arr[left, left];

            rdTotal += arr[left++, right--];
        }

При стария код rdTotal не ти смяташе вярно, понеже не сменяше превилно позицийте. И цикълът спираше с 1 стъпка по рано, затова промених условието му.

1
05/06/2016 15:34:23
petrov52 avatar petrov52 4 Точки

И аз подозирах, че проблемът е в rdTotal, но реших да пренапиша целия цикъл.

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.