#include <iostream>
#include <iomanip>
#include <ctype.h>
#include <time.h>
using namespace std;
#define NOME_TAM 40
#define NUM_TURMA_TAM 4
#define NUM_ALUNOS 20
#define NUM_MINI_TESTES 4
#define NUM_TURMAS 10
#define IGNORE 10
struct FREQ{
	int miniteste[NUM_MINI_TESTES];//posicao 0 para o 1º MT, posicao 1 para o 2ºMT ...
	int trabalho;
};
struct ALUNO{
	long numero;
	char nome[NOME_TAM];
	FREQ frequencia;
	int exame;
	int faltas;
};
struct TURMA{
	char numero[NUM_TURMA_TAM];
	char professor[NOME_TAM];
	int num_alunos;
	ALUNO alunos[NUM_ALUNOS];
	int aulas_dadas;
};
int menuAlunos()
{
	int opcao;
	do {
		cout<<"\n\nALUNOS"<<endl;
		cout<<" 1 - Inserir Aluno\n";
		cout<<" 2 - Listar Aluno\n";
		cout<<" 3 - Inserir Faltas-Classificacoes\n";
		cout<<" 4 - Eliminar Aluno\n";
		cout<<" 5 - Calcular Classificacao\n";
		cout<<" 0 - Voltar \n";
		cout<<" Opcao --> ";
		cin>>opcao;
	}while(opcao<0 || opcao>5);
	cin.ignore(IGNORE,'\n');
	return opcao;
}
int menuTurmas()
{
	int opcao;
	do {
		cout<<"\n\nTURMAS"<<endl;
		cout<<" 1 - Inserir Turma\n";
		cout<<" 2 - Listar Turmas(Todas)\n";
		cout<<" 3 - Listar Turma(Uma)\n";
		cout<<" 4 - Inserir Aulas Dadas\n";
		cout<<" 0 - Voltar \n";
		cout<<" Opcao --> ";
		cin>>opcao;
	}while(opcao<0 || opcao>4);
	cin.ignore(IGNORE,'\n');
	return opcao;
}
int menu()
{
	int opcao;
	do {
		cout<<"\n\nALGORITMIA E PROGRAMACAO"<<endl;
		cout<<" 1 - Turmas \n";
		cout<<" 2 - Alunos \n";
		cout<<" 0 - Sair \n";
		cout<<" Opcao --> ";
		cin>>opcao;
	}while(opcao<0 || opcao>2);
	cin.ignore(IGNORE,'\n');
	return opcao;
}
void manutencaoAlunos(TURMA t[], int &n)
{
	int opcao;
	do {
		opcao=menuAlunos();
		switch(opcao) {
			case 1:
			break;
			case 2:
			break;
			case 3:
			break;
			case 4:
			break;
			case 5:
			break;
		}
	}while(opcao);
}
void manutencaoTurma(TURMA t[], int &n)
{
	int opcao;
	do {
		opcao=menuTurmas();
		switch(opcao) {
			case 1:
			break;
			case 2:
			break;
			case 3:
			break;
			case 4:
			break;
		}
	}while(opcao);
}
void main()
{
	TURMA turmas[NUM_TURMAS];
	int num_turmas=0;
	int opcao;
	do {
		opcao=menu();
		switch(opcao) {
			case 1: manutencaoTurma(turmas, num_turmas);
			break;
			case 2: manutencaoAlunos(turmas, num_turmas);
			break;
		}
	}while(opcao);
}