|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.12.2009, 21:26 | #1 |
Пользователь
Регистрация: 15.03.2009
Сообщений: 34
|
Матрица в Си
Если все элементы какой-нибудь строки матрицы равны между собой, то все элементы такой строки заменить нулями!
Как это сделать??, помогите.... |
06.12.2009, 22:15 | #2 |
Пользователь
Регистрация: 29.11.2009
Сообщений: 14
|
Можно так
for (i=0;i<n;i++) { k=0; //as flag for (j=0;j<m-1;j++) { if (b[i][j]!=b[i][j+1]) break; else k=1; } if (k==1) for (j=0;j<m;j++) b[i][j]=0; не элегантно, но работает |
06.12.2009, 23:37 | #3 |
Пользователь
Регистрация: 15.03.2009
Сообщений: 34
|
может я с выводом что не так сделал?? не хочет выводить((
Код:
Последний раз редактировалось iggor; 07.12.2009 в 00:36. |
07.12.2009, 00:21 | #4 |
Пользователь
Регистрация: 29.11.2009
Сообщений: 14
|
В циклах ввода и вывода счетчик цикла строго меньше длин строк и столбцов, а также размер массива не должен превышать 4
|
07.12.2009, 00:35 | #5 |
Пользователь
Регистрация: 15.03.2009
Сообщений: 34
|
то что размер не превышает 4 это ясно, исправил <= на <, теперь выводит..., только те же числа которые ввожу с клавы....
Последний раз редактировалось iggor; 07.12.2009 в 00:42. |
07.12.2009, 01:01 | #6 |
Пользователь
Регистрация: 29.11.2009
Сообщений: 14
|
Iggor, I am sorry, но в прошлый раз я ошибся в коде, правильно так:
#pragma argsused #include <stdio.h> #include <conio.h> int main(int argc, char* argv[]) {int nstr,nstb,i,j,k; int a[4][4]; {printf("\nVvedite kol-vo strok: "); scanf ("%d",&nstr); printf("\nVvedite kol-vo stolbcov: "); scanf("%d",&nstb);} printf("\nVvedite elementi massiva: \n"); {for (i=0;i<nstr;i++) for (j=0;j<nstb;j++) scanf("%d",&a[i][j]);} for (i=0;i<nstr;i++) { k=0; for (j=0;j<nstb-1;j++) { if (a[i][j]!=a[i][j+1]) { k=0; break; } else k=1; } if (k==1) for (j=0;j<nstb;j++) a[i][j]=0; } printf("\nnovi massiv:\n"); for (i=0;i<nstr;i++) { for (j=0;j<nstb;j++) printf("%2d",a[i][j]); puts(""); } getch(); return 0; } |
07.12.2009, 01:24 | #7 |
Пользователь
Регистрация: 15.03.2009
Сообщений: 34
|
Спасибо большое....!!!!!!
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Непонятки с DirectX (матрица поворота, камера, матрица проекции) | ROD | Общие вопросы C/C++ | 2 | 17.09.2010 17:00 |
TurboPascal: граф, матрица смежности и матрица инцидентности. | ulala | Помощь студентам | 0 | 02.12.2009 10:11 |
Матрица на C++ | Maxs | Помощь студентам | 5 | 31.05.2009 14:35 |
Матрица | jorjinho10 | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 14.05.2009 15:18 |
Матрица | BlonDino4Ka | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 07.01.2009 00:04 |