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

Написать программу, которая будет обращать в ноль элемент матрицы в случае выполнения условия - C++

Восстановить пароль Регистрация
 
БРОНЕТАПОК
2 / 2 / 0
Регистрация: 20.09.2015
Сообщений: 37
15.11.2015, 16:04     Написать программу, которая будет обращать в ноль элемент матрицы в случае выполнения условия #1
Задача:
Написать программу, которая будет обращать в ноль элемент матрицы, если f(x[i][j])+ff(x[i][j])<0, где f и ff - некоторые функции, выполняющие элементарные алгебраические преобразования.
До этого была точно, такая же задача, но для одномерного массива, с которой не возникло никаких проблем. Вот она, собственно.
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
#include <iomanip>
#include <cmath>
#include <iostream>
using namespace std;
float f(float x)
{return cos(x)*5;}
float ff(float z)
{return z;}
void P(float x[ ],int n)
{int j;
for (j=0; j<n; j++)
if (f(x[j])+ff(x[j])<0)
x[j]=0;
else {x[j]=x[j];}
}
void main()
{
int j=0; int const n=5; int y=0;
float x[n];
cout<<"Vvedite massiv "<<endl;
for (j=0; j<n;j++)
cin>>x[j];
P(x,n);
for (j=0; j<n; j++)
cout<<x[j]<<"   ";
system ("pause");
}
А с обработкой матрицы возникли проблемы, т.к. делаю это впервые. С некторыми, откровенным "костылями" программа таки запустилась, но абсолютно игнорировала фунцию P - как-раз таки преобразующую матрицу. Прошу помощи в этом, пока что ещё новом для меня поле.
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
#include <iomanip>
#include <cmath>
#include <iostream>
using namespace std;
float f(float x)
{return cos(x)*5;}
float ff(float z)
{return z;}
void P(float x[20][20], int N, int M)
{int i,j; 
for (i=0; i<N; i++)
{
 for (j=0; j<M; j++);
}
if (f(x[i][j])+ff(x[i][j])<0)
x[i][j]=0;
else {x[i][j]=x[i][j];}
}
void main()
{
int const n=5; 
int i,j,N,M; float x[20][20];
cout<<"N="; 
cin>>N;
cout<<"M="; 
cin>>M;
cout<<"Input matrix A \n";
for (i=0; i<N; i++)
for (j=0; j<M; j++)
cin>>x[i][j]; 
 
P(x,N,M);
for (i=0; i<N; i++)
{
for (j=0; j<M; j++)
cout<<x[i][j]<<"\t"; 
cout<<endl; 
}
system("pause");
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2015, 16:04     Написать программу, которая будет обращать в ноль элемент матрицы в случае выполнения условия
Посмотрите здесь:

Написать программу которая будет разделять число C++
C++ Написать программу, которая будет находить разность тригононометрических функций
C++ Написать программу, которая будет изменять элементы массива
Написать программу на языке С + + которая вычисляет условия: C++
C++ Написать программу, которая будет склеивать два введеных строки
написать программу, которая будет переворачивать введенное предложение C++
Написать программу, которая будет из набора изображений создавать видеоролик C++
Написать программу, которая будет считать двойные интегралы C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5947 / 5552 / 1784
Регистрация: 18.12.2011
Сообщений: 14,184
Завершенные тесты: 1
15.11.2015, 16:13     Написать программу, которая будет обращать в ноль элемент матрицы в случае выполнения условия #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <cmath>
#include <iostream>
using namespace std;
double f(double x)
{
    return cos(x)*5;
}
double ff(double z)
{
    return z;
}
void P(double x[20][20], int N, int M)
{
    int i,j; 
    for (i=0; i<N; i++)
    {
        for (j=0; j<M; j++)
            if (f(x[i][j])+ff(x[i][j])<0)
                x[i][j]=0;
    }
}
int main()
{
    int i,j,N,M; 
    double x[20][20];
    cout<<"N="; 
    cin>>N;
    cout<<"M="; 
    cin>>M;
    cout<<"Input matrix A \n";
    for (i=0; i<N; i++)
        for (j=0; j<M; j++)
            cin>>x[i][j]; 
 
    P(x,N,M);
    for (i=0; i<N; i++)
    {
        for (j=0; j<M; j++)
            cout<<x[i][j]<<"\t"; 
        cout<<endl; 
    }
    system("pause");
    return 0;
}
БРОНЕТАПОК
2 / 2 / 0
Регистрация: 20.09.2015
Сообщений: 37
15.11.2015, 16:40  [ТС]     Написать программу, которая будет обращать в ноль элемент матрицы в случае выполнения условия #3
zss, Огромное спасибо!
Yandex
Объявления
15.11.2015, 16:40     Написать программу, которая будет обращать в ноль элемент матрицы в случае выполнения условия
Ответ Создать тему
Опции темы

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