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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Floppycatman
0 / 0 / 0
Регистрация: 30.04.2012
Сообщений: 10
#1

Как ввести в предикат условие с клавиатуры? Подробнее внутри - C++

07.01.2013, 19:59. Просмотров 512. Ответов 12
Метки нет (Все метки)

Судари,есть вот такой кусок кода

C++
1
2
3
4
5
6
7
8
9
bool killer(Task a)
{
    return a.pageNum>0;//Вот тут
}
 
int main()
{
    ...
}
Как вводить значение с клавиатуры туда,где стоит ноль? Предикат используется в данной строчке
C++
1
sourse.erase(remove_if(sourse.begin(), sourse.end(), killer), sourse.end() );
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2013, 19:59     Как ввести в предикат условие с клавиатуры? Подробнее внутри
Посмотрите здесь:

Ввести с клавиатуры значение a и b. Проверить условие - C++
Помогите!!!!!((( 1) Ввести с клавиатуры значение a и b. Проверить условие А) b == (a-4); Б) b> -10 & & b <= 5. 2) Пусть b1 =...

Необходимо составить программу, выводящую на экран матрицу данного вида (подробнее внутри) - C++
Здравствуйте. Необходимо составить программу (желательно дополнить мой фрагмент программы, приведенный ниже), которая выводит на экран...

Как ввести с клавиатуры строку - C++
Добрый день. У меня есть строка в которой 6000 тысяч символов, конец строки '\r\n'. Как записать все 6 тысяч символов в string...

Как ввести EOF с клавиатуры? - C++
как ввести EOF c клавиатуры ?

Как ввести с клавиатуры слова в char? - C++
подскажите пожалуйста как ввести с клавиатуры "fat a cat sit in the table" или другие слова?и как сделать так что бы в char s2 и как...

Как ввести массив строк с клавиатуры? - C++
как сделать чтоб вводить массив строк с клавиатуры? // Lab13M.cpp: определяет точку входа для консольного приложения. // ...

Как ввести текстовую переменную в С++ с клавиатуры - C++
Я ввожу так char *str1 = "la"; Все отлично вводиться ! Но мне нужно ввести с клавиатуры, помогите.

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Avazart
Эксперт С++
7115 / 5292 / 273
Регистрация: 10.12.2010
Сообщений: 23,394
Записей в блоге: 17
07.01.2013, 20:12     Как ввести в предикат условие с клавиатуры? Подробнее внутри #2
C++
1
2
3
4
bool killer(Task a,int const val)
{
    return a.pageNum>val;//Вот тут
}
Далее передавать биндами,адаптерами
Floppycatman
0 / 0 / 0
Регистрация: 30.04.2012
Сообщений: 10
07.01.2013, 20:14  [ТС]     Как ввести в предикат условие с клавиатуры? Подробнее внутри #3
Цитата Сообщение от Avazart Посмотреть сообщение
C++
1
2
3
4
bool killer(Task a,int const val)
{
    return a.pageNum>val;//Вот тут
}
Далее передавать биндами,адаптерами
Спасибо.
Буду гуглить.
Avazart
Эксперт С++
7115 / 5292 / 273
Регистрация: 10.12.2010
Сообщений: 23,394
Записей в блоге: 17
07.01.2013, 20:16     Как ввести в предикат условие с клавиатуры? Подробнее внутри #4
Ээ Шилд помойму об этом плохо пишит ...
Лучше сразу брать литературу чисто про STL
Floppycatman
0 / 0 / 0
Регистрация: 30.04.2012
Сообщений: 10
07.01.2013, 20:17  [ТС]     Как ввести в предикат условие с клавиатуры? Подробнее внутри #5
Цитата Сообщение от Avazart Посмотреть сообщение
Ээ Шилд помойму об этом плохо пишит ...
Лучше сразу брать литературу чисто про STL
Приму к сведению.
Avazart
Эксперт С++
7115 / 5292 / 273
Регистрация: 10.12.2010
Сообщений: 23,394
Записей в блоге: 17
07.01.2013, 20:19     Как ввести в предикат условие с клавиатуры? Подробнее внутри #6
Где применяется bind
Литература C++
Floppycatman
0 / 0 / 0
Регистрация: 30.04.2012
Сообщений: 10
07.01.2013, 21:20  [ТС]     Как ввести в предикат условие с клавиатуры? Подробнее внутри #7
Спасибо.

