0 / 0 / 0
Регистрация: 29.11.2011
Сообщений: 15
1

[C++] Замена отрицательных элементов их модулями

29.11.2011, 16:41. Показов 1424. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, программисты
прошу вас помощь с программой.


Разработать программу, написав предварительно подпрограмму. Задание на разработку подпрограммы сформулировано в первом абзаце индивидуального задания.
Требования к решению задачи:
- В программе необходимо предусмотреть задание размеров исходных массивов, ввод элементов массивов и других данных(если требуется по условию задачи).
- Создаваемая подпрограмма должна использовать для работы только собственные формальные аргументы и локальные переменные.
- В подпрограмме не следует выполнять вывод результата на экран, за исключением сообщений об ошибках.
- Студент должен самостоятельно определить подходящий тип создаваемой подпрограммы(процедура или функция), а также состав и типы требуемых формальных аргументов.
Задание:
Разработать подпрограмму, заменяющую все отрицательные элементы исходной матрицы их модулями и возвращающую кол-во измененных элементов.
Применить эту подпрограмму для изменения заданной матрицы ТЕМ, причем в случае совпадения числа измененных элементов с общим числом элементов в матрице предусмотреть дополнитьно вывод на печать поясняющего текста. В программе вывести также на экран матрицу после изменения.

0.5 -14.7 -1.004
ТЕМ= 32 124.9 2.25
-7.6 -251 0


я что то пытался писать, не получается
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.11.2011, 16:41
Ответы с готовыми решениями:

[C++] Замена отрицательных элементов их модулями
Задание: Разработать подпрограмму, заменяющую все отрицательные элементы исходной матрицы их...

Для каждого вектора найти разницу между модулями сумм положительных и отрицательных элементов.
Здравствуйте!Прошу Вашей помощи,написал программу,все работает,но надо ее переделать как на...

Составить процедуру для замены всех отрицательных элементов их модулями, и подсчитать количество таких замен
Исправьте ошибки пожалуйста. Разработать программу , предварительно создав процедуру. Составить...

Замена всех отрицательных элементов на среднее арифметическое значение элементов массива
Ввести двумерный массив А(N,N).Составить программу замены всех отрицатель-ных элементов на среднее...

4
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
29.11.2011, 17:31 2
Цитата Сообщение от ilsurgaripov Посмотреть сообщение
я что то пытался писать, не получается
попытки в студию, это повысит ваши шансы
1
0 / 0 / 0
Регистрация: 29.11.2011
Сообщений: 15
29.11.2011, 22:18  [ТС] 3
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
#include <iostream>
#include <cmath>
 
int function(double *fMatrix, size_t fN, size_t fM)
{
    double c;
    int count = 0;
    for (int  i = 0; i<fN*fM; i++)
    {
        if (fMatrix[i]<0)
        {
            c = fMatrix[i];
            fMatrix[i]=abs(c);
            count++;
        }
    }
    return count;
}    
 
int main()
{ 
         using namespace std;
         const size_t cNMax=100;
         double arrA[cNMax*cNMax];
         size_t M,N;
         cin>>M;
         cin>>N;
         for (int  i = 0; i<N*M; i++)
             cin>>arrA[i];
         int otr = function(arrA,N,M); 
         cout<<"Chislo otricatelnih elementov: "<<otr<<endl;
         cout<<"\n Izmenennaja matrica\n";
         for (int  i = 0; i<N*M; i++)
            cout<<arrA[i];
         cout<<endl;
         if (otr==N*M) cout<<"\n Chislo otricatelnih = chisly elementov v matrice\n";       
}
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
30.11.2011, 14:12 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
size_t repl_neg(double *mtx, size_t r, size_t c)
{
    size_t size, n;
    
    size = r * c;
    n = 0;
    for (size_t i = 0; i < size; i++)
        if (mtx[i] < 0) {
            mtx[i] = -mtx[i];
            n++;
        }
    return n;
}
1
0 / 0 / 0
Регистрация: 29.11.2011
Сообщений: 15
30.11.2011, 14:24  [ТС] 5
все вот так сделал:

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
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
 
 
int func(int* matrix,int N,int M)
{
    int counter=0;
    for (int i=0;i<N;i++)
        for (int j=0; j<M; j++)
        {
            if (matrix[i*N+j]<0)
            {
                matrix[i*N+j]=abs(matrix[i*N+j]);    // модуль
                counter++;          // Количество измененных эл-ов
            }
        }
        return counter;
}
int main()
{
    using namespace std;
    int i, j, N, M;
    cout<<"enter N ";
    cin>>N;
    cout<<"m? ";
    cin>>M;
    int *matrix=new int[N*M];
    for (int i=0;i<N;i++)
        for (int j=0; j<M; j++)
        {
            cout<<"enter "<<(i*N+j)<<" ";
          cin>>matrix[i*N+j];
        }
        func(matrix,N,M);
 
        for (int i=0;i<N;i++)
        for (int j=0; j<M; j++)
        {
            cout<<matrix[i*N+j]<<" ";
        }
        getch();
 
 
}
0
30.11.2011, 14:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.11.2011, 14:24
Помогаю со студенческими работами здесь

Замена всех нечетных элементов двумерного массива на сумму отрицательных элементов
Написал прогу по замене всех нечетных элементов двумерного массива на сумму отрицательных...

Замена отрицательных элементов в массиве
Народ, кто может, помогите с задачей - завтра сдавать Заменить все отрицательные элементы в...

Замена отрицательных элементов максимальным
int q = 0; int SortB = textBox1.Text.Split(' ').Select(int.Parse).ToArray(); ...

Замена отрицательных элементов массива
Доброго времени суток, недавно начал изучение с++ и так как учусь на заОчке не совсем понимаю...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru