С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Класс, обеспечивающий представление матрицы произвольного размера - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Intel compiler. icl time? http://www.cyberforum.ru/cpp-beginners/thread672638.html
Доброго времени суток. У меня вопрос по поводу команд в компиляторе Интел с++. в gcc есть команда time и можно узнать время компиляции, подскажите, пожалуйста, аналогичную команду на интеле? Шарил...
C++ Ошибка в цикле Суть задачи: Разработать программу для приближенного вычисления величины y=Ʃ(1/((2*n+1)*(2*n-1))) , n=1,2,3,... Процесс вычисления величины y закончить, когда будет выполнено неравенство... http://www.cyberforum.ru/cpp-beginners/thread672637.html
C++ найти два максимальных значения в массиве
Собственно, не получается реализовать нахождение второго максимального значения: // Найдти 2 максимальных значения без сортировки массива и // и дополнительных элементов (контейнеры и доплнительные...
Вычислить количество сочетаний C++
Здравствуйте,помогите написать программу на c++, вот сам текст задания: "Количество сочетаний из N элементов по M (N ≥ 0, 0 ≤ M ≤ N) вычисляется по формуле Cmn=N!/M!(N-M)! Для заданных...
C++ Проблемка с скачиванием не маленьких файлов в цикле http://www.cyberforum.ru/cpp-beginners/thread672612.html
Всем привет) Пишу софтину на с++, вкратце, что она делает: 1) Берет из файла links.txt ссылки, на которые нужно перейти. 2) Берет из файла string.txt строчку (текст), что нужно найти. 3) В цикле...
C++ Вычислить сумму элементов матрицы в заштрихованных ячейках, показанных на рисунке Вычислить сумму заштрихованных элементов матрицы показанных на рисунке. подробнее

Показать сообщение отдельно
warspirit
3 / 3 / 0
Регистрация: 30.03.2011
Сообщений: 61
16.10.2012, 22:08  [ТС]
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
// ConsoleApplication5.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include<math.h>
#include <stdlib.h>            // для функций работы с числами
#include <stdio.h>             // для printf
 
 
using namespace std;
 
class matrix
    {
    private:
        int rows;
        int cols;
        int **intdata;
        
        bool creatematrix();
    public:
        matrix(int row=1, int col=1); // конструктор
         ~matrix(void); // деструктор
        int getat(int row, int col); // получить
        void setat(int col, int row, int data); //записать
        void display();
        void fill();
    };
 
matrix::matrix(int row, int col)
    {
        rows=row;
        cols=col;
        creatematrix();
        return;
    };
 
matrix::~matrix()
    {
        for (int i=0;i<this->rows;i++)
            delete[] this->intdata[i];
        delete[] this->intdata;
    };
bool matrix::creatematrix()
{
  if (!(this->rows>0 && this->cols>0)) 
        return false;
    this->intdata=new int* [this->rows];
    for(int i=0; i<this->rows;i++)
        this->intdata[i]=new int [this->cols];
    return true;
};
    
 
int matrix::getat(int row, int col)
    {
    if (row < 0 || row > rows)
        row=0;
    if (col < 0 || col > cols)
        col=0;
    return intdata[row][col]; 
    };
 
void matrix::setat(int row, int col,int data)
{
    if (row < 0 || row > rows)
        row=0;
    if (col < 0 || col > cols)
        col=0;
    intdata[row][col]=data;
}; 
 
void matrix::fill()
{
    for (int j=0;j<rows;j++)
    {
        for (int i=0;i<cols;i++)
        {
            intdata[j][i]=(int)rand();
        };
    }
    getch();
        return;
};
 
 
void matrix::display()
{
    printf("\n Matrix \n");
    for (int j=0;j<rows;j++){
        printf("Row:%i>", j);        // нумеруем каждый ряд
        for (int i=0;i<cols;i++){
            printf("%5.0f ",intdata[j][i]); // печатаем колонки
        }
       
    }
    return;
};
 
 
void main()
{
    // спросим сколько колонок и строк
    int row,col;
    cout << "\nRow ?:" ;
    cin >> row ;
    cout << "\nCol ?:" ;
    cin >> col ;
 
 
    matrix Matrix1(row,col);    // создадим нашу матрицу
    Matrix1.fill();                               // заполним значениями
    Matrix1.display();                        // и покажем результаты
}
выводит "0" постоянно

Добавлено через 25 минут
Нашел сам ошибку - "printf("%5.0f ",intdata[j][i]); "
"%5.0f"
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.