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

Определить и напечатать произведение отрицательных компонентов вектора - C++

Войти
Регистрация
Восстановить пароль
 
QWERTY_luna
0 / 0 / 0
Регистрация: 25.09.2013
Сообщений: 8
02.10.2013, 18:26     Определить и напечатать произведение отрицательных компонентов вектора #1
Помогите написать программу, Дан действительный вектор x , n <= 100. Определить и напечатать произведение отрицательных компонентов вектора.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.10.2013, 18:26     Определить и напечатать произведение отрицательных компонентов вектора
Посмотрите здесь:

Определить произведение отрицательных элементов матрицы и их количество C++
Определить произведение элементов в тех строках, которые не содержат отрицательных элементов; C++
C++ Дана целочисленная прямоугольная матрица. Определить произведение элементов в тех строках, которые не содержат отрицательных элементов
Определить произведение элементов в тех строках, которые не содержат отрицательных элементов C++
Двумерные массивы. Определить произведение элементов в тех строках, которые не содержат отрицательных элементов C++
Определить произведение отрицательных чисел C++
C++ Определить произведение отрицательных элементов массива и количество отличных от 5
C++ Определить количество, сумму и произведение отрицательных чисел
Определить количество и произведение отрицательных элементов в нечетных строках матрицы C++
Определить произведение элементов матрицы в строках не содержащих отрицательных элементов C++
C++ Определить произведение элементов матрицы в строках не содержащих отрицательных элементов

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Cynacyn
 Аватар для Cynacyn
33 / 33 / 0
Регистрация: 02.05.2013
Сообщений: 109
02.10.2013, 18:37     Определить и напечатать произведение отрицательных компонентов вектора #2
А что значит n? Размер?
QWERTY_luna
0 / 0 / 0
Регистрация: 25.09.2013
Сообщений: 8
02.10.2013, 18:50  [ТС]     Определить и напечатать произведение отрицательных компонентов вектора #3
Да, x1, x2, ... Xn
Cynacyn
 Аватар для Cynacyn
33 / 33 / 0
Регистрация: 02.05.2013
Сообщений: 109
02.10.2013, 19:27     Определить и напечатать произведение отрицательных компонентов вектора #4
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
#include <iostream>
#include <stdlib.h>     /* srand, rand */
#include <time.h>  
#include <vector>
#include <iomanip>      // std::setprecision
 
using namespace std;
 
double np(const vector<double>& v) // returns 0 if vector don't contains negative numbers
{
  double prod=1.0;
  bool check_for_negatives = false;
  for(int i=0; i<v.size(); i++) 
    if(v[i]<0) {
       prod*=v[i];
       if(!check_for_negatives) check_for_negatives=true;
     }
  if(check_for_negatives) return prod;
  else return 0;
}
 
int main()
{
    setlocale( LC_ALL, "RUS"); 
    const int VECTOR_SIZE = 10;
    vector<double> v;
    // по условию вектор дан, но, например, заполняем вектор так:
    srand(time(NULL));
    double integral, fraction;
    for(int i=0;i<VECTOR_SIZE;i++) {
        integral=rand()%100;
        fraction=(rand()%10)/10.0;
        if(i%2) v.push_back(integral+fraction);
        else v.push_back(-(integral+fraction));
    }
    
    
  // check filling
  /*
  cout << fixed << setprecision(2);
    
    for(int i=0; i<v.size(); i++)
        cout << v[i] << " ";
        
  */ 
  cout << fixed << setprecision(2);
  cout << "Произведение отрицательных элементов вектора: " << np(v) << endl;
   
   return 0;
}
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
12289 / 6976 / 784
Регистрация: 27.09.2012
Сообщений: 17,286
Записей в блоге: 2
Завершенные тесты: 1
02.10.2013, 19:29     Определить и напечатать произведение отрицательных компонентов вектора #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <vector>
#include <algorithm>
 
template < typename T >
T foo ( const T & sum , const T & x ) {
   return sum * (x<0?x:1) ;
}
 
int main ( ) {
   std :: vector < double > vec { -0.5 , -2.5 , 100.0 , 50.0 , 33.0 , -4.0 , -2.0 , -11.0 } ;
   std :: cout << std :: accumulate ( vec.begin ( ) , vec.end ( ) , 1.0 , foo < double > ) << std :: endl ;
}
Yandex
Объявления
02.10.2013, 19:29     Определить и напечатать произведение отрицательных компонентов вектора
Ответ Создать тему
Опции темы

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