Notas de alunos por avaliação


Autor/fonte: Rafael Augusto Reis Nunes
E-mail/Url: http://www.vivaolinux.com.br/scripts/verScript.php?codigo=1332



Digg del.icio.us

O script tem por objeto pegar o nomes de alunos e suas respectivas notas. Depois o programa irá apresentar a tabela de notas, maiores e menores notas por aluno e avalaiação. O script é bom devido ele trabalahr com uma tabela, envolvendo string e matrizes.

Script:

#include <iostream>
#include <iomanip>
using namespace std;
int main ()

{
system("clear");



float  media[3], soma[3] ,mturma ,mnota[3] ,pnota[3];

char aluno[3][10];

float notas[3][4];

for(int n=0;n<3;n++)
	{
	soma[n]=0;
	}


cout << "Digite o nome dos alunos"<<endl; //Le o nome dos Alunos
       for ( int i=0; i<3;i++) 
          {
            cout<<"\n aluno"<<i+1<<":";
    	    cin.getline(aluno,20);
           }
        
for ( int l = 0 ; l < 3 ; l++ )	//Le as notas dos alunos
	   {
          cout<<"\n aluno "<<aluno[l]<<endl;
		     for( int c = 0 ; c < 4 ; c++ )
    			{
    				cout<<" nota "<<c+1<<":";
    	            cin>>notas[l] [c];
    			}
          cout<<endl;
  	   }

cout<<setiosflags(ios::fixed|ios::showpoint)<<setprecision(2);

//enche o vetor mnota com as maiores notas tiradas em cada avaliaçao
for(int c=0;c<4;c++)
	{
	  mnota[c]=0;
	    for(int l=0;l<3;l++)
	     {
    		if(mnota[c]< notas[l][c])
    			{
    			mnota[c]=notas[l][c];
    			}
	     }
	}
	//enche o vetor pnota com as piores notas tiradas em cada avaliaçao
for(int c=0;c<4;c++)
	{
	pnota[c]=10;
	for(int l=0;l<3;l++)
		{
		if(pnota[c]>notas[l][c])
			{
			pnota[c]=notas[l][c];
			}
		}
	}

system("cls");
int opcao=8;		//un numero diferente de zero
while(opcao != 0 )	//o laço temq ser diferente de zero
	{
	  cout<<" \n Menu de opcoes"<<endl	//imprime a o menu na tela.
	      <<"\n 1-Tabela de notas"<<endl
	      <<"\n 2-Media por aluno"<<endl
	      <<"\n 3-Media da Turma"<<endl
	      <<"\n 4- Maiores notas"<<endl
	      <<"\n 5- Menores notas"<<endl
	      <<"\n 6-Limpar tela"<<endl
	      <<"\n 0-sair"<<endl;
	  cin>>opcao;

	  switch(opcao)		//pra fazer escolha substitui if else
	  	{
		case 1:
			cout<< "\t Tabela de notas "<<endl;
			cout<<"Aluno \t1ava \t2ava \t3ava \t4ava"<<endl;
			for ( int l = 0 ; l < 3 ; l++ )	//Imprime a tabela de notas
				{
				cout <<  aluno[l];
				for( int c = 0 ; c < 4 ; c++ )
					{
					cout << "\t" << notas[l][c];
					}
				cout<<endl;
				}
				cout <<endl;
		break;		// quebra a o caso1 a caso2. e etc.
		case 2:
			
            media[0] = soma[0] / 4;
			media[1] = soma[1] / 4;
			media[2] = soma[2] / 4;
			
		for ( int i = 0 ; i < 3 ; i++ )// Imprime a Media dos alunos
			{
			cout << endl << " A media do " << aluno
			<< " foi = " << media << endl;
			}
			cout <<endl;
		break;
		case 3:
		mturma=0;

		for ( int l = 0 ; l < 3 ; l++ )	//Media da Turma
			{
				for( int c = 0 ; c < 4 ; c++ )
					{
					mturma= mturma+notas[l][c];
					}
			}

		cout<<" A media da turma e "<<mturma/12<<"\n";

		cout<<"\n";
		break;
		case 4:
		//procura e imprime nomes dos que tirara maior nota

		for(int c=0;c<4;c++)
			{
			cout<<" maior nota da "<< c+1<<" Avaliação"<<endl;
			for(int l=0;l<3;l++)
				{
				if(mnota[c]== notas[l][c])
					{
					cout<<"\t"<<aluno[l]<<"\t Nota="
					<<notas[l][c]<<endl;
					cout<<"\n";
					}
				}
			}
		break;
		case 5:
		//procura e imprime nomes dos que tirara piores notas

		for(int c=0;c<4;c++)
			{
			cout<<" menor nota da "<< c+1<<" Avaliação"<<endl;
			for(int l=0;l<3;l++)
				{
				if(pnota[c]== notas[l][c])
					{
					cout<<"\t"<<aluno[l]<<"\t Nota="
					<<notas[l][c]<<endl;
					cout<<"\n";
					}
				}
			}
                break;
		case 6:
		      system("cls");
		      break;
		default:break; //default = padrao acaba o progama quand digita o 0.

		}//FIM DO SWITCH

	}//fim do while



return(0);
}




Enviado por xKuRt em 05/01/2007 às 13:36


Avaliação

Esta publicação ainda não foi avaliada!


Avaliar:


A avaliação de publicações é restrita a membros cadastrados e logados no nosso site.



Comentários

Este artigo ainda não foi comentado ou o(s) comentário(s) que foi(ram) enviado(s) a ele ainda não foi(ram) publicado(s).


Envio de comentário:




  

Quinta, 24 de Abril de 2014




Top 5 membros

Últimos membros online

Últimos membros cadastrados



Capa do livro
Regras Do Jogo: Fundamentos Do Design De Jogos - Volume 2


Capa do livro
OCP Oracle Database 11g: Novos Recursos para Administradores (Guia do Exame 1z0-050)


Capa do livro
PostgreSQL - Guia do Programador





Hostnet

IMD