Добавлено через 25 минут
Avazart, а как заставить работать #include "boost\bind.hpp"?
Компилятор говорит,что нет такого. Я в ступоре.
Avazart
Эксперт С++
7115 / 5292 / 273
Регистрация: 10.12.2010
Сообщений: 23,394
Записей в блоге: 17
07.01.2013, 21:22     Как ввести в предикат условие с клавиатуры? Подробнее внутри #8
Цитата Сообщение от Floppycatman Посмотреть сообщение
Avazart, а как заставить работать #include "boost\bind.hpp"?
Компилятор говорит,что нет такого. Я в ступоре.
Учтановить boost либо ставить компилятор с поддержкой нового стандарта ( С++11), но можно и без этого ...
Floppycatman
0 / 0 / 0
Регистрация: 30.04.2012
Сообщений: 10
07.01.2013, 21:23  [ТС]     Как ввести в предикат условие с клавиатуры? Подробнее внутри #9
Цитата Сообщение от Avazart Посмотреть сообщение
Учтановить boost либо ставить компилятор с поддержкой нового стандарта ( С++11), но можно и без этого ...
А как без него?
Препод явно начнет говорить,что это излишки.
gray_fox
What a waste!
1443 / 1172 / 61
Регистрация: 21.04.2012
Сообщений: 2,449
Завершенные тесты: 3
07.01.2013, 21:24     Как ввести в предикат условие с клавиатуры? Подробнее внутри #10
Можно так:
C++
1
std::bind2nd(std::ptr_fun(killer), 0)
Floppycatman
0 / 0 / 0
Регистрация: 30.04.2012
Сообщений: 10
07.01.2013, 21:25  [ТС]     Как ввести в предикат условие с клавиатуры? Подробнее внутри #11
Цитата Сообщение от gray_fox Посмотреть сообщение
Можно так:
C++
1
std::bind2nd(std::ptr_fun(killer), 0)
Мне резко стало стыдно.
Я писал bind1nd. А у меня же второй параметр вносится.
Avazart
Эксперт С++
7115 / 5292 / 273
Регистрация: 10.12.2010
Сообщений: 23,394
Записей в блоге: 17
07.01.2013, 21:52     Как ввести в предикат условие с клавиатуры? Подробнее внутри #12
Приблизительно так ( код не проверял )

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
#include <iostream>
#include <vector>
#include <utility>
#include <algorithm>
 
using namespace std;
//-------------------------------------
class Task
 {
   public:
     unsigned pageNum;
 };
//-------------------------------------
template<typename T1,typename T2>
struct killer: public binary_function<T1, T2, bool>
{
 bool operator()(T1 a, T2 howMuch)const
   {
    return a.pageNum>howMuch;
   }
};
//-------------------------------------
int main()
{
std::vector<Task>  sourse;
const unsigned howMuch = 0;
 
remove_if( sourse.begin(), sourse.end(), bind2nd( killer<Task,unsigned>(),howMuch )   );
 
return 0;
}
//--------------------------------------
Добавлено через 25 минут
Ну или так

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
#include <iostream>
#include <string>
#include <vector>
#include <utility>
#include <algorithm>
 
using namespace std;
//-------------------------------------
class Task
 {
   public:
     unsigned pageNum;
     Task(unsigned Num=0):pageNum(Num){};
 };
//-------------------------------------
bool cmp(Task a,unsigned val)
{
 return a.pageNum>val;
}
//-------------------------------------
int main()
{
std::vector<Task>  sourse;
for(size_t i=0; i<5 ;i++) sourse.push_back(Task(i) );
 
for(size_t i=0;i<sourse.size();i++) { cout<<sourse[i].pageNum<<"\t"; }
cout<<endl;
 
unsigned howMuch = 2;
 
sourse.erase(remove_if( sourse.begin(), sourse.end(), bind2nd( std::ptr_fun(cmp),howMuch)),sourse.end() );
 
for(size_t i=0;i<sourse.size();i++) { cout<<sourse[i].pageNum<<"\t"; }
cout<<endl;
 
return 0;
}
//--------------------------------------
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.01.2013, 21:54     Как ввести в предикат условие с клавиатуры? Подробнее внутри
Еще ссылки по теме:

Как ввести с клавиатуры элементы динамического массива? - C++
int *mass=new int; for(int i=0;i&lt;10;i++) { } Как ввести в цикле элементы массива , а потом вывести их на экран? Подскажите...

Что такое вектор? И как его ввести с клавиатуры? - C++
Вести с клавиатуры целые числа M,N и вектор A=(a1,a2...an), n=15

Как можно ввести с клавиатуры символ не прерывая цикл в программе - C++
Ввод символа. Здравствуйте. У меня вопрос о том, как можно ввести с клавиатуры символ не прерывая цикл в программе. То есть, у меня...

Неясное условие внутри команды ветвления - C++
if(stricmp(nds.first, &quot;exit&quot;)==0) { return false; } Где nds - это экземпляр класса, а...

cpp, массивы, работа с файлами, условие внутри, решение? - C++
Кто может, помогите с решением: 1 Задана таблица успеваемости учеников 10 класса за первое полугодие по 14 предметам. Составить программу...


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

Или воспользуйтесь поиском по форуму:
Floppycatman
0 / 0 / 0
Регистрация: 30.04.2012
Сообщений: 10
07.01.2013, 21:54  [ТС]     Как ввести в предикат условие с клавиатуры? Подробнее внутри #13
Всем спасибо.
Все сделал.
Yandex
Объявления
07.01.2013, 21:54     Как ввести в предикат условие с клавиатуры? Подробнее внутри
Ответ Создать тему
Опции темы

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