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

Можно ли это написать как то проще - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Файл структур: сортировка по выбираемому пользователем полю http://www.cyberforum.ru/cpp-beginners/thread432539.html
Имеется файл, состоящий из отдельных строк структуры. Нужно написать сортировку по выбираемому пользователем полю В файле 5 полей: 1-Фамилия 2-Имя 3-Отчество 4-Группа 5-Оценка
C++ Хелп с POST на C++ Друзья. Помогите переписать код на C++ $sDomain = 'ХХХ.ХХХ.ХХХ.50' ;домен или ip-адрес $iPort = 80 ;порт $sParameters =... http://www.cyberforum.ru/cpp-beginners/thread432528.html
C++ Загвостка с функцией Y=f(xi)
Помогите ,пожалуйста ,закончить код. Начальная задача-Составить и выполнить программы циклической структуры расчета Y=f(xi), где xi еX код ,который нужно исправить #define _USE_MATH_DEFINES #include<iostream> #include<stdio.h> #include<cmath> int main() {
Интересный Экзамен(наследование и ООП) C++
вот такие задачки, просто совсем не понятно как подступить....шаблоны STL и контейнеры не знаю,хотел без нихх...понял что функции,будет базовый класс и два наследника....но как,что,где...(
C++ Двумерный массив - сортировка. http://www.cyberforum.ru/cpp-beginners/thread432522.html
Дано задание по двумерным матрицам: 1)Упорядочить строки целочисленной прямоугольной матрицы по возрастанию количества одинаковых элементов в каждой строке. 2)Найти номер первого из столбцов, не содержащих ни одного отрицательного элемента. Непонятно написание первой части программы. Понимаю сам смысл - сравнить все элементы каждой строки, затем отсортировать строки по возрастанию...
C++ Виртуальные функции. Программа вылетает с ошибкой. Хотя дело может быть и не в виртуальных функциях. В общем портянка такова: #include <iostream> #include <cstdlib> #include <time.h> using namespace std; using std::srand; using std::rand; подробнее

Показать сообщение отдельно
Vergil111
31 / 31 / 6
Регистрация: 30.11.2010
Сообщений: 81
21.01.2012, 22:15     Можно ли это написать как то проще
Можно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
#include <numeric>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    vector<int> test((istream_iterator<int>(cin)), istream_iterator<int>());
    cout << count_if(test.begin(), test.end(), [](const int& x)->bool{return x<0 ? true : false;}) << endl;
    cout << accumulate(min_element(test.begin(), test.end(), [](const int& x, const int& y)->bool{return abs(x)<abs(y);})+1, test.end(), 0, [](const int& x, const int& y)->int{return abs(x)+abs(y);}) << endl;
    transform(test.begin(), test.end(), test.begin(), [](const int&x)->int{return x<0 ? x*x : x;});
    copy(test.begin(), test.end(), ostream_iterator<int>(cout, " "));
    sort(test.begin(), test.end());
    cout << endl;
    copy(test.begin(), test.end(), ostream_iterator<int>(cout, " "));
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru