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

Вставка строки в двумерный массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Числа Фибоначчи http://www.cyberforum.ru/cpp-beginners/thread1051843.html
Написать программу, которая определяет максимальное число Фибоначчи, помещающееся в типе int.
C++ Чтение и запись в файл Задача такая: Есть файл data.txt, в нем хранятся фамилии, номера телефонов и года регистрации в таком виде: *fфамилия 1 *nномер 1 *gгод1 *fфамилия 2 *nномер 2 *gгод 2 ... Нужно сделать так что бы программа читала этот файл и во втором файле вывела в таком виде: http://www.cyberforum.ru/cpp-beginners/thread1051836.html
Вычислить сумму элементов массива расположенных между первым и вторым отрицательными элементами C++
Дан вещественный массив a(n). Вычислить сумму элементов массива расположенных между первым и вторым отрицательными элементами. если таких элементов нет , то вывести соответствующее сообщение
C++ процедура хэширования массива записей
Ребята нужна помощь в разработке одной процедуры. А именно "Разработать процедуру хэширования массива записей, в который предполагается частое добавление данных." Столкнулся с проблемой невозможности разработки этой процедуры с моими знаниями С++ в результате чего прошу вашей помощи ... Буду очень благодарен за любую указанную помощь...
C++ Не работает условие http://www.cyberforum.ru/cpp-beginners/thread1051820.html
При вводе данных для проверки работы программы обнаружил что второе условие не работает то есть программа считает функцию только по 1му и 3му условию...#include <stdio.h> #include <conio.h> #include <iostream> #include <stdlib.h> #include <locale> #include <conio.h> using namespace std; int main() { setlocale(LC_ALL,"Rus");
C++ Приоритетная очередь Добрый день друзья. Нужна ваша помощь в решении одной проблемы. Суть проблемы в том что я в програмировании еще новичок но задача тяжелая для моего уровня программирования. Поэтому прошу вашей помощи в решении этой задачи ... Нужно построить приоритетную очередь в С + + (консоли ) , чтобы когда мы добавляли или удаляли элементы в очередь ( из очереди ) мы указывали приоритет элемента. И... подробнее

Показать сообщение отдельно
stalcker23
0 / 0 / 0
Регистрация: 08.12.2013
Сообщений: 7

Вставка строки в двумерный массив - C++

22.12.2013, 13:51. Просмотров 481. Ответов 0
Метки (Все метки)

Вставить новую строку после всех строк, в которых нет ни одного четного эле*мента.
Две проблемы: если вставляемая строка сама по себе удовлетвояет условию, то происходит зацикливание. Если строк в двумерном массиве несколько, которые удовлетворяют условию, происходит зацикливание.
Help. Заранее, спасибо. Если что-то непонятно, спрашивайте
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
#include <iostream> 
#include <cstdio>
using namespace std;
 
void creat1(int *a, int m) {
    for(int i=0; i<m; i++)
        cin >> a[i];
}
 
int ** creat(int &n, int &m)
{
    cin >> n;
    cin >> m; 
    
    int **mas=new int *[2 * n + 1]; 
    
    for (int i=0; i<n; i++)
        mas[i]=new int [m]; 
    
    for (int i=0; i<n; i++)
        for (int j=0; j<m; j++)
            cin >> mas[i][j];
    
    return mas;
}
 
void print(int **mas, int n, int m)
{
    for (int i=0; i<n; i++, cout << endl) 
        for (int j=0; j<m; j++)
            cout << mas[i][j] << "\t";
} 
 
void deleteMas(int **mas, int n)
{
    for (int i=0;i<n; i++)
        delete [] mas[i]; 
    
    // delete [] mas;
}
 
bool check(int **mas, int m, int pos) {
 
    for (int j = 0; j < m; j++)
        if (mas[pos][j] %2== 0)
            return false;
 
    return true;
}
 
void insert_line(int **mas, int &n, int m, int pos) {
    for (int i = n; i > pos; i--)
        mas[i]=mas[i - 1];
 
    n++;
    mas[pos]=new int [m];
    creat1(mas[pos], m);
}
 
int main() {
    freopen("input.txt", "rt", stdin);
    freopen("output.txt", "wt", stdout);
 
    int n, m;
    int **a = creat(n, m);
 
    for (int i = 0; i < n; i++) {
        if (check(a, m, i))
            insert_line(a, n, m, i + 1);
    }
 
    print(a, n, m);
                    
    return 0;
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru