3 / 3 / 0
Регистрация: 21.11.2010
Сообщений: 194
1

Матрица-спираль

14.03.2011, 19:05. Показов 4741. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
всем привет
дано такое задание
Написать и протестировать функцию MtrSpiral(n), формирующую квадратную матри-цу n*n вида
1 1 1 … 1 1 2
4 5 5 … 5 6 2
4 8 9 … 10 6 2
… … … … … … …
4 8 12 … 11 6 2
4 8 7 … 7 7 2
4 3 3 … 3 3 3

вот мой код
C++
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
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
 
int **MtrSpiral(int n)
{
 int **arr;
 int i, j;
 arr=(int**)malloc(n*sizeof(int*));
 for(i=0; i<n; i++)
 {arr[i]=(int*)malloc(n*sizeof(int));
  for(j=0; j<n; j++)
  {arr[i][j]=random(25)+1;}
  }
 return (arr);
}
void MtrPrintf(int **arr, int n)
{
 for(int i=0; i<n; i++)
 {for (int j=0; j<n; j++)
  {
   printf("%4d", arr[i][j]);
  }
 printf("\n");
 }
}
 
void main()
{
do{
 clrscr();
 int n;
 int **arr;
 printf("vvedite razmer matrici \nn=");
 scanf("%d",&n);
 arr=MtrSpiral(n);
 printf("Programma napechataet matricu n*n spiralniuy\n");
 MtrPrintf(arr, n);
 printf("\nPovtorit li? yes/no (Anykey/ESC)");
 }
 while(getche()!=27);
}
я не знаю каким образом сделать так чтоб матрица была спиральная как в задании... помогите плиз.. мне интересно самому как так сделать понять и разобраться

Добавлено через 21 минуту
разве никто не знает как сделать???..
хотя бы алгоритм ..
0
14.03.2011, 19:05
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.03.2011, 19:05
Ответы с готовыми решениями:

Спираль
По введенным значениям n, m (1 ≤ n ≤ 20, 1 ≤ m ≤ 20) заполните массив размерностью n × m числами от 1 до mn, расположив их по спирали,...

Симметричную матрицу сделать несимметричной
помогите пожалуйста. условие: дана квадратичная матрица z. составить программу, которая если матрица симметричная(транспонированная...

Двойная спираль в C++
Нужно построить двумерный массив, с заполнением двойной спиралью. Самое сложное что сделать это нужно через один (For). For для вывода...

1
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
15.03.2011, 20:20 2
C
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
#include <stdio.h>
#include <conio.h>
#define N 12
 
int main()
{   int spiral[N][N];
    int i,j,k, edge, num = 0;
    for(k=0; k<N/2;k++) //слои
    {   edge = N-1-k;
        num++;
        for(j=k;j<edge;j++)     
            spiral[k][j]=num;
        num++;
        for(i=k;i<edge;i++)     
            spiral[i][edge]=num;
        num++;
        for(j=edge;j>=k;j--)    
            spiral[edge][j]=num;
        num++;
        for(i=edge;i>k;i--)     
            spiral[i][k]=num;
    }
    
    if(N%2) //если N-нечетное дополнить центральным элементом
    {   num++;
        spiral[N/2][N/2]=num;
    }
 
    for(i=0;i<N;i++)
    {   for(j=0;j<N;j++) printf("%6d",spiral[i][j]);
        printf("\n");
    }
 
    getch();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.03.2011, 20:20
Помогаю со студенческими работами здесь

Рекурсия c ++ Спираль!
Здравствуйте! Помогите решить задачу! Используя рекурсию.... http://s003.***********/i202/1110/9f/cbca2e936243.jpg

Логарифмическая спираль
люди помогите плиз я в си++ совсем туп а мне задали в универе написать прогу которая строит логарифмическую спираль, создать зум для этого...

Спираль Улама C++
Помогите найти ошибку. Пытаюсь заставить программу выводить числа по спирали, замену простых чисел на значки не делал. #include...

спираль архимеда
Наткнулся на задачку, битый час голову ломаю, суть задачи такова, с++ построить спираль архимена из чисел формата 30 29 28 27 26 25 31...

Спираль Улама
Помогите пожалуйста, на языке си написать программу спираль Улама.Ввести рандомную матрицу и вместо простых чисел оставить*,а вместо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Опции темы

Новые блоги и статьи
Обработка массивов с помощью циклов в JavaScript
hw_wired 12.02.2025
Массивы в JavaScript - это упорядоченные наборы элементов, где каждый элемент имеет свой индекс, начиная с нуля. Они невероятно гибки в использовании, позволяя хранить данные любых типов - числа,. . .
Создание каталога и всех родительских каталогов с помощью Python
hw_wired 12.02.2025
Работа с файловой системой - одна из ключевых задач при разработке программного обеспечения. Особенно часто возникает потребность создавать каталоги для хранения файлов, логов, временных данных и. . .
Возврат файла к состоянию указанного коммита Git
hw_wired 12.02.2025
Git - распределенная система контроля версий, без которой сложно представить современную разработку программного обеспечения. Когда речь заходит о восстановлении файлов, Git предоставляет целый. . .
Сброс локальной ветки Git до состояния HEAD удаленного репозитория
hw_wired 12.02.2025
Работая в команде разработчиков, часто сталкиваешься с ситуацией, когда локальная версия кода существенно отличается от той, что находится в центральном репозитории. Такое расхождение может. . .
Запрет подсветки выделения текста с помощью CSS
hw_wired 12.02.2025
Выделение текста - одна из базовых возможностей взаимодействия пользователя с контентом на веб-странице. Однако в некоторых случаях стандартное поведение выделения может нарушать задуманный дизайн. . .
Выполнение другой программы из приложения Python
hw_wired 12.02.2025
При разработке современных приложений часто возникает потребность в запуске и взаимодействии с другими программами прямо из кода. Python предоставляет множество эффективных средств для выполнения. . .
Отличия между let и var в JavaScript
hw_wired 12.02.2025
Работа с переменными - один из основных моментов при написании программ на JavaScript. От правильного объявления и использования переменных зависит не только читаемость кода, но и его надежность, а. . .
Подключение файла JavaScript в других файлах JavaScript
hw_wired 12.02.2025
Самый современный и рекомендуемый способ подключения JavaScript-файлов - использование системы модулей ES6 с ключевыми словами 'import' и 'export'. Этот подход позволяет явно указывать зависимости. . .
Отмена изменений, не внесенных в индекс Git
hw_wired 12.02.2025
Управление изменениями в Git - одна из важнейших задач при разработке программного обеспечения. В процессе работы часто возникают ситуации, когда нужно отменить внесенные изменения, которые еще не. . .
Что такое px, dip, dp, and sp в Android
hw_wired 12.02.2025
При разработке мобильных приложений для Android одним из ключевых вызовов становится адаптация интерфейса под различные устройства. А ведь их действительно немало - от компактных смартфонов до. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru