|
|
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
не могу найти ошибку (запутался в алгоритме по ходу) нужно в целочисленной квадратной матрице определить минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы вот сама прога... че-то я там перемудрил с алгоритмом.. не могли бы помочь? заранее благодарен! #include <iostream> #include <conio.h> int main() { int nrow, ncol; ... в этом промежутке вводится сама матрица =) // вычисление минимума среди сумм элементов диагоналей параллельной главной //кол-во диагоналей int n, c, e, min, d; //d - номер диагонали, с - счетчик c = 0; e = 0; n = ncol + nrow - 2; int *dsum=new int [n]; for(i=0;i<=n;i++) dsum =0; // для диагоналей выше главной for(d=1;d<=n-1;d++) { for(i=d;i<=d-1;i++) { dsum[e]+=a[i-d]; c++; if(c==(n-d)){e++; c=0;} } } // для диагоналей ниже главной for(d=1;d<=n-1;d++) { for(i=d;i<=n-1;i++) { dsum[e]+=a[i-d]; c++; if(c==(n-d)) {e++;c=0;} } } //вычисление минимума for (i=0;i<=n;i++) cout<<dsum<<" "; cout<<endl; min=dsum[0]; for(i=1;i<=n ;i++) if (dsum<min) min=dsum; cout<<"Min sredi summ diagonaley: "<<min; getch(); return 0; } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2006, 23:18 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
Ты хоть-бы присылал рабочее сорсы! Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Лентяй! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2006, 23:38 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
блин. не ту версию вставил =)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2006, 23:50 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 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. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. вот это вроде пашет.. тока с ошибкой =( там вначале еще считает сумму элементов в строках не содеаржих отрицательных элементов, но на это не обращайте внимания =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2006, 23:54 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
(качает головой, просматривая) Ой-ой-ой... А это зачем? Матрица ведь по заданию - квадратная. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 00:16 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
ну это ведь не критично =)) посто начал делать так, потом лень было переписывать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 00:28 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
Вижу, ты уже зарегистрировался? Правильно! (откидывается на спинку кресло, закуривая) Ну.. что-ж. Тогда вопрос? В твоём задании ничего не сказано про обработку отрицательных чисел . А в программе - следы того, как ты суетишся. Делаешь какие-то проверки. Включаешь какие-то флажки. Следовательно ты не огласил исходную формулировку! Так? Поясни! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 00:51 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
вот полностью задание: авторДана целочисленная квадратная матрица. Определить: 1) сумму элементов в тех строках, котороые не содержат отрицательных элементов 2) минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 02:41 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
(заходит с чашкой кофе) Доброе утро, юноша! Прошу прощения, что зашел так поздно. (садится) Значит так. Твоя программа состоит из 3х частей. 1) Ввод матрицы Проверять её я не хочу. Условно считаю, что в ней нет ошибок. 2) Вычисление сумм по горизонтали. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 3) Частичные суммы по диагоналям . Здесь у тебя трудности. Верно? Код: plaintext 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. 31. 32. Разгребать этот код, не хочется. Вижу, что ты пошел по пути усложнения условий цикла. (похоже на сканирование верхнего и нижнего треугольников матрицы). Я предлагаю тебе этот код выбросить и написать новый по следующему принципу. Принцип: для того, чтобы вычислить минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы, достаточно посетить каждый элемент только один раз, и порядок посещения при этом произволен. Т.е. никаких треугольников не нужно. Единственная сложность - это формула отображения элемента a(i,j) в соответствующий элемент вектора частичных сумм m(). Я думаю, эту формулу ты напишешь. В этом случае, текст исходника упростится до простых двух вложенных циклов с жесткими границами по всем элеменам матрицы. Ну как? Осилишь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 11:48 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
mayton Принцип: для того, чтобы вычислить минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы, достаточно посетить каждый элемент только один раз, и порядок посещения при этом произволен. Т.е. никаких треугольников не нужно. Единственная сложность - это формула отображения элемента a(i,j) в соответствующий элемент вектора частичных сумм m(). Я думаю, эту формулу ты напишешь. В этом случае, текст исходника упростится до простых двух вложенных циклов с жесткими границами по всем элеменам матрицы. Ну как? Осилишь? мм.. нельзя ли чуть подробнее? у меня проблемы именно с алгоритмом прохода по диагоналям.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 14:33 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
Ох... студент! Ну смотри. Даю кусок на Java. (Под рукой оказался компиллер потому-что). Сам переведешь на Си. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. SIZE+j-i-1 - это есть наклонная прекция ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2006, 21:59 |
|
||
|
помогите пожалуйста
|
|||
|---|---|---|---|
|
#18+
(наконец подключась к интрнету) оО. спасибо большое! =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2006, 19:44 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34179053&tid=2029870]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
172ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 528ms |

| 0 / 0 |
