Ir para conteúdo
Fórum Script Brasil
  • 0

Exercício em C++


Natalie M.

Pergunta

Pessoal estou tentando fazer este exercício, mas preciso de ajuda .

Enunciado:

Desenvolva um programa que lê as notas dos graus parciais de uma disciplina a partir de um cadastro de alunos e calcula e imprime as notas finais.

DICA: Classes Main, Disciplina e Alunos, Métodos: Ler, Calcular, Imprimir, Atributos: Graus Parciais e Notas Finais.

Problemas que não consigo resolver:

Criei disciplina.h e alunos.h, mas não sei como relacionar as duas no programa.cpp.

Solicito o cadastro dos alunos para cada disciplina. Queria que as disciplinas já estivessem cadastradas, para poder apenas armazenar os alunos.

disciplina.h

#ifndef DISCIPLINA_H_INCLUDED
#define DISCIPLINA_H_INCLUDED
#include <string>

using namespace std;
using std::string;

class disciplina
{
    private:
        disciplina();
        string titulo;
        string alunos;

    public:
    disciplina(string t,string a);
    string get_titulo();
    void set_titulo(string);
    string get_alunos();
    void set_alunos(string);
    void exibirDados(void);
};

#endif // DISCIPLINA_H_INCLUDED
alunos.h
#ifndef ALUNOS_H_INCLUDED
#define ALUNOS_H_INCLUDED

#include <string>

using namespace std;
using std::string;

class alunos
{
    private:
        alunos();
        string nome;
        string disciplina;
        float nta;
        float ntb;
        float npa;
        float npb;
        float nga;
        float ngb;
        float nf;


    public:
    alunos(string n,string d);
    string get_nome();
    void set_nome(string);
    string get_disciplina();
    void set_disciplina(string);

    float get_nta();
    void set_nta(float);

    float get_ntb();
    void set_ntb(float);

    float get_npa();
    void set_npa(float);

    float get_npb();
    void set_npb(float);

    float get_nga();
    void set_nga(float);

    float get_ngb();
    void set_ngb(float);

    float get_nf();
    void set_nf(float);

    void exibirDados(void);
};

#endif // ALUNOS_H_INCLUDED
programa.cpp
#include "disciplina.h"
#include "alunos.h"
#include "disciplina.h"
#include <iostream>
#include <string>


using namespace std;
using std::string;

alunos::alunos(string n,string d)
{
    nome=n;
    disciplina=d;
}


void alunos::exibirDados(void)
{
    cout<<"Informe a disciplina:";
    cin>>d;

    int n, i;

    cout<<"Informe a quantidade alunos que serao cadastrados:";
    cin>>n;

    for (i=0; i<n; i++)
    {

    cout<<"Informe o nome do aluno:";
    cin>>n;

    cout<<"Informe a nota do teste do ga:";
    cin>>nta;

    cout<<"Informe a nota da prova do ga:";
    cin>>npa;

    cout<<"Informe a nota do teste do gb:";
    cin>>ntb;

    cout<<"Informe a nota da prova do gb:";
    cin>>npb;
}

         nga=0,7*npa+0,3*nta;
         ngb=0,7*npb+0,3*ntb;
         nf=0,33*nga+0,67*ngb;

         cout << "----------------------------------------------------" << endl
         << "Notas da disciplina" << d << ":" << endl
         << "Aluno: " << n << endl
         << "Nota do ga: " << nga << endl
         << "Nota do gb: " << ngb << endl
         << "Nota final: " << nf << endl;
main.cpp
#include "disciplina.h"
#include "alunos.h"
#include <iostream>
#include <string>


using namespace std;
using std::string;

int main(void)
{
    alunos alunos("",0,0,0);
    alunos.exibirDados();

    return 0;
}

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...