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

В массиве найти два элемента среднее арифметическое которых ближе всего к заданному значению - C++

Восстановить пароль Регистрация
 
brazhnyk
0 / 0 / 0
Регистрация: 04.11.2014
Сообщений: 31
30.06.2015, 10:56     В массиве найти два элемента среднее арифметическое которых ближе всего к заданному значению #1
Дано действительное число х и массив A [n]. В массиве найти два элемента, среднее арифметическое которых ближе всего к х
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2015, 10:56     В массиве найти два элемента среднее арифметическое которых ближе всего к заданному значению
Посмотрите здесь:

C++ В массиве найти два члена,среднее арифметическое которых ближе всего к Х
C++ Массив: Заменить последний из отрицательных элементов в массиве на три элемента, равных заданному значению.
C++ Даны два целых числа; найти их среднее арифметическое, их среднее геометрическое
C++ Составить программу вычисления экспоненты числа, значение которого ближе всего к значению функции y
C++ Найти два последовательных члена последовательности, среднее арифметическое которых ближе всего к определенному числу
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Байт
 Аватар для Байт
13988 / 8819 / 1230
Регистрация: 24.12.2010
Сообщений: 15,975
30.06.2015, 11:31     В массиве найти два элемента среднее арифметическое которых ближе всего к заданному значению #2
brazhnyk, Ваши наброски, соображения?
Den41LxD
18 / 18 / 10
Регистрация: 11.12.2014
Сообщений: 52
30.06.2015, 12:59     В массиве найти два элемента среднее арифметическое которых ближе всего к заданному значению #3
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
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
    setlocale(0,"Rus");
    int n;
    cout << "введи количество символов в массиве ==> ";
    cin >> n;
    int * arr;
    arr=new int [n];
    bool l;
    cout << "0 - заполнить массив самому\n1 - заполнить рандомно\n";
    cin >> l;
    if(l==0)
    {
        for(int i=0;i<n;i++)
        {
            cout << "введи элемент [" << i+1 << "]";
            cin >> arr[i];
        }
    }
    else
    {
        srand(time(NULL));
        for(int i=0;i<n;i++)
        {
            arr[i]=rand()%20;
            cout << arr[i] << " ";
        }
    }
    cout << endl;
    int x;
    cout << "введи х ==> ";
    cin >> x;
    double f=abs((arr[0]+arr[1])/2),t;
    for(int i=0;i<n-1;i++)
    {
        for(int j=i;j<n;j++)
        {
            double b=abs((arr[i]+arr[j])/2);
            t=abs(x-b);
                if(x==b)
            {
                cout << "совпадение: среднее арифметическое " << arr[i] << " и " << arr[j] << " = " << b << endl << endl;
                goto loop;
            }
            else if(t<f)
            {
                cout << "новое среднее ближе всего к х: среднее арифметическое " << arr[i] << " и " << arr[j] << " = " << b << endl << endl;
                f=t;
            }
        }
    }
    loop:
    cout << "найдено совпадение,выход из программы\n";
    system("pause");
}
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
30.06.2015, 13:03     В массиве найти два элемента среднее арифметическое которых ближе всего к заданному значению #4
Den41LxD, проверяет не только пары чисел, но и число с самим собой. Не отсеивается случай if (i==j)
Den41LxD
18 / 18 / 10
Регистрация: 11.12.2014
Сообщений: 52
30.06.2015, 14:37     В массиве найти два элемента среднее арифметическое которых ближе всего к заданному значению #5
Ну поменяй
C++
1
for(int j=i;j<n;j++)
на
C++
1
for(int j=0;j<n;j++)
оно будет все проверять все
Байт
 Аватар для Байт
13988 / 8819 / 1230
Регистрация: 24.12.2010
Сообщений: 15,975
30.06.2015, 16:10     В массиве найти два элемента среднее арифметическое которых ближе всего к заданному значению #6
Цитата Сообщение от Den41LxD Посмотреть сообщение
Ну поменяй
...
На
C++
1
for(int j=i+1;j<n;j++)
Добавлено через 54 секунды
Цитата Сообщение от Den41LxD Посмотреть сообщение
оно будет проверять все
А зачем?

Добавлено через 1 минуту
Цитата Сообщение от Байт Посмотреть сообщение
brazhnyk, Ваши наброски, соображения?
Однако, мои вопросы к ТС остались без ответа...
Yandex
Объявления
30.06.2015, 16:10     В массиве найти два элемента среднее арифметическое которых ближе всего к заданному значению
Ответ Создать тему
Опции темы

Текущее время: 23:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru