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

Поиск ближайшего среднего арифметического (на C++) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Динамический массив структур qwer заданного пользователем размера http://www.cyberforum.ru/cpp-beginners/thread60337.html
Помогите, пожалуйста. Есть задача: спроектировать структуру qwer, которая хранит некую информацию, например, количество книг и их названия. Требуется написать программу, которая запршивает,сколько книг надо включить в каталог. Затем программа применяет new для создания динамического размера структур qwer указанного размера. Как это реализовать? Если обычным cin -ом считывать количество книг,...
C++ Создать класс Rectangle, разработав следующие элементы класса Создать класс Rectangle, разработав следующие элементы класса: a) Поля: int a, b; b) Конструктор, позволяющий создать экземпляр класса с заданными длинами сторон. c) Методы позволяющие: 1.вывести длины сторон прямоугольника на экран; 2.рассчитать периметр прямоугольника; 3.расчитать площадь прямоугольника. d) Свойства: 1.получить-установить длины сторон прямоугольника... http://www.cyberforum.ru/cpp-beginners/thread60329.html
C++ Вопрос про потоки вывода
Здравствуйте, подскажите в чём кординальная разница между использованием cerr и cout?!?!
Вывести все четные и нечетные числа массива C++
Здравствуйте!!! У меня есть такое задание не могу решать может поможете?? 1. Надо заполнить все дни января(31 день), в которых был снег(snow) и ввести время падания снега или если осадков не было поставить знак - . Вывести день(дни), снег и время осадка продолжительностью не более 2 часов. Пример входных данных 1 January snow 06.25-10.04 2 January snow 14.10-15.10 3 January - ...
C++ DOS-866 в Unicode (UTF-8) http://www.cyberforum.ru/cpp-beginners/thread60309.html
Замаялся с кодировками. в файле данные в Unicode (UTF-8) у меня в консольнмо приложении в DOS-866. начинаю сливать данные из консоли и из моего файла, получается смесь дикая и половина текста не читабельна. как привести их к одному виду? желательно к Unicode (UTF-8) или, наверняка, есть универсальный метод преобразовывания и предоставляется он языком, только я его не знаю. просветите по...
C++ программа расчета и отображения накладной кто умеет такое решитьУпражнение 2.1. Напишите программу вычисления периметра и площади прямо-угольника. Длины сторон прямоугольника должны вводиться пользователем с клавиатуры, а результаты с соответствующими комментариями выводиться на экран. Упражнение 2.2. Напишите программу, которая выводит в левом верхнем углу экрана квадрат, изображенный с использованием символа, который пользователь... подробнее

Показать сообщение отдельно
Estale
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 20
01.11.2009, 17:18  [ТС]     Поиск ближайшего среднего арифметического (на C++)
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
Ну вот как-то так
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>
#include <cmath>
using namespace std;
 
int main()
{
    const int n=5;
    double x;
    double y[n];
    int  y1=0, y2=1; 
    double ya;
    
    cout << "Please, input x = ";
    cin >> x;
    
    for (int i=0; i<n; i++)
    {
        cout << "Please, input y[" << i+1 << "] = ";
        cin >> y[i];
    }
    
    ya = fabs((y[y1]+y[y2])/2 - x);
    for (int i=0; i<n-1; i++)
    {
        for (int j=i+1; j<n; j++)
        {
            double aY = fabs(((y[i]+y[j])/2 - x));
            if (aY < ya)
            {
                y1 = i;
                y2 = j;
                ya = aY;
            }
        }
    }
    
    cout << "\nY1 = " << y[y1] << endl;
    cout << "Y2 = " << y[y2] << endl;
    
    return 0;
}
Не компилировал... Проверь..
Вроде вот так запускается:
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.h>
#include <math.h>
#include <stdio.h>
 
int main()
{
    const int n=5;
    double x;
    double y[n];
    int  y1=0, y2=1; 
    double ya;
    
    cout << "Please, input x = ";
    cin >> x;
    
    for (int i=0; i<n; i++)
    {
        cout << "Please, input y[" << i+1 << "] = ";
        cin >> y[i];
    }
    
    ya = fabs((y[y1]+y[y2])/2 - x);
    for (int i=0; i<n-1; i++)
    {
        for (int j=i+1; j<n; j++)
        {
            double aY = fabs(((y[i]+y[j])/2 - x));
            if (aY < ya)
            {
                y1 = i;
                y2 = j;
                ya = aY;
            }
        }
    }
    
    cout << "\nY1 = " << y[y1] << endl;
    cout << "Y2 = " << y[y2] << endl;
    
    return 0;
}
Почему n=5? Если не сложно- объясните алгоритм, чтоб разобраться...
 
Текущее время: 03:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru