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

Разреженная матрица - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Передача размерности массива как параметр из одной функции в другую. http://www.cyberforum.ru/cpp-beginners/thread367895.html
Вообщем написал программу. Всё работает как надо, кроме одного, никак не могу сделать чтобы размерность массива, которая вводится в "main" 27-28 строчке (в данном случае переменная "number"), вводилась внутри функции "Vvod" в 49-50 строке(переменная n) и потом передавалась дальше как параметр(размерность массива) всем следующим функциям. #include <windows.h> #include <iostream> using...
C++ Структура функции. Квадратное уравнение. Подскажите пожалуйста как написать функцию решения квадратного уравнение с помощью структуры функции. Я просто понять не могу какие поля требуется задавать в структуру... http://www.cyberforum.ru/cpp-beginners/thread367885.html
удаление папки C++
функция с++ для удаления папок
C++ Возможно ли так?)
Вот осваиваюсь с классами и конструкторами: class pen{ private: int marka, zvet, ves, gelevaya,dlinna, col; float cost; public: pen(){} pen (int a, int b, int c, int d,int e); ~pen(){}
C++ что означает такая запись c*=a%10 http://www.cyberforum.ru/cpp-beginners/thread367872.html
Здравствуйте, у меня вот такой вопрос, что означает такая запись c*=a%10
C++ cin.getline #include <iostream> #include <conio.h> #define N 100 using namespace std; struct book { int page; char str; } b; подробнее

Показать сообщение отдельно
MasoD
 Аватар для MasoD
6 / 6 / 1
Регистрация: 03.10.2010
Сообщений: 44
06.11.2011, 20:21  [ТС]     Разреженная матрица
Матрица переводится в строчный формат, а вот обратно беда - не знаю как прикрутить массив IA. Посмотрите пжлста.

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
86
87
88
89
90
91
92
93
94
95
96
#include <iostream>
#include <locale>
#include <iomanip>
 
using std::cout;
using std::cin;
using std::endl;
using std::setw;
 
int main()
{
    setlocale(LC_ALL,"Russian");
    const unsigned short n = 4;
    const unsigned short m = 4;
    const unsigned short amt = n*m;
    short Matrix[n][m] = {{0}};
    short Array[amt] = {0};
    short AN[amt] = {0};
    short JA[amt] = {0};
    short IA[n + 1] = {0};
    short k = 0;
    short p = 0;
    short t = 0;
    short x = 0;
    short q = 0;    
 
    cout << endl
         << "Введите матрицу (" << n << "x" << m << "):"
         << endl
         << endl;
    for(short i = 0; i < n; i++)    
        for(short j = 0; j < m; j++)
            cin >> Matrix[i][j];
 
    for(short i = 0; i < n; i++)    
    {
        q = 0;
        for(short j = 0; j < m; j++)
        {           
            if (Matrix[i][j] != 0)
            {
                AN[k] = Matrix[i][j];
                JA[k] = j;
                if (q == 0)
                {
                    IA[t] = k;
                    for(short h = t; h < n; h++)
                        IA[h] = k;
                    t++;
                }
                q = 1;
                k++;
            }
        }   
    }
    cout << endl 
        << "AN = ";
    for(short i = 0; i < amt; i++)
        if (AN[i] > 0)
            cout << AN[i] << " ";
    cout << endl
        << "JA = ";
    for(short i = 0; i < amt; i++)
        if (AN[i] > 0)
            cout << JA[i] << " ";   
    IA[0] = 0;
    IA[n] = k;
    cout << endl
        << "IA = ";
    for(short i = 0; i < n + 1; i++)
        cout << IA[i] << " ";
 
 
    cout << endl
        << endl
        << "Нормальная форма: "
        << endl;
    for(short i = 0, j = 0, k = 0, t = 0, p = 0; i < amt; i++)  
    {   
//      t = IA[p];
        if (JA[t] == k)
        {
            cout << AN[j] << " ";
            j++;
            t++;
        }
        else
            cout << "0" << " ";
        k++;
        if (!((i + 1)%n))
        {
            cout << endl;
            k = 0;
//          p++;
        }
    }
 
Текущее время: 17:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru