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

Из одномерного массива записать в двумерный только положительные элементы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вывести данные из файла в виде таблицы http://www.cyberforum.ru/cpp-beginners/thread1127259.html
Помогите пожалуйста вывести данные из файла в виде таблице. Ввод сделал а вывод не получается. #include <iostream> #include <conio.h> #include <fstream> #include <string> using namespace std; struct STUDENT
C++ Пузырьковая сортировка от первого шага к последнему #include <iostream> #include <cstdlib> #include <ctime> using namespace std; void sort_bubble(int* a, int n){ int s = 0; for (int i = 0; i < n; i++){ for (int j = n - 1; j > i; j--){ http://www.cyberforum.ru/cpp-beginners/thread1127252.html
Массив указателей. Найти отличие между двумя конструкциями C++
Привет! Возник вопрос в чем разница между char* arr и char arr не одно и тоже ли это? почему например когда я пишется char* Arr={"laborer", "secretary", "manager", "accountant" , "executive", "researcher"}; мы пишем char* Arrа не например char arr Хотя с char arr выводит ошибку.
Исправить ошибки по созданию двухмерного массива C++
/******************* *Файл: lab 5_2 * *Лаб. работа: 5 * *Задача:10 * *Автор: Ермаков * *Группа:432 * ********************/ #include <windows.h> #include <stdio.h>
C++ Функции библиотеки для работы со строками и символами http://www.cyberforum.ru/cpp-beginners/thread1127228.html
С помощью текстового редактора Блокнот создать файл, содержащий текст, длина которого не превышает 1000 символов (длина строки не превышает 70 символов). Имя файла должно иметь расширение txt. Написать программу, которая выводит содержимое файла на экран и выполняет следующие действия:Определить количество повествовательных предложений в тексте; вывести на экран третье повествовательное...
C++ Организовать вывод на экран списка занятий в определенный день, отсортированных по времени Структурный шаблон должен содержать расписание занятий: день недели, время, предмет, наименование занятия (лекция, практическая работа, лабораторная работа), ФИО преподавателя. По требованию пользователя организовать вывод на экран: - списка занятий в определенный день, отсортированных по времени; - списка занятий по определенному предмету; - результатов поиска по фамилии преподавателя. ... подробнее

Показать сообщение отдельно
Halkidik
0 / 0 / 0
Регистрация: 16.12.2013
Сообщений: 6
23.03.2014, 13:05     Из одномерного массива записать в двумерный только положительные элементы
Задача в том, что нужно из одномерного записывать в двумерный только положительные элементы , если встречается отрицательный или ноль то записывать в другую строку, все работало , но преподаватель сказал , чтобы выделялась память и заполнялся массив в функции , в маине только объявление массива у меня вот так выходит:
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
#include <iostream>
#include <conio.h>
using namespace std;
void newmas(int m1, int m2, int n, int A[100], int C[100], int c, int ***B,int s);
 
int main()
{
    int n, A[100], C[100], c = -1, m1, m2,s=0;
    int**B;
    cout << "n=";
    cin >> n;
    for (int i = 0; i < n; i++)
        cin >> A[i];
    m1 = m2 = -1;
    A[n] = 0;
    newmas(m1, m2, n, A, C, c, &B,s);
    s = -1;
    cout << "Result:\n";
    for (int i = 0; i <= c; i++)
    {
        s++;
        for (int j = 0; j < C[s]; j++)
            cout << B[i][j] << '\t';
        cout << endl;
 
    }
 
    cout << "Press any key";
    _getch();
    return 0;
}
void newmas(int m1,int m2,int n, int A[100],int C[100],int c,int ***B,int s)
{
    
    while (m1 < n && m2 < n)
    {
        m1++;
        m2++;
        for (int i = 0; i < n; i++)
        {
            if (A[m1] <= 0)
                m1++;
            else
                break;
        }
        for (int i = 0; i < n; i++)
        {
            if (A[m2] <= 0 && m2 > m1)
                break;
            else
                m2++;
        }
        c++;
        C[c] = m2 - m1;
        m1 = m2;
    }
    s = m1 = 0;
    B = new int *[c];
    for (int i = 0; i <= c; i++)
    {
        B[i] = new int[C[s]];
        for (int j = 0, m = 0; m < C[s]; m1++)
        {
            if (A[m1] > 0)
            {
                B[i][j] = A[m1];
                m++;
                j++;
            }
 
        }
        s++;
    }
}
 Комментарий модератора 
Обрамляйте код тегами
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 10:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru