Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.03.2009, 13:44   #1
STS_1991
Пользователь
 
Регистрация: 18.02.2009
Сообщений: 13
По умолчанию Двумерные массивы на С.Помогите решить.

Вывод элементов.
Дана квадратная матрица A порядка M (M — нечетное число). Начиная с элемента A1,1 и перемещаясь против часовой стрелки, вывести все ее элементы по спирали: первый столбец, последняя строка, последний столбец в обратном порядке, первая строка в обратном порядке, оставшиеся элементы второго столбца и т. д.; последним выводится центральный элемент матрицы.
Вычисление характеристик.
Дана квадратная матрица порядка M.
Обнулить элементы матрицы, лежащие на побочной диагонали и ниже нее. Условный оператор не использовать.
Помогите решить пожалуйста.
STS_1991 вне форума Ответить с цитированием
Старый 17.05.2009, 19:27   #2
depo111
Пользователь
 
Регистрация: 13.04.2009
Сообщений: 10
По умолчанию

Помите доделать програмку дана матрица размера А(5*5) нужно заменить в строке элементы нулями которые лежат левее наибольшего(максимального) в строке к примеру вводим первую строку(на примере первой строки) 1 3 7 2 7
а результат должен быть такой 0 0 7 2 7 я так думаю тут нужно найти минимальный индекс j - столбца и присвоить ему max но почемуто не получается
#include <stdio.h>
#include <conio.h>
#define N 5
void main()
{clrscr();
int A[N][N],i,j,max,m,h,l=0;
FILE *fp;
fp=fopen("lab3.txt", "w");
for (i=0;i<N;i++)
for (j=0;j<N;j++)
{
printf ("Vvedite A[%d][%d]",i+1,j+1);
scanf ("%d", &A[i][j]);
}
clrscr();
printf ("icxodnaya matrica\n");
fprintf (fp,"icxodnaya matrica\n");
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{
printf ("%d ",A[i][j]);
fprintf(fp,"%5d", A[i][j]);
}

printf("\n");
fprintf(fp,"\n");
}
printf("\n");
for (i=0;i<N;i++)
{ max=A[i][0];
for (j=0;j<N;j++)
if (A[i][j]>=max) max=A[i][j];
printf("Max %d ctroki %d\n",i+1,max);
fprintf(fp,"Max %d ctroki %d\n",i+1,max);
for (h=0;h<N;h++)
if (A[i][h]==max) l=h;
for (m=0;m<l;m++)
if (A[i][m]!=max) A[i][m]=0;
}
printf("\n");
printf ("Rezultat raboti programmi\n");
fprintf (fp,"Rezultat raboti programmi\n");
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{ printf ("%d ",A[i][j]);
fprintf (fp,"%5d ",A[i][j]);
}
printf("\n");
fprintf(fp,"\n");
}
fclose(fp);
getch();
}
depo111 вне форума Ответить с цитированием
Старый 17.05.2009, 20:02   #3
counter
Участник клуба
 
Регистрация: 18.10.2008
Сообщений: 1,409
По умолчанию

2depo111, все работает. И не надо в разных темах одно и тоже плодить!!!
counter вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача на двумерные массивы! Помогите решить! dimmkka Помощь студентам 2 18.02.2009 21:19
Двумерные массивы angelangel Общие вопросы C/C++ 2 22.12.2008 15:47
двумерные массивы Кирилл17 Помощь студентам 2 20.12.2008 01:33
Двумерные массивы omi Паскаль, Turbo Pascal, PascalABC.NET 3 23.04.2007 22:45