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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Убрать ожидание нажатия клавиши Enter при выводе http://www.cyberforum.ru/cpp-beginners/thread1142463.html
Здравствуйте! Подскажите пожалуйста, вот у меня сейчас вывод есть как бы, но он выводит через ентер каждый товар, а мне надо чтоб сразу все вывел код 2 процедур выполняющих это, ниже void print_products (Products*Ps) { Products*S=Ps; clrscr(); if (!S) { cout<<"Cpicok pyct"<<endl; cout<<endl<<"Dla perehoda v menu najmite ENTER"<<endl; getchar();
C++ Инициализация static map Есть модуль, отвечающий за выдачу Сообщения ошибки по коду ошибки. Пока использую просто в тупую статический map прям в коде. Потом сделаю уже базу... #include "ErrorCodes.h" #include <map> using namespace std; static map<ERROR_CODE, string> em; static bool isEmItialized = false; http://www.cyberforum.ru/cpp-beginners/thread1142453.html
C++ Построение матрицы смежности
Задаем поле с единицами и нулями (где 1-пустая клетка, 0-препятствие) #include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv) { setlocale(LC_ALL, "Russian");
C++ Вывести конкретный элемент массива
Есть 2-х мерный массив (это я написал, код ниже), подскажите как вывести i-й элемент n-й строчки m-го столбика? #include <iostream> #include <time.h> #include <iomanip> using namespace std; void main () { setlocale (LC_ALL, "RUS"); srand (time (NULL));
C++ Посчитать произведение отрицательных элементов матрицы, расположенных выше главной диагонали http://www.cyberforum.ru/cpp-beginners/thread1142441.html
В матрице размером 8 на 8 определить номера минимальных элементов в каждой второй строке. Посчитать произведение отрицательных элементов, расположенных выше главной диагонали. В каждом втором столбце заменить отрицательные элементы нулями.
C++ Обратная геодезическая задача.(методы оптимизации) В общем нужно запрогать задачу, с точки зрения методов оптимизации. Условие. Найти геодезические линии сферы радиуса r. Геодезические линии — это линии наименьшей длины, соединяющие две заданные точки поверхности и проходящие только по поверхности. Примечание: Задачу гораздо удобнее решать в сферических координатах. Затем можно произвести параметризацию по t. Копание в глубь дало,... подробнее

Показать сообщение отдельно
Voivoid
674 / 277 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
08.04.2014, 16:37     Определить количество положительных, отрицательных элементов и нулей в массиве
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
#include <algorithm>
#include <functional>
#include <iostream>
#include <numeric>
#include <random>
#include <tuple>
#include <vector>
 
int main() {
  std::default_random_engine generator;
  std::uniform_int_distribution<int> distribution( -100, 100 );
 
  std::vector<int> a( 30 );
  std::generate_n( a.begin(), a.size(), std::bind( distribution, generator ) );
 
  typedef std::tuple<int, int, int> res_type;
  auto res = std::accumulate( a.cbegin(), a.cend(), res_type(), []( const res_type& a_res, int a_val ) {
    return res_type( std::get<0>( a_res ) + ( a_val > 0 ? 1 : 0  ),
                     std::get<1>( a_res ) + ( a_val == 0 ? 1 : 0 ),
                     std::get<2>( a_res ) + ( a_val < 0 ? 1 : 0  ) );
  } );
 
  std::cout << "positive: " << std::get<0>( res ) << "\n"
            << "equal: "    << std::get<1>( res ) << "\n"
            << "negative: " << std::get<2>( res ) << "\n";
 
  return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru