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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
БРОНЕТАПОК
2 / 2 / 0
Регистрация: 20.09.2015
Сообщений: 40
#1

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

15.11.2015, 16:04. Просмотров 138. Ответов 2
Метки нет (Все метки)

Задача:
Написать программу, которая будет обращать в ноль элемент матрицы, если 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");
}
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2015, 16:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать программу, которая будет обращать в ноль элемент матрицы в случае выполнения условия (C++):

Вывести сообщение в случае выполнения условия - C++
Подскажите: Если в последнем цикле он не находит число,то как вывести на экран в этом случае ответ,вроде: Такого числа не найдено. ...

Написать программу ввода произвольных чисел, принимающую ввод до тех пор, пока не будет введён ноль (циклы) - C++
Помогите решить задачу. Условие: Написать программу ввода произвольных чисел до тех пор, пока не будет введено число 0. Выводить сообщение...

Требуется написать программу, которая считывает числа n и m, вычитает 100 из n в случае - C++
Требуется написать программу, которая считывает числа n и m, вычитает 100 из n в случае, если оно больше, чем m по абсолютной величине...

Написать программу на языке С + + которая вычисляет условия: - C++
Написать программу на языке С + + которая вычисляет условия: Вот первое условие: http://www.cyberforum.ru/attachments/281524d1371057949...

В заданных массивах найти количество элементов равных нулю и заменить их на -100 в случае выполнения условия - C++
Помогите пожалуйста. В массивах Х1..Х5, Y1..Y7, Z1..Z14 определить количество равных нулю элементов. Если их больше половины, то первый и...

Написать программу которая будет разделять число - C++
Помогите написать программу которая будет разделять число. Например мы уводим число 12546 програма должна это число разделить на 1, 2, 5,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zss
Модератор
Эксперт С++
6382 / 5947 / 1927
Регистрация: 18.12.2011
Сообщений: 15,264
Завершенные тесты: 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;
}
1
БРОНЕТАПОК
2 / 2 / 0
Регистрация: 20.09.2015
Сообщений: 40
15.11.2015, 16:40  [ТС] #3
zss, Огромное спасибо!
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2015, 16:40
Привет! Вот еще темы с ответами:

Написать программу, которая будет изменять элементы массива - C++
Дан целочисленный массив из 25 элементов. Если элемент чётный, то прибавить к нему первый, если нечётный - прибавить последний. Первый и...

Написать программу, которая будет выводить елочку из символов - C++
Нужно написать программу которая будет выводить елочку из символов ^ ^ ^^^ ^^^^^ по заданной пользователем высотой. ...

Написать программу, которая будет считать двойные интегралы - C++
Ребята помогите с заданием , нужно написать программу которая будет считать двойные интегралы, очень надо , буду чрезмерно вам благодарен

написать программу, которая будет переворачивать введенное предложение - C++
Добрый день, форумчане! Совсем недавно начал программировать на спп, и тут появились некоторые трудности со строками. Задание такое: нужно...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru