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

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

Войти
Регистрация
Восстановить пароль
 
Tsyklop
5 / 5 / 3
Регистрация: 01.01.2014
Сообщений: 329
#1

Используя объект — функцию, удалите из вектора все числа, синус которых меньше 0,5 - C++

19.07.2014, 15:15. Просмотров 336. Ответов 3
Метки нет (Все метки)

Заполните вектор vector<double> числами, представляющими собой углы в радианах. Используя объект — функцию, удалите из вектора все числа, синус которых меньше 0,5.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.07.2014, 15:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Используя объект — функцию, удалите из вектора все числа, синус которых меньше 0,5 (C++):

Напечатать все значения n, при которых все числа последовательности будут не меньше а - C++
Рассмотрим последовательность чисел: 1, 1+1/2, 1+1/3 . . . . . 1+1/n Напечатать все значения n, при которых все числа последовательности...

Напечатать все строки, длина которых меньше заданного числа - C++
Прошу помочь с небольшой задачкой: Работа с текстовыми файлами. Дан текстовый файл. Напечатать все строки, длина которых меньше...

Вывести все числа массива, сумма цифр которых меньше 10 - C++
Вывести все числа массива, сумма цифр которых меньше 10 Не могу разобраться как.Помогите)))

Найти все дроби и их количество, знаменатель которых меньше заданного числа - C++
найти все положительные простые дроби и их количество, знаменатель которых меньше заданного натурального числа. Желательно задачу простым...

Получить все меньше n натуральные числа, квадрат суммы которых равна m - C++
Заданные натуральные числа m и n. Получить все меньше n натуральные числа, квадрат суммы которых равна m.

Вывести все значения n, при которых все числа заданной последовательности будут не меньше "a" - C++
Дана последовательность чисел 1+1/2, 1+1/3,…,1+1/n. Вывести все значения n, при которых все числа последовательности будут не меньше a (1 &lt;...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
porshe
52 / 46 / 17
Регистрация: 18.07.2014
Сообщений: 194
19.07.2014, 16:49 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Точно не разбираюсь в теме синусы, поскольку я школьник. Но, думаю, программа будет выглядеть как-то так:
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <vector>
#include <cmath>
#include <ctime>
#include <cstdlib>
 
using namespace std;
 
void func( vector<double>& );
 
int main()
{
    srand ( (unsigned)time( NULL ) );
    setlocale( 0, "" );
    vector<double> angles;
    register int i;
    double temp;
    cout << "ÈñõîäГ*ûå Г§Г*Г*Г·ГҐГ*ГЁГї: " << endl;
    for ( i = 0; i < 50; i++ )
    {
        temp = static_cast<double>( 0 + rand() % 360 );
        cout << "ß÷åéêГ*[ " << i+1 << " ] = " << temp << endl;
        angles.push_back( temp );
    }
    func( angles );
    cout << "-------------\nГЋГ±ГІГ*ГўГёГЁГҐГ±Гї ÿ÷åéêè Г± Г±ГЁГ*óñîì áîëüøå 0.5: " << endl;
    for ( i = 0; i < angles.size(); i++ )
        cout << "ß÷åéêГ*[ " << i+1 << " ] = " << angles[i] << endl;
    return 0;
}
 
void func( vector<double> &vec )
{
    for ( int i = 0; i < vec.size(); i++ )
    {
        if ( sin( vec[i] ) < 0.5 )
           vec.erase( vec.begin() + i );
    }
}
0
Croessmah
Эксперт CЭксперт С++
13219 / 7491 / 844
Регистрация: 27.09.2012
Сообщений: 18,411
Записей в блоге: 3
Завершенные тесты: 1
19.07.2014, 17:25 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <vector>
#include <functional>
#include <cmath>
#include <iterator>
#include <algorithm>
 
struct MyFunctor : public std::unary_function<double,bool>
{
    result_type operator() ( const argument_type & x )
    {
        return std::sin(x) < 0.5 ;
    }
} ;
 
int main()
{
    std::vector < double > vec ( std::istream_iterator<double>(std::cin) , (std::istream_iterator<double>()) ) ;
    vec.erase ( std::remove_if ( vec.begin() , vec.end() , MyFunctor() ) , vec.end() ) ;
    std::copy ( vec.begin() , vec.end() , std::ostream_iterator<double>(std::cout , " ") ) ;
}
1
Tsyklop
5 / 5 / 3
Регистрация: 01.01.2014
Сообщений: 329
19.07.2014, 18:28  [ТС] #4
Благодарю всех.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2014, 18:28
Привет! Вот еще темы с ответами:

Получить все меньше n натуральные числа, квадрат суммы цифр которых равен m. - C++
Даны натуральные числа n, m. Получить все меньше n натуральные числа, квадрат суммы цифр которых равен m.

Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся палиндромом - C++
Создать функцию, которая печатает все натуральные числа, меньше N, являющиеся полиндромом. Число называется полиндромом, если оно читается...

Заменить все значения элементов матрицы нулями, значения которых меньше числа k - C++
Дан двумерный массив n*m и число k. Значения элементов вводятся с клавиатуры. С клавиатуры вводится число k. Заменить все значения...

Удалите из массива все элементы, первые цифры которых четные. - C++
Удалить из массива все элементы, первые цифры которых четные.(на С++)


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
19.07.2014, 18:28
Ответ Создать тему
Опции темы

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