0 / 0 / 0
Регистрация: 08.11.2019
Сообщений: 5

Подсчитать среднее время подготовки студента к каждому предмету

10.01.2020, 19:51. Показов 1094. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Читая данные из файла и используя массив структур решить следующую задачу. Файл содержит сведения о времени, которое тратит каждый студент на подготовку к занятиям по различным дисциплинам. Подсчитать среднее время подготовки к каждому предмету и общее время, которое затрачивает каждый студент. Предусмотреть возможность корректировки отдельных элементов файла по запросу.
Не знаю как выполнить эту часть задания (Предусмотреть возможность корректировки отдельных элементов файла по запросу)

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
#include <iostream>
#include <fstream>
using namespace std;
struct student
 
{
    char surname[2000];
    int time[2][2];
};
 
int main()
 
{
    setlocale(LC_ALL, "Russian");
    const int n = 5;
    double s = 0;
    double avg = 0;
    student *stud1 = new student[n];
    ifstream file_econ("econ.txt");
    ifstream file_him("him.txt");
    cout << " Экономика " << endl;
    for (int i = 0; i < n; i++)
 
    {
 
        file_econ >> stud1[i].surname >> stud1[i].time[0][1];
        cout << stud1[i].surname << " " << stud1[i].time[0][1] << " ";
        s += stud1[i].time[0][1];
 
    }
    avg = s / n;
    cout << endl << "Среднее время затраченное на экономику - " << avg << endl;
    cout << endl << " Химия " << endl;
    s = 0;
    avg = 0;
    for (int i = 0; i < n; i++)
 
    {
        file_him >> stud1[i].surname >> stud1[i].time[1][1];
        cout << stud1[i].surname << " " << stud1[i].time[1][1] << " ";
        s += stud1[i].time[1][1];
 
    }
 
    avg = s / n;
    cout << endl << "Среднее время затраченное на химию - " << avg << endl << endl;
    for (int i = 0; i < n; i++)
 
    {
        int summ = 0;
        for (int j = 0; j <= 5; j++)
 
        {
        summ += stud1[i].time[j][1];
        }
        cout << "Общее время затраченное студентом " << stud1[i].surname << " = " << summ << endl;
 
    }
 
    file_econ.close();
    file_him.close();
    system("pause");
    delete stud1;
    return 0;
 
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.01.2020, 19:51
Ответы с готовыми решениями:

Подсчитать средний балл каждого студента, общий средний балл по каждому предмету
Приложение под Windows должно подсчитывать средний балл каждого студента, общий средний балл по каждому предмету. Исходной информацией...

Средний балл каждого студента по каждому предмету
Пользователь последовательно вводит оценки студентов по предметам. Кол-во студентов и предметов непостоянное. На выходе хочет получить...

Получить среднее арифметическое по трем предметам ученика и среднее по каждому предмету всех студентов
есть список студентов и оценки по трем предметам(химия, физика , алгебра пусть будут) , нужно получить среднее число, среднее...

9
103 / 82 / 78
Регистрация: 11.05.2015
Сообщений: 201
10.01.2020, 21:02
Что подразумевается под корректировкой отдельных элементов файла? Добавление новых записей и оценок в файл из программы?
0
0 / 0 / 0
Регистрация: 08.11.2019
Сообщений: 5
10.01.2020, 21:08  [ТС]
Я этого и не понимаю
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
10.01.2020, 21:30
Цитата Сообщение от looksfor Посмотреть сообщение
Я этого и не понимаю
А почему у тебя там два файла? Вроде должен быть один.
0
0 / 0 / 0
Регистрация: 08.11.2019
Сообщений: 5
10.01.2020, 21:53  [ТС]
Сделал к одному файлу
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
10.01.2020, 21:54
Цитата Сообщение от looksfor Посмотреть сообщение
Сделал к одному файлу
Молодец. Покажи
0
0 / 0 / 0
Регистрация: 08.11.2019
Сообщений: 5
10.01.2020, 21:56  [ТС]
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
96
97
98
99
100
101
#include <iostream>
 
#include <fstream>
 
using namespace std;
 
struct student
 
{
 
    char surname[2000];
 
    int time[2][2];
 
};
 
int main()
 
{
 
    setlocale(LC_ALL, "Russian");
 
    const int n = 5;
 
    double s = 0;
 
    double avg = 0;
 
    student *stud1 = new student[n];
 
    ifstream file_econ("econ.txt");
 
    
 
    cout << " Экономика " << endl;
 
    for (int i = 0; i < n; i++)
 
    {
 
        file_econ >> stud1[i].surname >> stud1[i].time[0][1];
 
        cout << stud1[i].surname << " " << stud1[i].time[0][1] << " ";
 
        s += stud1[i].time[0][1];
 
    }
 
    avg = s / n;
 
    cout << endl << "Среднее время затраченное на экономику - " << avg << endl;
 
    cout << endl << " Химия " << endl;
 
    s = 0;
 
    avg = 0;
 
    for (int i = 0; i < n; i++)
 
    {
 
        file_econ >> stud1[i].surname >> stud1[i].time[1][1];
 
        cout << stud1[i].surname << " " << stud1[i].time[1][1] << " ";
 
        s += stud1[i].time[1][1];
 
    }
 
    avg = s / n;
 
    cout << endl << "Среднее время затраченное на химию - " << avg << endl << endl;
 
    for (int i = 0; i < n; i++)
 
    {
 
        int summ = 0;
 
        for (int j = 0; j < 2; j++)
 
        {
 
            summ += stud1[i].time[j][1];
 
        }
 
        cout << "Общее время затраченное студентом " << stud1[i].surname << " = " << summ << endl;
 
    }
 
    file_econ.close();
 
    
 
    system("pause");
 
    delete stud1;
 
    return 0;[CPP]
[/CPP]
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
10.01.2020, 22:01
И где теперь различные дисциплины? Надо, наверное, добавить ещё одну переменную в структуру student - дисциплина. И, соответственно, в файл
0
0 / 0 / 0
Регистрация: 08.11.2019
Сообщений: 5
10.01.2020, 22:23  [ТС]
ну тут я уже не понимаю
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
10.01.2020, 22:28
Цитата Сообщение от looksfor Посмотреть сообщение
ну тут я уже не понимаю
C++
1
2
3
4
5
6
7
8
9
10
11
struct student
 
{
 
    char subj[256]; //Дисциплина
 
    char surname[2000];
 
    int time[2][2];
 
};
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.01.2020, 22:28
Помогаю со студенческими работами здесь

Среднее арифметическое оценок всех учеников по каждому предмету
Помогите сделать цикл,который будет выводить среднее арифметическое всех учеников по каждому предмету. #include&quot;pch.h&quot; ...

Вывод оценок по каждому предмету
Приветствую. Нужна помощь в написании запроса. Пробовал по всякому, но нужный результат не получается. Есть исходные две таблицы: ...

Найти вероятность конкретного уровня подготовки студента при условии успешной сдачи им экзамена
2. В студенческой группе 3 человека имеют высокий уровень подготовки, 19 человек – средний и 3 – низкий. Вероятности успешной сдачи...

Определить средний балл по каждому предмету
В сессию m студентов одной группы сдали 5 экзаменов. Результаты сессии представлены в виде матрицы N (m 5). Определить средний балл по...

Выведите средний балл по каждому предмету.
На вход подается целое натуральное число N и N строк вида:&lt;Фамилия&gt;&lt;Название предмета&gt;&lt;балл&gt;. Выведите средний балл по каждому...


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

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

Новые блоги и статьи
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru