Skip to content

Instantly share code, notes, and snippets.

@mbmaciel
Last active November 25, 2020 21:06
Show Gist options
  • Save mbmaciel/7d64e0cfdef58a6fd1ddfe0d1c502ccb to your computer and use it in GitHub Desktop.
Save mbmaciel/7d64e0cfdef58a6fd1ddfe0d1c502ccb to your computer and use it in GitHub Desktop.
transitoCpp
#include<stdlib.h>
#include<stdio.h>
#include <string.h>
#include<iostream>
#include <iomanip>
using namespace std;
//
//Assinatura de funções
//
void lerOperacao(double notasAlunos[],int dias);
int diasObra();
double recebeCarro(double notasAlunos[],int dias);
void chamarMenu(int totalConvergiram, int dias, int numCarrosVerificados, int propriaCidade);
int recebeCarro (int totalConvergiram, int &dias, int &numCarrosVerificados, int &propriaCidade);
void diasFimObra(int dias);
void totalCarrosVerificados(int numCarrosVerificados, int totalConvergiram);
void relatorio(int dias, int numCarrosVerificados, int totalConvergiram);
//
// Funçoes
//
void totalCarrosVerificados(int numCarrosVerificados, int totalConvergiram)
{
cout << "Total de carros verificados:" <<numCarrosVerificados <<endl ;
cout << "Total de carros que convergiram:" <<totalConvergiram <<endl ;
system("pause");
}
// Relatorio completo
void relatorio(int dias, int numCarrosVerificados, int totalConvergiram)
{
cout << "Total de carros que passaram pelo trevo:" <<numCarrosVerificados <<endl ;
cout << "Total de carros que convergiram:" <<totalConvergiram <<endl ;
int naoConvergiram = numCarrosVerificados - totalConvergiram ;
cout << "Total de carros que nao convergiram:" <<naoConvergiram <<endl ;
cout << "Dias para terminar a obra:" <<dias <<endl ;
system("pause");
}
// Operacoes
void lerOperacao(int totalConvergiram, int dias, int numCarrosVerificados, int propriaCidade)
{
int op;
cout << "Digite sua Opcao: ";
cin >> op;
switch(op)
{
case 1:
dias = diasObra();
system("cls");
chamarMenu(totalConvergiram,dias,numCarrosVerificados,propriaCidade);
break;
case 2:
totalConvergiram = recebeCarro(totalConvergiram,dias,numCarrosVerificados, propriaCidade);
numCarrosVerificados = numCarrosVerificados + 1;
system("cls");
chamarMenu(totalConvergiram,dias,numCarrosVerificados,propriaCidade);
break;
case 3:
totalCarrosVerificados(numCarrosVerificados, totalConvergiram);
system("cls");
chamarMenu(totalConvergiram,dias,numCarrosVerificados,propriaCidade);
break;
case 4:
diasFimObra(dias);
system("cls");
chamarMenu(totalConvergiram,dias,numCarrosVerificados,propriaCidade);
break;
case 5:
relatorio(dias,numCarrosVerificados, totalConvergiram);
system("cls");
chamarMenu(totalConvergiram,dias,numCarrosVerificados,propriaCidade);
break;
case 6:
cout<<"Saiu"<<endl;
break;
}
system("cls");
}
// Entrada inicial da obra
int diasObra()
{
int dias = 0;
cout<<"Digite o numero de dias da obra"<<endl;
cin >> dias;
return dias;
}
// Mostra dias para fim da obra
void diasFimObra(int dias)
{
cout<<"Dias que faltam para terminar a obra: "<<dias<<endl;
system("pause");
}
// Funcao que incrementa os carros
int recebeCarro(int totalConvergiram, int &dias, int &numCarrosVerificados, int &propriaCidade)
{
string convergiu ;
string cidade ;
cout<<"Esse carro convergiu para o bairro? (S/N)"<<endl;
cin >> convergiu ;
if (convergiu == "S" || convergiu =="s")
{
totalConvergiram = totalConvergiram + 1;
cout <<"Esse carro e da cidade ? (S/N)"<<endl;
cin >> cidade;
if (cidade == "S" || cidade =="s")
{
propriaCidade = propriaCidade + 1;
int resto = propriaCidade % 3;
if (resto == 0)
{
dias = dias + 1;
}
}
}
return totalConvergiram;
}
// Menu princiapl
void chamarMenu(int totalConvergiram, int dias, int numCarrosVerificados, int propriaCidade)
{
cout<<"ENGENHARIA DE OBRAS"<<endl;
cout<<"------------------"<<endl;
cout<<"##Escolha a Opcao Desejada##"<<endl;
cout<<"[1] - Numero de dias para realizacao da obra"<<endl;
cout<<"[2] - Carro passa pelo trevo"<<endl;
cout<<"[3] - Total de carros convergiram"<<endl;
cout<<"[4] - Dias para terminar a obra"<<endl;
cout<<"[5] - Relatorio"<<endl;
cout<<"[6] - Sair"<<endl;
lerOperacao(totalConvergiram,dias,numCarrosVerificados,propriaCidade);
}
//main
int main()
{
int dias = 0;
int numCarrosVerificados = 0;
int totalConvergiram = 0;
int propriaCidade = 0;
chamarMenu(totalConvergiram, dias, numCarrosVerificados, propriaCidade);
system("PAUSE");
return 0;
}
//end main
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment