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

Форматированный ввод данных в массив. Поиск среднего значения. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Работа с COM-портами. http://www.cyberforum.ru/cpp-beginners/thread187454.html
Необходимо написать программу, получающую время с ком-порта (вообще не представляю как это сделать) и устанавливающая это время на компьютере.
C++ if (feof(stdin)) while(!feo(stdin)) while(!feof(stdin) ) Как с ними правильно работать в Си?? Объясните принцип пожалуйста? http://www.cyberforum.ru/cpp-beginners/thread187449.html
Вычислить n! и n!! C++
Всем доброго время суток, помогите пожалуйста задали написать программы: 1) n! = 1 * 2 * 3 * ... * n 2) n!! = n * (n - 2) * (n - 4) * ... Вообще не знаю как делать:wall::wall:
Функция, переставляющая цифры заданного целого числа в обратном порядке C++
Составить и проверить функцию которая переставляет цифры заданного целого числа в обратном порядке и получает новое число. Мы только начали проходить функции.Вот я сделала программу которая переворачивает число.А вот теперь из этой программы сделать функцию не получается.Помогите пожалуйста! //--------------------------------------------------------------------------- #include <vcl.h>...
C++ Примеры перегрузки вычитания, умножения, деления http://www.cyberforum.ru/cpp-beginners/thread187436.html
Помогите найти Примеры перегрузки вычитания, умножения, деления
C++ Вычислить произведение первых n множителей Дано натуральное число n. Обчислть произведение первых n множителей 2/1*2/3*4/3*4/5*6/5*6/7 Дублирование тем запрещено правилами форума (п. 3.4). Не плодите одинаковых тем. подробнее

Показать сообщение отдельно
AIKru
1 / 1 / 0
Регистрация: 06.12.2009
Сообщений: 9
07.11.2010, 14:50     Форматированный ввод данных в массив. Поиск среднего значения.
Дана задача:
Форматированный ввод данных в массив. Поиск среднего значения.

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

Как организовать форматированный ввод данных в массив (эти самые оценки в пределах от 0 до 100)? Как поправить программу, чтобы она считала среднюю оценку для каждого экзамена правильно (Я её закомментил /* */)?
PS: Как отсортировать массив по возрастанию?

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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#include "stdafx.h"
#include <iostream> //директивы препроцессора
 
using std::cout;
using std::endl;
using std::ios;
 
#include <iomanip> //заголовочный файл, нужен для использования setw()
 
 
using std::setw;
using std::setiosflags;
using std::setprecision;
 
const int students = 8; //Число студентов
const int exams = 4; // Число экзаменов/рейтингов (3 рейтинга + экзамен =) )
 
int minimum (int [] [exams], int, int);
int maximum (int [] [exams], int, int);
double average (int [], int);
double averageexam (int [], int);
void printArray ( int [] [exams], int, int);
 
int main()
{
    int studentGrades [students][exams] =
        { { 54, 98, 88, 93},
          { 96, 87, 35, 54},
          { 94, 21, 71, 98},
          { 88, 77, 55, 77},
          { 75, 76, 67, 68},
          { 77, 88, 88, 88},
          { 88, 99, 87, 49},
          { 54, 68, 87, 88} };
 
    cout << "Array:\n";
    printArray ( studentGrades, students, exams );
    cout << "\n\nThe worst grade: "
         << minimum ( studentGrades, students, exams )
         << "\nThe best grade: "
         << maximum ( studentGrades, students, exams ) << '\n';
 
    for ( int person = 0; person < students; person++ )
        cout << "Average grade of the student " << person << " is equal "
             << setiosflags ( ios::fixed | ios::showpoint)
             << setprecision (2)
             << average ( studentGrades [person], exams ) << endl;
/*
    for ( int person = 0; person < exams; person++ )
        cout << "The average grade on the exam " << person << " is equal "
             << setiosflags ( ios::fixed | ios::showpoint)
             << setprecision (2)
             << averageexam ( studentGrades [person], students ) << endl;
*/
    int d;
    scanf("%i", &d);
    return 0;
}
//Поиск минимальной оценки
int minimum ( int grades[] [exams], int pupils, int tests )
{
    int lowGrade = 100;
 
    for ( int i = 0; i < pupils; i++ )
 
        for ( int j = 0; j < tests; j++ )
 
            if ( grades[i][j] < lowGrade )
                lowGrade = grades[i][j];
    return lowGrade;
}
 
//Поиск максимальной оценки
int maximum ( int grades[] [exams], int pupils, int tests )
{
    int highGrade = 0;
 
    for ( int i = 0; i < pupils; i++ )
 
        for ( int j = 0; j < tests; j++ )
 
            if ( grades[i][j] > highGrade )
                highGrade = grades[i][j];
    return highGrade;
}
 
//Определение средней оценки для каждого студента
double average ( int setOfGrades [], int tests)
{
    int total = 0;
 
    for ( int i = 0; i < tests; i++)
        total +=setOfGrades[i];
 
    return static_cast<double>(total) / tests;
}
/*
//Определение средней оценки для каждого экзамена
double averageexam ( int setOfGrades [], int tests)
{
    int total = 0;
 
    for ( int j = 0; j < tests; j++)
        total +=setOfGrades[j];
 
    return static_cast<double>(total) / tests;
}
*/
//Вывод массива
void printArray( int grades[] [exams], int pupils, int tests)
{
    cout << "Exam N\t\t\t  [0]  [1]  [2]  [3]";
 
    for ( int i=0; i < pupils; i++) {
        cout << "\nGrades of the student [" << i << "] ";
 
        for ( int j = 0; j < tests; j++ )
            cout << setiosflags(ios::left) << setw(5)
                 << grades[i][j];
    }
}
Спасибо
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru