Struct Class em C++

main.cpp:


#include <iostream>
#include <stdio.h>
#include "Student.h"
#include "Class.h"

using namespace std;

int main()
{
    Class c;
    newClass(c, "A"); //cria o nome para o objeto classe "c"

    Student s;              //cria o estudante s
    newStudent(s, "john");  //cria o nome para o objeto estudante "s"
    setRollNumber(s, 1234);
    setMarks(s, 7.0);
    addStudent(c, s);       //adiciona o estudante "s" na classe "c"

    Student t;              //cria o estudante s
    newStudent(t, "Daniel");  //cria o nome para o objeto estudante "s"
    setRollNumber(t, 12345);
    setMarks(t, 9.0);
    addStudent(c, t);       //adiciona na classe "c" o estudante "t"

    cout << "CLASSE :" << getClassName(c) << endl;

    cout << "   NUMEROS DE ESTUDANTES NA CLASSE : " << getNumberOfStudents(c) << endl;
    cout << "   ESTUDANTES : " << endl;
    cout << "            " << getName(s) << endl;
    cout << "            MATRICULA : " << getRollNumber(s) << endl;
    cout << "            NOTA : " << getMarks(s) << endl;

    cout << endl;

    cout << "            " << getName(t) << endl;
    cout << "           MATRICULA : " << getRollNumber(t) << endl;
    cout << "           NOTA : " << getMarks(t) << endl;
    cout << endl;


    cout << "   MEDIA DA CLASSE : " << getMean(c);
}



Student.h:

#include <iostream>
#include <stdio.h>
#include "Student.h"
#include "Class.h"


struct Class{
string className; //nome da classe
const int MAXIMUM_NUMBER_OF_STUDENT = 3;
int numberOfStudents; //numero de estudantes
struct Student students[40];

void newClass(string className){
this-> className = className;
}

void addStudent(Class &class, Student student) {
if (numberOfStudents == MAXIMUM_NUMBER_OF_STUDENT) {
cout << "Numero máximo de estudantes na classe excedido!!!"<<endl;
exit(0);
}
students[numberOfStudents] = student;
numberOfStudents++;
}

void setNumberOfStudents(int numberOfStudents, int MAXIMUM_NUMBER_OF_STUDENT){
this-> numberOfStudents = numberOfStudents;
}
int getNumberOfStudents(){
return numberOfStudents;
}
float getMean(){ //retorna a media simples da turma
float mean = 0.0;
for(int i=0; i <= numberOfStudents ; i++){
mean = mean + students[i].getMarks();
}
return mean;
}
Student getStudentByPosition(){

}
string getClassName(){
return className;
}

};


Student.cpp:

#include "Student.h"
#include <iostream>

void newStudent(Student &student, string name){
    student.name = name;
}

void setRollNumber(Student &student, float rollNumber){
    student.rollNumber = rollNumber;
}

void setMarks(Student &student, float marks){
    student.marks = marks;
}

string getName(Student &student){
    return student.name;
}

int getRollNumber(Student &student){
    return student.rollNumber;
}

float getMarks(Student &student){
    return student.marks;
}



Class.h:

#ifndef CLASS_H
#define CLASS_H
#include <iostream>
#include "Student.h"

using namespace std;

struct Class{
    string className;    //nome da classe
    const int MAXIMUM_NUMBER_OF_STUDENT = 3;
    int numberOfStudents;   //numero de estudantes
    Student students[30];
};

void newClass(Class &classe, string className);
void addStudent(Class &classe,Student student);                                  //adiciona o estudante classe
void setNumberOfStudents(int numberOfStudents, int MAXIMUM_NUMBER_OF_STUDENT);
int getNumberOfStudents(Class &classe);
float getMean(Class &classe);
Student getStudentByPosition(Class &classe, int position);
string getClassName(Class &classe);

#endif // CLASS_H



Class.cpp:


#include "Class.h"
#include <cstdlib>
#include <iostream>

void newClass(Class &classe, string className){
    classe.className = className;
    classe.numberOfStudents = 0;
}

void addStudent(Class &classe, Student student) {
    if (classe.numberOfStudents == classe.MAXIMUM_NUMBER_OF_STUDENT) {
        cout << "Numero máximo de estudantes na classe excedido!!!"<<endl;
        exit(0);
    }
    classe.students[classe.numberOfStudents] = student;
    classe.numberOfStudents++;
}

void setNumberOfStudents(Class &classe, int numberOfStudents, int MAXIMUM_NUMBER_OF_STUDENT){
    classe.numberOfStudents = numberOfStudents;
}

int getNumberOfStudents(Class &classe){
    return classe.numberOfStudents;
}

float getMean(Class &classe){                        //retorna a media simples da turma
    float mean = 0.0;
    for(int i=0 ; i < classe.numberOfStudents ; i++){
        mean  = mean + classe.students[i].marks;
    }
    return mean/classe.numberOfStudents;
}

Student getStudentByPosition(Class &classe, int position){
    return classe.students[position];
}

string getClassName(Class &classe){
    return classe.className;
}


Comentários

Postagens mais visitadas deste blog

Método da Interpolação por Eliminação Gaussiana em Scilab

Cálculo do Erro para Interpolação em Scilab

Método de Interpolação de Lagrange em Scilab