![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 09.12.2013
Сообщений: 7
|
![]()
Здравствуйте, что изменить в программе, чтобы выводила матрицу так же по спирали только с нижнего правого конца?
#include <stdio.h> #include <stdlib.h> int main() { int ** matr, ROWS, COLS, count, i, j; int rowBeg, rowEnd, colBeg, colEnd; // запрашиваем у пользователя размеры матрицы printf( "Введите количество строк матрицы: " ); scanf( "%d", &ROWS ); // выделяем память для динамической матрицы printf( "Введите количество столбцов матрицы: " ); scanf( "%d", &COLS ); matr = ( int ** ) malloc( ROWS * sizeof( int * ) ); for( i = 0; i < ROWS; i++ ) matr[i] = ( int * ) malloc( COLS * sizeof( int ) ); printf( "\nДля матрицы : %d x %d\n\n", ROWS, COLS ); // Инициализируем матрицу случайными значениями в диапазоне 1 - 50 for( i = 0; i < ROWS; i++ ) for( j = 0; j < COLS; j++ ) scanf("%d",&matr[i][j]); // Вывод матрицы for( i = 0; i < ROWS; i++ ) { for( j = 0; j < COLS; j++ ) printf( "%3d", matr[i][j] ); puts( "" ); } // Вывод значений матрицы по спирали puts( "\n\n\tвывод значений по спирали:\n" ); rowBeg = 0; rowEnd = ROWS - 1; colBeg = 0; colEnd = COLS - 1; count = ROWS * COLS; while( count ) { for( i = colBeg; i <= colEnd && count; i++, count-- ) printf( "%3d", matr[rowBeg][i] ); rowBeg++; for( i = rowBeg; i <= rowEnd && count; i++, count-- ) printf( "%3d", matr[i][colEnd] ); colEnd--; for( i = colEnd; i >= colBeg && count; i--, count-- ) printf( "%3d", matr[rowEnd][i] ); rowEnd--; for( i = rowEnd; i >= rowBeg && count; i--, count-- ) printf( "%3d", matr[i][colBeg] ); colBeg++; } puts( "" ); //освобождаем память for( i = 0; i < ROWS; i++ ) free( matr[i] ); free( matr ); system("pause"); return 0; } |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перекодировать консолевкий код под оконное приложение в Билдер 6. Решаю матрицы Матрицы | g.e.s | Общие вопросы C/C++ | 0 | 18.11.2012 20:21 |
Первый элемент - размерность матрицы, остальные образуют строки этой матрицы | Anastasiya_Pot | Помощь студентам | 2 | 10.04.2012 09:46 |
Язык СИ! Динамическое выделение памяти под массивы и матрицы, передача матрицы в функции | Андрей! | Общие вопросы C/C++ | 33 | 31.01.2012 22:07 |
С++.три матрицы, упорядочить строки той матрицы у которой больше нулевых строк | Ирина1992 | Помощь студентам | 12 | 20.11.2011 13:01 |
На главную диагональ матрицы поместить наибольшие элементы этой матрицы | mivel | Помощь студентам | 2 | 23.12.2009 21:19 |