![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Пользователь
Регистрация: 13.07.2008
Сообщений: 11
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#12 |
Форумчанин Подтвердите свой е-майл
Регистрация: 22.01.2008
Сообщений: 161
|
![]()
В смысле - шаблонов? Должны работать для матрицы любой размерности?
|
![]() |
![]() |
![]() |
#13 |
Старожил
Регистрация: 13.10.2007
Сообщений: 2,740
|
![]()
По первой задаче по поиску локальных минимумов есть код на Паскале, может кто переведет. Там правда еще поиск максимальнлго среди них, специально не вычеркнул, вдруг кому надо. Ну а сумму модулей элементов выше диагонали это детство.
Код:
|
![]() |
![]() |
![]() |
#14 | |
Пользователь
Регистрация: 13.07.2008
Сообщений: 11
|
![]() Цитата:
{ for (int i=0;i<n;i++) { cout << RUS("Введите элементы строки ") << (i+1) << ":"; for (int j=0;j<n;j++) cin >> matr[i*n+j]; cout << endl; } } template <class T> void out_array(T *matr,int n) { for (int i=0;i<n;i++) { cout << RUS("Элементы строки ") << (i+1) << ":"; for (int j=0;j<n;j++) cout << setw(4) << matr[i*n+j]; cout << endl; } } template <class T> Type max m(Type*a,int n); { int i; for (max=a[0], max n=0, i=0;i<n;i++)if(max<n[i]{max=n[i];max n=i}); for (int j=0;j<n;j++) |
|
![]() |
![]() |
![]() |
#15 |
Форумчанин Подтвердите свой е-майл
Регистрация: 22.01.2008
Сообщений: 161
|
![]()
2 puporev: в этом-то и проблема, пока на Си переводить некому, на Паскале я бы давно написал, а не мучался и писал бы алгоритм словами
2 FatalX: увы не могу проверить ваш код - на Си не говорю и не пишу, так что извиняйте, помог чем смог |
![]() |
![]() |
![]() |
#16 |
Пользователь
Регистрация: 13.07.2008
Сообщений: 23
|
![]()
Типа того что есть с учётом того что это С++ ( При обращении например к arr[-1][n] возьмёт число из потока а нам этого не нуна
![]() #include "math.h" #include "windows.h" #include "iostream.h" #include "stdlib.h" #include "time.h" void main () { const int n=10, m=10; SetConsoleOutputCP(1251); int arr [n][m]; int i, j; int iCountLM=0; bool flag; int iSummAbsUpMain=0; srand(time(NULL)); cout << "Исходная матрица \n"; for (i=0 ; i<n; i++) { for (j=0; j<m; j++) { arr[i][j]= -100+rand()%201; cout << arr[i][j] << " "; } cout << endl; } for (i=0 ; i<n; i++) { for (j=0; j<m; j++) { flag = true; // По умолчанию элемент есть ЛМ // если где-то он неудовлетворит условию, ЛМ он не будет // left up if (!(i-1<0)) { if (arr[i][j]>=arr[i-1][j-1]) flag = false; } // up if (!(i-1<0)) { if (arr[i][j]>=arr[i-1][j]) flag = false; } //right up if (!(j>m-1)) { if (arr[i][j]>=arr[i-1][j+1]) flag = false; } //right if (!(j+1>m-1)) { if (arr[i][j]>=arr[i][j+1]) flag = false; } //ritht down if (!(j+1>m-1)) { if (arr[i][j]>=arr[i+1][j+1]) flag = false; } //down if (!(i+1>n-1)) { if (arr[i][j]>=arr[i+1][j]) flag = false; } //left down if (!(i+1>n-1)) { if (arr[i][j]>=arr[i+1][j-1]) flag = false; } //left if (!(j<0)) { if (arr[i][j]>=arr[i][j-1]) flag = false; } if (flag) iCountLM+=1; } } cout << "Локальных минимумов" << iCountLM<< endl; for (i=0; i<n; i++) { for (j=0; j<m; j++) { if (j>i) iSummAbsUpMain+=abs(arr[i][j]); } } cout << "Сумма модулей элементов над главной диагональю " << iSummAbsUpMain<< endl; } Последний раз редактировалось Igoressicus; 13.07.2008 в 21:13. Причина: Пояснения |
![]() |
![]() |
![]() |
#17 | |
Пользователь
Регистрация: 13.07.2008
Сообщений: 11
|
![]() Цитата:
![]() Последний раз редактировалось FatalX; 13.07.2008 в 21:22. |
|
![]() |
![]() |
![]() |
#18 |
Пользователь
Регистрация: 17.04.2009
Сообщений: 43
|
![]()
Ребята, помогите мне, пожалуйста! очень срочно нужно 2 задачи по паскалю до понедельника(((
|
![]() |
![]() |
![]() |
#19 |
Участник клуба
Регистрация: 29.07.2008
Сообщений: 1,091
|
![]()
Выкладывай, рассмотрим.А вообще, нужно было создавать другую тему.
Кто бы ты ни был - не думай о себе слишком (с)
|
![]() |
![]() |
![]() |
#20 |
Пользователь
Регистрация: 17.04.2009
Сообщений: 43
|
![]()
я не разберусь куда писать!объясните,если не сложно.пожалуйста!
|
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
матрицы | chelsi | Паскаль, Turbo Pascal, PascalABC.NET | 13 | 25.04.2008 10:07 |
матрицы | tonic | Microsoft Office Excel | 2 | 10.01.2008 14:47 |
матрицы | Ensoph | Помощь студентам | 1 | 24.10.2007 09:38 |