Форум программистов, компьютерный форум CyberForum.ru

Колонки в динамических масивах - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Копирование папки http://www.cyberforum.ru/cpp-beginners/thread840070.html
Здравствуйте! Мне необходимо скопировать папку. Но каждый раз выдает ошибку "Невозможно выполнить циклическое копирование". char way1="C:\1\"; char way2=""; char cpy= "xcopy /e "; char fin= ""; strcpy (way2,way1); strcat (way1,"* ");
C++ сделать слияние 2 упорядоченных списков в один упорядоченный пожалуйста поправьте где не так? Код: #include<iostream> using namespace std; struct Node{ Node*next; int info; }; Node slian(Node*first1,Node*first2){ http://www.cyberforum.ru/cpp-beginners/thread840035.html
C++ Использование падежей при вводе чисел
Задание: У нас есть слово, к примеру "барсуки". С клавиатуры вводится совершенно любое число. Задача заключается в том, чтобы падеж нашего слова соответствовал введенному числу. (3 барсука, 11 барсуков, 81 барсук) Как это сделать? Прошу срочно помочь!
C++ Наследование
Добрый вечер, помогите пожалуйста с наследованием. Написал программу ( ниже ), но как видите пришлось в классе-наследнике Bus ( Vehicle базовый ) ещё раз писать функции arrive()/leave(), так как я несмог через Vehicle обратиться и изменить переменные класса Bus. Вопрос в том как именно осуществлять эти обращения :) #include <iostream> #include <assert.h> using namespace std; int...
C++ Как создать Разряженная Ленточная матрица http://www.cyberforum.ru/cpp-beginners/thread840000.html
Как создать разряженную ленточную матрицу, так что бы мы вводили только Например 1, 2, 3, и получали: 100 020 030 я нашел на форуме пример, но он не совмещается так как изначально принимал значения INT, я исправил на double но не работает... подскажите свои варианты создания Разряженной ленточной матрице... А вот что я нашел на форуме: int getEl(double ** array, int v, int h, int...
C++ Вычислить двойной интеграл методом Гаусса Неправильный результат выдаёт. Помогите найти в чём ошибка. (Visual C++ 2008) #include "stdafx.h" #include <iostream> #include <math.h> #include <stdio.h> #include <conio.h> #include <windows.h> #include <stdlib.h> подробнее

Показать сообщение отдельно
xtorne21st
интересующийся
300 / 271 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
20.04.2013, 13:03     Колонки в динамических масивах
Цитата Сообщение от zabakot Посмотреть сообщение
Блин... не получилось немного... Ещё помощь нужна... Дело в том, что данная выше программа работает только частично
Частично работает, т.е. не работает правильно это ваш код. Вы допустили ошибку во время редактирования. Вот с ручным вводом размера:
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
80
81
82
83
84
85
#include <iostream>
#include <cstdlib>
#include <ctime>
 
 
int** genArr(int h, int l)
{
    int** b = new int*[h];
    for (int i = 0; i < h; ++i)
    {
        b[i] = new int[l];
        for (int j = 0; j < l; ++j)
        {
            b[i][j] = rand() % 100;
        }
    }
    return b;
}
 
int addArr(int** b, int h, int l)
{
    int new_size = l + l/3 + 2;
    for (int i = 0; i < h; ++i)
    {
        int* tmp = new int[new_size];
        for (int j = 0, k = 0, f = 0; j < new_size; ++j)
        {
            if (j%3 == 2)
            {
                tmp[k++] = 0;
                continue;
            }
            tmp[k++] = b[i][f++];
        }
        delete [] b[i];
        b[i] = tmp;
    }
    return new_size;
}
 
void freeArr(int** b, int h)
{
    for (int i = 0; i < h; ++i)
    {
        delete [] b[i];
    }
    delete [] b;
}
 
void showArr(int** b, int h, int l)
{
    for (int i = 0; i < h; ++i)
    {
        for (int j = 0; j < l; ++j)
        {
            std::cout.width(3);
            std::cout << b[i][j] << ' ';
        }
        std::cout << '\n';
    }
}
 
 
int main()
{
    int HEIGHT;
    int LENGTH;
    std::cout << "Length: ";
    std::cin >> LENGTH;
    std::cout << "Height: ";
    std::cin >> HEIGHT;
 
    srand(time(0));
    int** array = genArr(HEIGHT, LENGTH);
    showArr(array, HEIGHT, LENGTH);
    std::cout << '\n';
 
    LENGTH = addArr(array, HEIGHT, LENGTH);
    showArr(array, HEIGHT, LENGTH);
    std::cout << '\n';
 
    freeArr(array, HEIGHT);
 
    return 0;
}
Добавлено через 3 минуты
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Length: 12
Height: 8
 63  30  95  57  33   4  64  67  31  95  48  18 
 42  80  22  97  13   8  99  82  44   0  83  43 
 80  64  88  53  66  42  96  29  24  43  38   9 
 48   3  76  31  50  24  50  92  57  24  41  22 
 33  41  56  29  41  39  73  21   3  61  27  69 
  3  75  98  28  18  89  37  66  44  66  98  94 
 90   0  39  99  76  80  21  61  73  78  91  15 
 17  16  88  73  29  15  42  85  90  93  65  61 
 
 63  30   0  95  57   0  33   4   0  64  67   0  31  95   0  48  18   0 
 42  80   0  22  97   0  13   8   0  99  82   0  44   0   0  83  43   0 
 80  64   0  88  53   0  66  42   0  96  29   0  24  43   0  38   9   0 
 48   3   0  76  31   0  50  24   0  50  92   0  57  24   0  41  22   0 
 33  41   0  56  29   0  41  39   0  73  21   0   3  61   0  27  69   0 
  3  75   0  98  28   0  18  89   0  37  66   0  44  66   0  98  94   0 
 90   0   0  39  99   0  76  80   0  21  61   0  73  78   0  91  15   0 
 17  16   0  88  73   0  29  15   0  42  85   0  90  93   0  65  61   0
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Length: 11
Height: 8
 12   8  32   9  75   0   9  99  96  49  19 
 67  66  56  54  79  22  32  57  48  39  96 
 97  38  45  10  90  73  27  15  94  39  23 
 27   1  50  27  62  50  75  12  21  42  30 
 30  49   9  52  81  66  52  72  62   1  10 
 60  12  52  85  91  67  80  30  42  59  31 
 93  38  46  95  13  58  16   7  88  98  56 
 49   2  89  16  55  61  30  56  23  90  20 
 
 12   8   0  32   9   0  75   0   0   9  99   0  96  49   0  19 
 67  66   0  56  54   0  79  22   0  32  57   0  48  39   0  96 
 97  38   0  45  10   0  90  73   0  27  15   0  94  39   0  23 
 27   1   0  50  27   0  62  50   0  75  12   0  21  42   0  30 
 30  49   0   9  52   0  81  66   0  52  72   0  62   1   0  10 
 60  12   0  52  85   0  91  67   0  80  30   0  42  59   0  31 
 93  38   0  46  95   0  13  58   0  16   7   0  88  98   0  56 
 49   2   0  89  16   0  55  61   0  30  56   0  23  90   0  20
 
Текущее время: 16:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru