Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
2 / 3 / 3
Регистрация: 02.11.2010
Сообщений: 129
1

Конвертация из двумерного массива в трехмерный

02.03.2011, 19:39. Показов 1044. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
дан двумерный массив с числами.
Сформировать массив изо всех отрицательных значений и их координат в виде трехмерного массива;
пример:
__0__1__2__3
0|1__0__-5__6
1|4__-3__-5__0
2|-2__3__2__1
3|5__-10__0__8
__________
/0__/1_/1...| i 2мерного массива
-----------------
|-5_|-3|-5...| число
---------------
|2__|1_|2...| j 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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <malloc.h>
int n,m;
int a,b,c;
char chois;
int **masiv2;
int ***masiv3;
int count=0;
int sum=0;
void f_step()
{
    int i,j;
    printf("BBEDUTE PA3MEPHOCTb MACCUBA NxM\n");
        printf("BBEDUTE N\n");
    scanf("%d",&n);
        printf("BBEDUTE M\n");
    scanf("%d",&m);
    masiv2=(int**)malloc(n*sizeof(int*));
for(i=0;i<n;i++)
{
masiv2[i]=(int*)malloc(m*sizeof(int));
}
        printf("BU XOTUTE BBECTU MACCUB %dx%d BPY4HYY (y/n)?\a\n",n,m);
    scanf("%s",&chois);
    if(chois=='n')
    {
        for(i=0;i<n;i++)
            for(j=0;j<m;j++)
            {
              masiv2[i][j]=rand()%1000-500;
            }
    }
    if(chois=='y')
    {
    for(i=0;i<n;i++)
            for(j=0;j<m;j++)
            {
              scanf("%d",&masiv2[i][j]);
            }
    }
     for(i=0;i<n;i++)
            for(j=0;j<m;j++)
            {
             printf("%d",masiv2[i][j]);
            }
//////////////////////////massiv sformirovan i vveden
                 for(i=0;i<n;i++)
            for(j=0;j<m;j++)
            {
                if(masiv2[i][j]<0)
                {
                    count++;           //4uclo otricatelnux 4ucel
                    cum+=masiv2[i][j];
            }
            }
            ////////////// FORMUPYEM 3 MACCUB
    
    a=count;  //i
        b=2;        // j
    c=1;        //k
    }
void s_massivch3()
{
    int i,j;
    int ***masiv3=(int***)malloc(a*sizeof(int**));
for(i=0;i<a;i++)
{
masiv3[i]=(int**)malloc(b*sizeof(int*));
for(j=0;j<b;j++)
masiv3[i][j]=(int*)malloc(c*sizeof(int));
}
}
main ()
{
f_step();
s_massivch3();
}
собственно как сделать 3х мерный массив по условию? желательно отдельно функцией...
возможно через файлы...

Добавлено через 1 час 31 минуту
уже решил данный вопрос, он более не актуален.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.03.2011, 19:39
Ответы с готовыми решениями:

Преобразование двумерного массива в трехмерный
Здравствуйте, подскажите пожалуйста. Моя задача заключается в следующем, у меня есть двумерные...

Функции двумерного массива. Транспонировать матрицу через ввод вывод функции двумерного массива.
Транспонировать матрицу через ввод вывод функции двумерного массива.Сначала вывести ее,а потом...

Перейти от шестимерного массива в трехмерный
Нужно оптимизированно перейти от шестимерного массива в трехмерный, прошу помощи, заранее благодарю

Составить трехмерный массив, количество строк столбцов и глубина массива вводятся с консоли, не превышая 10х10х10
Помогите пожалуйста! задача составить трехмерный массив,количество строк столбцов и глубина массива...

1
2 / 3 / 3
Регистрация: 02.11.2010
Сообщений: 129
08.03.2011, 19:21  [ТС] 2
мог бы решение написать, вдруг кому понадобиться...
0
08.03.2011, 19:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.03.2011, 19:21
Помогаю со студенческими работами здесь

Конвертация двухмерного массива
Уважаемые форумчане подскажите нубу. Как массив list(x,y) - PointPairList перевести в массив double...

Конвертация массива в число
int bitmask = new int; bitmask = 1; bitmask = 0; bitmask = 1; bitmask = 1; bitmask = 0;...

Конвертация массива строк в int[]
как всегда всем здравствуйте. в следующем коде необходимо из массива типа стринг считать всё в...

Конвертация одномерного массива в двумерный
Добрый день! Помогите, пожалуйста, в таком вопросе, есть задание: Заданная строка с N2 цифр....


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru