Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Литература по файловому вводу-выводу https://www.cyberforum.ru/ cpp-beginners/ thread2495249.html
Привет Перерыл кучу литературы по плюсам, но не смог найти то что мне нужно. подскажите какую-нибудь литературу по файловому вводу-выводу в плюсах. чтобы примеров было много и растолковывалось для...
Долговой журнал магазина C++
Доброго здравия, дорогие форумчане. Программировать я еще только учусь. Хочу написать долговой журнал магазина, который состоит из записей клиентов и их долговой историей (мысль навеяна весьма...
C++ Календарь майя https://www.cyberforum.ru/ cpp-beginners/ thread2495237.html
Как известно, календарь майя заканчивался на 2012 году. Однако Чарли Фрост считает, что календарь должен быть другим. Поэтому он попросил Джексон Кёртиса, чтобы тот помог составить календарь. Так...
C++ Ввод и вывод в структурах https://www.cyberforum.ru/ cpp-beginners/ thread2495233.html
Подскажите пожалуйста, как для структуры создать оператор ввода и вывода, ведь << и >> побитовые сдвиги влево и вправо
C++ Гарри Поттер и магические шахматы [C, B’] - массивыыыыыы
Гарри, Рон и Гермиона попали на шахматное поле. Пустое. С загадочными числами. Гермиона, мысленно пролистывая страницы книг, отпечатанные в памяти, быстро поняла, что это древняя магическая...
C++ Массив: Последнее дело Оушена. Составьте маршрут, следуя которому, Оушен успеет ограбить все банки. Оушен отправляется на пенсию! Но для обеспечения безбедной старости он решил напоследок ограбить n банков. Так совпало, что все банки расположены на прямой. Позиция банка с номером i... https://www.cyberforum.ru/ cpp-beginners/ thread2495226.html
C++ с++ где тут ошибка #include <iostream> using namespace std; template<typename T,int N> int arr_size(T (&arr1)) { size_t size; size=sizeof(arr1)/sizeof(arr1); return size; https://www.cyberforum.ru/ cpp-beginners/ thread2495222.html Помогите Морфеусу узнать, сможет ли Нео убить ровно N агентов ударами левой и правой ноги C++
Здравствуйте, всем задача след.: Морфеус и Нео готовятся к очередной схватке с армией агентов. Морфеус отвечает за разработку всей операции, а Нео проявляет свои способности избранного. А именно...
C++ [Массив] Эдди Морра и русская мафия https://www.cyberforum.ru/ cpp-beginners/ thread2495199.html
Здравствуйте, суть задачи на фото показано, буду рад если поможите
C++ Вывести значения большой структуры https://www.cyberforum.ru/ cpp-beginners/ thread2495197.html
Привет. Возникла такая проблемка. Имеется большая структура разнотипных данных, состоящая примерно из 50 элементов. И надо вывести все значения из этой структуры в таблицу. И как мне поступить?...
C++ Как отправлять данные на дескриптор созданный hci_le_create_conn?
Здравствуйте,как можно отправить данные на дескриптор который создается с помощью hci_le_create_conn? Не могу никак найти функцию для этого.
C++ Вставить число 0 в середину на k место, сделать через указатель https://www.cyberforum.ru/ cpp-beginners/ thread2495183.html
Вставить число 0 в середину на k место (0<=k<=10) массива М (20), сдвинув вправо значения элементов массива. Выделить память сразу под 21 элемент. Все обращения к элементам массивов производить...
0 / 0 / 0
Регистрация: 15.05.2012
Сообщений: 200
0

Программа читает из файла, ищет среднее и медиану, не компилируется - C++ - Ответ 13797985

30.08.2019, 05:16. Показов 441. Ответов 0
Метки (Все метки)

Программа читает из файла, ищет среднее и медиану, не компилируется. IDE VS 2019.
Часть которая закоменчена работает.

Вот что говорит компилятор.
https://ibb.co/t4hFDkD
https://ibb.co/zQQ0sfd
https://ibb.co/bPH3HB7

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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
//файл main.cpp
#include <Header.h>
#include <Reading.h>
 
void fread_to_vector(vector<Reading>& read, string iname)
{
    ifstream ist{ iname };
    if (!ist)
        error("Невозможно открыть входной файл", iname);
    int hour;
    double temp;
    while (ist >> hour >> temp)
    {
        if (0 <= hour && 23 >= hour)
            read.push_back(Reading{ hour, temp });
        else
            error("Некорректное время в файле ", iname);
        if (ist.eof()) {
            cout << "Достигнут конец файла" << iname << endl;
            return;
        }
    }
}
 
void write_to_file(const vector<Reading>& read, string oname)
{
    ofstream ost{ oname };
    if (!ost)
        error("Невозможно открыть выходной файл", oname);
    for (int i = 0; i < read.size(); ++i)
        ost << read[i].hour << ' ' << read[i].temperature << endl;
}
 
void enter(vector<Reading>& read) 
{
    cout << "Введите час и температуру 10 раз" << endl;
    for (int i = 0; i < 10; ++i)
    {
        int hour;
        double temp;
        cin >> hour >> temp;
        if (0 <= hour && 23 >= hour)
            read.push_back(Reading{ hour, temp });
        else
            error("Некорректное время");
    }
}
 
void print(const vector<Reading>& read)
{
    cout << endl;
    for (int i = 0; i < read.size(); ++i)
    {
        cout << read[i].hour << ' ' << read[i].temperature << endl;
    }
    cout << endl;
}
 
double sum(const vector<Reading>& read)
{
    double s = 0;
    for (int i = 0; i < read.size(); ++i)
        s += read[i].temperature;
    return s;
}
 
double mediana(vector<Reading> read)
{
    sort(read.begin(), read.end());
    if (read.size() % 2 == 1)
        return read[(read.size() - 1) / 2].temperature;
    else
        return (read[read.size() / 2].temperature + read[read.size() / 2 - 1].temperature) / 2;
}
 
int main()
try
{
    setlocale(LC_ALL, "Russian");
//  vector<Reading> raw_t;
//  enter(raw_t);
//  print(raw_t);
//  write_to_file(raw_t, "raw_temps.txt");
    vector<Reading> work_t;
    fread_to_vector(work_t, "raw_temps.txt");
    print(work_t);
    cout << "Среднее " << sum(work_t) / work_t.size() << endl
        << "Медиана " << mediana(work_t) << endl;
}
catch (exception& e) {
    cerr << "exception: " << e.what() << endl;
    char c;
    while (cin >> c && c != ';');
    return 1;
}
C++
1
2
3
4
5
6
7
//файл Reading.h
#pragma once
struct Reading
{
    int hour;
    double temperature;
};
Добавлено через 29 минут
не компилируется из-за функции double mediana(vector<Reading> read)

Добавлено через 3 минуты
а все понял, он просто не знает как сортировать пользовательский тип

Вернуться к обсуждению:
Программа читает из файла, ищет среднее и медиану, не компилируется C++
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.08.2019, 05:16
Готовые ответы и решения:

Программа которая ищет среднее арифметическое
Ребят помогите пожалуйста, дали задание , но так уж вышло что в паскале я совсем ничего не...

Программа не читает данные с файла
Дан простейший интерфейс, при нажатии прочесть из файла (реализация строки 27-30) консоль...

Программа с чтением файла не компилируется
Программа с чтением файла не компилируется. Почему?

Программа неправильно читает заданые данные из текстового файла
Собственно, программа неправильно читает заданые данные из текстового файла. При вводе данных с...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.08.2019, 05:16

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Программа читает текст из файла, и определяет сколько слов состоящих не более 4 букв
Программа читает текст из файла, и определяет сколько слов состоящих не более 4 букв. Написал код...

Программа компилируется в Borland 6.0 но не компилируется в Visual Studio 2008
Ета програма компилируетса в борланде 6.0 но не компилируетса в Visualstudio 2008 и в борланде 10-м...

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