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

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

Войти
Регистрация
Восстановить пароль
 
Evghenii.88
0 / 0 / 0
Регистрация: 20.05.2010
Сообщений: 7
#1

написать функцию в С++ - C++

21.05.2010, 00:55. Просмотров 507. Ответов 5
Метки нет (Все метки)

Надо написать функцию которая выводит из вектора числа ,которые меньше чем средняя арифметическая максимума и минимума.
длину вектора определяем сами числа тоже.
Тоесть надо найти среднюю арифмитическу наибольшего и наименьшего числа в векторе, сравнить с каждым числом в этом векторе и если это число меньше чем средняя арифм то вывести его.

П.С. Заранее большое спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.05.2010, 00:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос написать функцию в С++ (C++):

Написать функцию, которая, в зависимости от выбора пользователя вызывает соответствующую функцию - C++
Помогите, что то я не могу понять задачи, даже не знаю с чего начать)))) 5. Написать функцию, которая, в зависимости от выбора...

Написать функцию, которая могла бы передать значение в другую функцию - C++
как сделать функцию которая бы могла передать значеие в другую функцию ну к примеру a=4*b; где b=sin(fi);

Написать функцию, которая, в зависимости от выбора пользователя вызывает функцию сложения, произведения - C++
Кто знает как можно решить эту задачу на С++? Написать функцию, которая, в зависимости от выбора пользователя вызывает функцию сложения,...

не могу разобраться как написать функцию сортировки и исправить функцию добавления в стек - C++
#include <iostream> #include<Windows.h> using namespace std; struct NE{ int x; NE *pnext,*ppor,*cur;}; class SPISOK { NE...

рекурсия.написать функцию,принимающую указ. на другую функцию, осуществл. некую операцию с переданным х - C++
рекурсия.написать функцию,принимающую указ. на другую функцию, осуществл. некую операцию с переданным х. прога должна иметь вид...

Написать функцию, которая вычисляет объем и площадь поверхности параллелепипеда, описать функцию IsSquare(K) - C++
Здравствуйте, нужна помощь по решению двух зачад в TC++(Turbo C++); Задача 1. Написать функцию, которая вычисляет объем и площадь...

5
gh05t
48 / 47 / 4
Регистрация: 03.04.2010
Сообщений: 99
21.05.2010, 04:45 #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
#include <iostream>
 
using namespace std;
 
int main()
{
    int N;
    cin >> N;
    int matrix[1000], max, min;
 
    for (int i = 0; i < N; i++)
    {
        cin >> matrix[i];
        if (i==0)
            max = matrix[i];
        else
            if (max < matrix[i])
                max = matrix[i];
        if (i==0)
            min = matrix[i];
        else
            if (min > matrix[i])
                min = matrix[i];
    }
 
    float mid = (max + min)/2;
 
    for (int i = 0; i < N; i++)
        if (matrix[i] < mid)
            cout << matrix[i] << endl;
 
    return 0;
}
1
Evghenii.88
0 / 0 / 0
Регистрация: 20.05.2010
Сообщений: 7
21.05.2010, 09:28  [ТС] #3
Спасибо конечно большое но надо именно Фнукцию
0
gh05t
48 / 47 / 4
Регистрация: 03.04.2010
Сообщений: 99
21.05.2010, 10:37 #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
#include <iostream>
 
using namespace std;
 
void func (int * matrix, int N)
{
    int max, min;
 
    for (int i = 0; i < N; i++)
    {
        if (i==0)
            max = matrix[i];
        else
            if (max < matrix[i])
                max = matrix[i];
        if (i==0)
            min = matrix[i];
        else
            if (min > matrix[i])
                min = matrix[i];
    }
    float mid = (max + min)/2;
 
    for (int i = 0; i < N; i++)
        if (matrix[i] < mid)
            cout << matrix[i] << endl;
}
 
int main()
{
        int N;
        cin >> N;
        int matrix[1000];
 
        for (int i = 0; i < N; i++)
            cin >> matrix[i];
 
        func((int *)&matrix, N);
 
        return 0;
}
0
Mr.X
Эксперт С++
3051 / 1696 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
21.05.2010, 13:06 #5
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
//Написать функцию, которая выводит из вектора числа, которые меньше, 
//чем средняя арифметическая максимума и минимума.
#include <vector>
#include <algorithm>
#include <ctime>
#include <cstdlib>
#include <functional>
#include <iostream>
#include <locale>
 
const size_t ARR_SIZE = 20;
 
typedef std::vector<int> T_int_arr;
 
int get_rand()
{
    const size_t ARR_VAL_PERIOD  = 100;
    return rand() % ARR_VAL_PERIOD;
}
 
void print_nums_less_aver_max_min(const T_int_arr&  a)
 
{
    double min_elem = *std::min_element(a.begin(), a.end());
    double max_elem = *std::max_element(a.begin(), a.end());
    double aver_min_max = (min_elem + max_elem) / 2.0;
    T_int_arr  temp_arr(a);
    T_int_arr::iterator  new_temp_arr_end 
        = std::remove_copy_if
              (
                  a.begin(), a.end(), 
                  temp_arr.begin(), 
                  std::bind2nd(std::greater_equal<double>(), aver_min_max)
              );
    std::cout << std::endl
              << "min = "                    << min_elem     << std::endl
              << "max = "                    << max_elem     << std::endl
              << "сред. арифм. min и max = " << aver_min_max << std::endl;
 
    std::cout << "Числа вектора, которые меньше средней арифметической "              
              << "его максимума и минимума: "
              << std::endl;
 
    std::copy(temp_arr.begin(), new_temp_arr_end,               
              std::ostream_iterator<int>(std::cout, " "));
}
 
int main()
{
    std::locale::global(std::locale("rus"));
 
    //Создаем вектор нужного размера.
    T_int_arr v(ARR_SIZE);    
 
    //Заполняем его случайными числами.
    srand(static_cast<unsigned>(time(0)));
    std::generate(v.begin(), v.end(), get_rand);
 
    //Выводим его на консоль.
    std::cout << "Исходный вектор: "             
              << std::endl;
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
 
    //Выводим на консоль числа вектора, которые меньше средней арифметической
    //его максимума и минимума.
    print_nums_less_aver_max_min(v);
    std::cout << std::endl;   
    return 0;
}
0
Evghenii.88
0 / 0 / 0
Регистрация: 20.05.2010
Сообщений: 7
21.05.2010, 15:48  [ТС] #6
gh05t
выдаёт ошибку : Namespace name expected
может у меня с компилятором что-то не то? Borland C++ 5.02

Добавлено через 40 минут
gh05t Cпасибо большое очень помог!
0
21.05.2010, 15:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.05.2010, 15:48
Привет! Вот еще темы с ответами:

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

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

Написать встроенную функцию min () и обычную функцию imin (), которые возвращают меньшее из двух целых значений - C++
Написать встроенную функцию min () и обычную функцию imin (), которые возвращают меньшее из двух целых значений.

Написать программу, которая выводит значения факториалов чисел от 0 до N. Для вычисления факториала числа написать функцию пользователя - C++
Написать программу, которая выводит значения факториалов чисел от 0 до N. Для вычисления факториала числа написать функцию пользователя.


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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