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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Список процессов с иконками http://www.cyberforum.ru/cpp-beginners/thread954595.html
Каким образом можно отабразить собственные иконки приложений в списке процессов? Процессы перечисляю так: HANDLE hProcessSnap; PROCESSENTRY32 pros32; int i=0; hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); pros32.dwSize = sizeof(PROCESSENTRY32); while (Process32Next(hProcessSnap, &pros32)) { String ^_stNameProc = gcnew String(pros32.szExeFile);
C++ Что означают знаки подчеркивания впереди идентификатора? В исходнике при описании типа через typedef имя типа начинается с 2-х знаков подчеркивания. Дальше в программе это имя присутствует без подчеркиваний. Объясните, какую функцию выполняют эти знаки? http://www.cyberforum.ru/cpp-beginners/thread954580.html
Добавление двух функций на кнопку C++ Builder
C++ Подскажите пожалуйста, как на одну кнопку добавить две функции,пример- включение выключение что нибудь.
Беда с подключением библиотеки C++
Доброго времени суток. Суть проблемы в том, что один и тот же код работает по разному в зависимости от того находится ли он в библиотеки или нет... Вот класс: class Bitmap { private: Pixel** pixels; Vector2 Size; public:
C++ Как просмотреть цикл не последовательно в debugger'e? http://www.cyberforum.ru/cpp-beginners/thread954569.html
Вот, например, есть цикл int a; a = 0; int n = 10000; for (int i = 1; i < n; i++) a = a+1; Возможно ли, и если да, то как в debugger'e посмотреть значения переменных, которые изменяются в цикле (в данном случае a), но не последовательно, а с интервалом через 100 итераций? т.е., можно ли запустить цикл, посмотреть значения, прокрутить 100 итераций, посмотреть значения и т. д.
C++ Программа поиска и удаления кавычек в текстовом файле Всем привет! Вот озадачился написанием программы для поиска и удаления двойных кавычек из текстовых файлов. К примеру, есть папка, в ней может быть несколько текстовых файлов. Нужно по очереди открыть каждый файл, проверить на наличие кавычек, в случае их нахождения, удалить их (кавычки), сохранить файл, и закрыть. Т.к в C++ мои познания довольно посредственны, прошу совета по алгоритму,... подробнее

Показать сообщение отдельно
allex
0 / 0 / 0
Регистрация: 23.01.2013
Сообщений: 20
15.09.2013, 16:24  [ТС]     Двумерный массив в одномерный
Это не эффективно и задача дана преподавателем.

Добавлено через 11 минут
мой код эволюционировал до такого состояния
почти все происходит хорошо, но не записывает в новый массив последний элемент из повторяющейся строки

C++ (Qt)
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
86
87
88
89
90
91
92
93
94
95
#include <iostream>
using namespace std;
 
int main( )
{
    int i,j,k,min,buf,n,t; 
    /* 
    n - для внешнего цикла
    t - для хранения временной переменной. если частный случай и при удалении элемента массива, происходит неправильная сортировка.
    buf - временное хранение переменной i
    min - поиск минимального элемента в столбце
    k - хранение переенной одномерного массива  
    */
    int a[10][10], b[10];
 
    for(i=0; i<9; i++)
    {
        b[i]=0;
            }
 
    for(i=0; i<3; i++)
        for (j=0; j<3; j++)
        {
            cout<<"введите элементы массива a"<<i<<j<<"\n";
            cin>>a[i][j];
        }
 
 
    cout<<"\n";
    for(i=0; i<3; i++)
        for (j=0; j<3; j++)
        {
            cout<<" "<<a[i][j];
        }
    cout<<"\n";
//начало главной части
    k=0;
 
    for (n=0; n<9; n++)
    {
        min=a[0][0];
        buf=0;
        for (i=1; i<3; i++)
        {
            if (a[i][0]!=a[i][2])
            {
                if (min>a[i][0])
 
                {
                    min=a[i][0];
                    buf=i;
                }
            }
        }
        b[k]=min;
    //  cout<<min<<"-min";
        k++;
        for (j=0; j<2; j++)
        {
            if (a[buf][0]!=a[buf][2])
            {
                a[buf][j]=a[buf][j+1];
            //  cout<<a[buf][j]<<"=";
            }
            else
            {
                if (a[buf][0]>b[k])
                {
                    b[k]=a[buf][0];
                    k++;
                }
                else
                {
                    t=a[buf][0];    //все хорошо, но элемент добавляется после перебора 3 строк массива
                    a[buf][0]=b[k];
                    b[k]=t;
                }
            }
 
        }
    }
 
 
// конец главной части
    for(i=0; i<3; i++) // вывод на экран двумерного массива
        for (j=0; j<3; j++)
        {
            cout<<" "<<a[i][j];
        }
    cout<<"\n"; 
    for(i=0; i<9; i++) // вывод на экран одномерного массива
    {
        cout<<" "<<b[i];
    }
}
 
Текущее время: 21:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru