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

Функция должна вычислять разницы между суммой положительных элементов массива и суммой модулей отрицательных элементов массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массив http://www.cyberforum.ru/cpp-beginners/thread702302.html
Взяла код программы из книги, а он не работает. Помогите исправить ошибки. const short Size=5; short i; AnsiString a; AnsiString st1=""; AnsiString st; AnsiString GetSub; {short p,i; AnsiString res,st2;
C++ Создать копию вектора указателей Есть вектор указателей на мой класс: vector <TreeSet*> tree_set_list; Каждый класс содержит еще вектора с другими классами... в общем это довольно большая структура. Хочу сделать копию данного вектора, чтоб ы с ней можно было работать, не меняя данных в основном векторе. Вот это действие: vector<TreeSet*> tmp_copy_set(tree_set_list); Ожидаемо не дает нужного результата - работа с вектором... http://www.cyberforum.ru/cpp-beginners/thread702290.html
C++ Разработать программу
Разработать программу, реализующую алгоритм стека (20 элементов). Задача решается в статическом варианте (на основе массива структур). В качестве элемента стека использовать структуру. Плиз помогите написать программу. Или хотя бы пример как объявлять структура со стеком. добавление и удаление элементов. Желательно без stl:
Собственные значения и вектора C++
Здравствуйте! Помогите, пожалуйста, найти собственные значения и вектора матрицы! Дана матрица: 5.1 2 -1 -1 3 3 0 0 1 -2 4 1 3 0 0 3 Ее собственные значения L1, L2, L3, L4 являются корнями полинома: x^4-15.1x^3+82x^2-192.3x+165.6. Коэффициенты полинома нашла правильно. Нужно найти собственные значения, а потом собственные вектора...
C++ Одномерные массивы: вычисление сумм элементов http://www.cyberforum.ru/cpp-beginners/thread702239.html
Злравствуйте, дорогие форумчане. Мне снова нужна ваша помощь по одномерным массивам. На этот раз три задачи первых я решил, а вторые три не смог. С меня очень много плюсов. Помогите, пожалуйста. Вот, собственно, условия: 4) - Даны натуральное число n, целые числа a1. ..., an (в последовательности могут быть повторяющиеся члены). Получить все числа, которые входят в последовательность по...
C++ Функция сложения матриц привет. Вот написал ф-цию но не могу разобраться что она должна возвращать? #include <vcl.h> #pragma hdrstop //--------------------------------------------------------------------------- #include <iostream.h> #include <iomanip.h> #include <conio.h> #pragma argsused подробнее

Показать сообщение отдельно
xtorne21st
интересующийся
303 / 274 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
19.11.2012, 18:38     Функция должна вычислять разницы между суммой положительных элементов массива и суммой модулей отрицательных элементов массива
Цитата Сообщение от hard1337 Посмотреть сообщение
между численностями указанных групп элементов.
Разьясните, пожалуйста.

Добавлено через 51 минуту
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
#include <stdio.h>
#include <stdlib.h>
 
/* Каждая функция принимает 2 аргумента, указатель на первый элемент
   и количество элементов массива.*/
 
// Функция, которая находит сумму положительных элемментов массива
int sum_abovezero( int* begin, int elements );
// Функция, которая находит сумму отрицательных элемментов массива
int sum_abs( int* begin, int elements );
/* Функция, которая находит разность
   между положительными и отрицательными элементами массива */
int difference( int* begin, int elements );
 
int main( void ) {
    int i;
    size_t elm;
    int array[] = { 5, -3, 6, -1, 8 };
    
    elm = sizeof( array ) / sizeof( *array );
    printf( "Мы имеем массив: " );
    for( i = 0; i < elm; ++i )
    printf( "%d; ", array[i] );
    printf( "\nСумма положительных членов: %d\n", sum_abovezero(array, elm) );
    printf( "Сумма отрицательных членов взятых по модулю: %d\n", sum_abs(array, elm) );
    printf( "Разница между суммой положительных членов и отрицатеьных\n"
        "взятых по модулю: %d\n", difference(array, elm) );
    
    return 0;
}
 
int sum_abovezero( int* begin, int elements )
{
    int sum, i;
    
    sum = 0;
    for( i = 0; i < elements; ++i )
    if( begin[i] >= 0 )
        sum = sum + begin[i];
    return sum;
}
 
int sum_abs( int* begin, int elements )
{
    int sum, i;
    
    sum = 0;
    for( i = 0; i < elements; ++i )
    if( begin[i] < 0 )
        sum = sum - begin[i];
    return sum;
}
 
int difference( int* begin, int elements )
{
    int sum, sum_abs, i;
    int result;
    
    sum = sum_abs = 0;
    for( i = 0; i < elements; ++i ) {
    if( begin[i] >= 0 )
        sum = sum + begin[i];
    else
        sum_abs = sum_abs - begin[i];
    }
    result = sum_abs - sum;
    
    return abs( result );
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru