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

Операции с матрицами - C++

Восстановить пароль Регистрация
 
vladislav1707
0 / 0 / 0
Регистрация: 22.06.2014
Сообщений: 2
22.06.2014, 14:39     Операции с матрицами #1
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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;
 
struct matrix
{
    const int  m=0;n= 0;
    float **a;
    void input();
    void output();
    void verification();
    matrix operator*(float k);
    matrix operator+(float k);
    matrix operator-(float k);
    matrix (int,int);
    matrix () {}
};
 
matrix::matrix(int line,int column)
{
    int i, m=line; n=column;
    cout << "Enter M:";
    cin>> m;
    cout<<"Enter N:";
    cin>>n;
    a=(float**)malloc(m*sizeof(float*));
    for(i=0; i<m; i++)
        a[i]=(float*)malloc(n*sizeof(float));  //malloc возвращает недействительный указатель в выделенное пространство или NULL, если недоступно достаточно памяти. Чтобы восстановить для указателя тип, отличный от void, используйте приведение типа для возвращаемого значения.
}      
 
void matrix::input()
{
    int i,j;
    for (i=0;i<m;i++)
        for (j=0;j<n;j++)
            scanf ("%f", a[i][j]);      //Сведения отсюда применяются ко всему семейству функций scanf, включая безопасные версии, и описывают символы, которые используются, чтобы указать функциям scanf, как анализировать входной поток, например входной поток stdin для scanf, так, чтобы выделить в нем значения, которые будут присвоены переменным программы.
}
 
void matrix::output()
{
    int i,j;
    for (i=0;i<m;i++)
        for (j=0;j<n;j++)
            printf("%5.2f",a[i][j]);
    printf("\n");
}
 
matrix matrix::operator+(float k)
{   
    int i,j;matrix temp(m,n);matrix kk(m,n);
    for(i=0;i<m;i++)
        for(j=0;j<n;j++);
    {
        temp.a[i][j]=a[i][j]+kk.a[i][j] ;
    }
    return temp;
}
 
matrix matrix::operator-(float k)
{
    int i,j;
    matrix temp(m,n);matrix kk(m,n);
    for(i=0;i<m;i++)
        for(j=0;j<n;j++)
        {
            temp.a[i][j]=a[i][j]-kk.a[i][j];
        }
 
        return temp;
}
 
matrix matrix::operator*(float k)
{
    int i,j;
    matrix temp(m,n);
    for(i=0;i<m;i++)
        for(j=0;j<n;j++)
        {
            temp.a[i][j]=a[i][j]*k;
        }
        return temp;
}
 
void main()
{
    printf("Vvedite matricu A:")
    matrix m,n,b; //заменть перемеременные
    m.input();
    n.input();
    b=m + n;
    b.output();
    cout << &matrix::input << endl;
    getch();
}
есть вот такой код, его взял на вашем форуме спасибо автору(не знаю кто), слекга переправил но он все равно не работает, надо что-бы он выводил результаты подсчетов на экран, матрицы не более чем 3х3 заполненные случайными числами, scanf не работает(?)

Добавлено через 1 час 10 минут
что никого нет?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2014, 14:39     Операции с матрицами
Посмотрите здесь:

C++ Операции с матрицами
Операции над матрицами C++
C++ Операции с векторами и матрицами
Операции с матрицами C++
Операции с Матрицами C++
операции над матрицами C++
C++ Операции с матрицами

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5946 / 5551 / 1784
Регистрация: 18.12.2011
Сообщений: 14,178
Завершенные тесты: 1
22.06.2014, 16:46     Операции с матрицами #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от vladislav1707 Посмотреть сообщение
scanf не работает
Параметры scanf - адреса переменных, а Вы передаете значения.
Цитата Сообщение от vladislav1707 Посмотреть сообщение
scanf ("%f", a[i][j]);
C++
1
scanf ("%f", &a[i][j]);
vladislav1707
0 / 0 / 0
Регистрация: 22.06.2014
Сообщений: 2
22.06.2014, 20:36  [ТС]     Операции с матрицами #3
Цитата Сообщение от zss Посмотреть сообщение
Параметры scanf - адреса переменных, а Вы передаете значения.

C++
1
scanf ("%f", &a[i][j]);
а про остальное можете подсказать?)
Yandex
Объявления
22.06.2014, 20:36     Операции с матрицами
Ответ Создать тему
Опции темы

Текущее время: 12:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru