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

Определить класс с именем STUDENT - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
A6pam4uk
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 4
27.02.2013, 12:17     Определить класс с именем STUDENT #1
1. Определить класс с именем STUDENT, содержащий следующие поля:
- фамилия и инициалы;
- номер группы;
- успеваемость (массив из пяти элементов).
2. Написать методы, выполняющие следующие действия:
- ввод с клавиатуры данных в массив, состоящий из десяти объектов типа STUDENT;
- вывод на дисплей фамилий и номеров групп для всех студентов, включенных в массив, если средний балл студента больше 4.0; если таких студентов нет, вывести соответствующее сообщение.
помогите пожалуйста, надо зачет по этой проге получить, а что сделать понять не могу(
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
A6pam4uk
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 4
02.03.2013, 11:04  [ТС]     Определить класс с именем STUDENT #2
"спасибо" что помогли
Venzo
02.03.2013, 11:41
  #3

Не по теме:

с этим заданием уже столько тем, что как только видишь название темы, желания заходить нету.

Wald
 Аватар для Wald
9 / 9 / 1
Регистрация: 28.02.2013
Сообщений: 16
02.03.2013, 12:18     Определить класс с именем STUDENT #4
Цитата Сообщение от A6pam4uk Посмотреть сообщение
...
- успеваемость (массив из пяти элементов). ...
Поясни про массив.
egor2116
 Аватар для egor2116
337 / 368 / 42
Регистрация: 20.01.2013
Сообщений: 1,100
02.03.2013, 13:09     Определить класс с именем STUDENT #5
Поясни про массив.
Как я понял в массиве будут оценки например за семестр, а в массиве для того чтобы найти средний бал.

Так в чем проблема, делай класс поля это класса
- фамилия и инициалы; (char* или String)
- номер группы; (char* или String)
- успеваемость (массив из пяти элементов). (int* или int[])
Сделай set и get методы для записи и получения этих данных.
C++
1
2
3
4
5
6
void setfName(char* или String);
(char* или String) getfName();
void setlName(char* или String);
(char* или String) getlName();
void setGroup(char* или String);
(char* или String) getGroup();
и т.д.
Wald
 Аватар для Wald
9 / 9 / 1
Регистрация: 28.02.2013
Сообщений: 16
02.03.2013, 14:20     Определить класс с именем STUDENT #6
Цитата Сообщение от A6pam4uk Посмотреть сообщение
1. Определить класс с именем STUDENT, содержащий следующие поля:
- фамилия и инициалы;
- номер группы;
- успеваемость (массив из пяти элементов).
2. Написать методы, выполняющие следующие действия:
- ввод с клавиатуры данных в массив, состоящий из десяти объектов типа STUDENT;
- вывод на дисплей фамилий и номеров групп для всех студентов, включенных в массив, если средний балл студента больше 4.0; если таких студентов нет, вывести соответствующее сообщение.
помогите пожалуйста, надо зачет по этой проге получить, а что сделать понять не могу(

Всё готово. Твоя задача состоит в том, чтобы только правильно создать проект и скомпилировать его

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
// student.h
 
#ifndef STUDENT_H_
#define STUDENT_H_
 
#include <string>
 
class Student {
private:
    static const int MAX = 5;   // шкала баллов
    static int quantity;        // общее количество учеников
    std::string name;           // имя
    std::string surname;        // фамилия
    int group_number;           // номер группы
    int score[MAX];             // личные оценки за семестр
    // находим средний балл студента по 5-ти бальной системе
    float GPA(int sc[], int size) {
        int i = 0;
        float gpa = 0;
        while(i < size) {
            gpa += sc[i];
            i++;
        }
        return gpa/size;
    }
public:
    Student();
    Student(std::string n, std::string sn, int g, int sc[]);
    void Init(void);
    void PrintStudent(void);
};
 
#endif
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
// student.cpp
 
#include <iostream>
#include "student.h"
 
int Student::quantity = 0;
 
Student::Student() {
    Init();
}
 
void Student::Init(void) {
    quantity++;
    std::cout << "Student form #" << quantity << std::endl;
    std::cout << ">> Name: ";
    std::cin >> name;
    std::cout << ">> surname: ";
    std::cin >> surname;
    std::cout << ">> group_number: ";
    std::cin >> group_number;
    std::cout << ">> Score\n";
 
    for(int i = 0; i < MAX; i++) {
        std::cout << i+1 << ": ";
        std::cin >> score[i];
    }
 
    float gpa = GPA(score, MAX);
    std::cout << "GPA = " << gpa << "\n\n";
}
 
Student::Student(std::string n, std::string sn, int g, int sc[]) {
    name = n;
    surname = sn;
    group_number = g;
    score[MAX] = sc[MAX];
}
 
void Student::PrintStudent(void) {
    float gpa = GPA(score, MAX);
    std::cout << "\n----------------\n" << std::endl;
    if(gpa >= 4.0) {
        std::cout << "Name: " << name << "\nSurname: " << surname
            << "\nGroup number: " << group_number << "\nScore: ";
        for(int i = 0; i < MAX; i++) {
            std::cout << score[i] << " ";
        }
        std::cout << "\nGPA: " << gpa << std::endl;
    }
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// main.cpp
 
#include <iostream>
#include "student.h"
 
int main() {
    const int max_student = 10;
    Student s[max_student];
 
    for(int i = 0; i < max_student; i++) {
        s[i].PrintStudent();
    }
 
    std::cin.get();
    std::cin.get();
    return 0;
}
Yandex
Объявления
02.03.2013, 14:20     Определить класс с именем STUDENT
Ответ Создать тему
Опции темы

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