quarta-feira, 25 de maio de 2016

Programação de computadores - 25 de Maio de 2016

Programação de computadores - 25 de Maio de 2016

Correção do exercício

a) ler 40 números para um arquivo

b) separar as notas em 2 vetores:
>=5,0
<5,0

c) imprimir as notas

d) quantidade de notas entre 4 e 5

e) Média das notas


Resposta:

#include <iostream>
#include <fstream>

using namespace std;

const int qtdNotas = 10;
float nota1[qtdNotas]; // Notas maiores ou iguais a 5
float nota2[qtdNotas]; // Notas menores que 5
int cont1=0, cont2=0;

void LeNotas(){
 ofstream arqNotas("dados.txt");

 for(int i=0;i<qtdNotas;i++){
  float nota;
  cout<<"Informe uma nota: ";
  cin>>nota;
  arqNotas<<nota<<endl;
 } // fechamento do for

arqNotas.close();

} // fechamento do void

void SeparaNotas(){

 ifstream arqNotas("dados.txt");

 for(int i=0; i<qtdNotas;i++){
  float nota=0;
  arqNotas>>nota;
  if(nota>=5.0){
   nota1[cont1] = nota;
   cont1++;
  } // fechamento do if
   else{
   nota2[cont2] = nota;
   cont2++;
   } // fechamento do else
 } // fechamento do for
arqNotas.close();
} // fechamento do void

void ImprimeNotas(){
 cout<<"Notas maiores ou iguais a 5: ";
 for(int i=0;i<cont1;i++){
  cout<<nota1[i]<<",";
 } // fechamento do for
 cout<<endl;

 cout<<"Notas menores que 5: ";
 for(int i =0; i<cont2;i++){
  cout<<nota2[i]<<", ";
 } // fechamento do for

} // fechamento do void


int  QtdNotasEsuplementar(){
 int contNotasES=0;
 for(int i=0;i<cont2;i++){
  if(nota2[i]>=4.0 && nota2[i] < 5.0){
   contNotasES++;
  } // fechamento do if

 } // fechamento do for
 return contNotasES;

} // fechamento do void


float MediaV1() {
 float soma=0;

 for(int i=0; i<cont1;i++){
   soma = soma+nota1[i];
 } // fechamento do for
 float media = soma/cont1;
 return media;
} // fechamento do float


void MediaV2() {
 float soma=0;

 for(int i=0; i<cont1;i++){
   soma = soma+nota1[i];
 } // fechamento do for
 float media = soma/cont1;
 cout<<"Media: "<<media<<endl;
 if(media>6){
  cout<<"A media está acima de 6.0";
 } // fechamento do if
 else{
  cout<<"A média está abaixo de 6.0";
 } // fechamento do else
} // fechamento do float

int main(){
 LeNotas();
 SeparaNotas();
 Imprime Notas();
 int qtd = QtdNotasESuplementar();
 cout<<"Quantidade para o exames suplementar: "<<qtd<<endl;

// versão 1 para o cálculo da média
 float m = MediaV1();
 if(m>=6){
  cout<<"A média está acima de 6.0";
 } // fechamento do if
 else{
  cout<<"A média está abaixo de 6.0";
 } // fechamento do else

// versão 2 para o cálculo da média
MediaV2();
return 0;

} // fechamento do int main

Lucas T R Freitas

Nenhum comentário: