Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /// Bibliotecas
- #include <conio.h>
- #include <stdio.h>
- #include <locale.h>
- #include <stdlib.h>
- #include <iostream>
- #include <strings.h>
- using namespace std;
- /// Variáveis Globais
- float saldo = 0;
- char log[10];
- char sen[10];
- char pri_nom[100];
- char ult_nom[100];
- char contr_log[10];
- char contr_sen[10];
- /// Funções
- void Menu();
- void Saldo();
- void Saque();
- void Acesso();
- bool Cadastro();
- void Deposito();
- char Menu_Retorno(char cod);
- /// Programa
- int main ( int argc, char *argv[] )
- {
- // Variáveis Estratégicas
- char cod = 'A';
- // Estrutura de Decisão
- while( cod != 'n' && cod != 'N' )
- {
- // Sistemas
- setlocale(LC_ALL, "");
- system("cls & color A");
- // Apresentação 1
- cout << " ========================== " << endl;
- system("echo - Usuario: %username%");
- system("echo - Computador: %computername%");
- system("echo - Hora: %time:~0,-3%");
- system("echo - Data: %date:/=-%");
- cout << " ========================== \n" << endl;
- // Apresentação 2
- cout << "\n ----------------------- " << endl;
- cout << " BANCO " << endl;
- cout << " ----------------------- \n" << endl;
- // Estrutura de Decisão: Cadastro
- if ( Cadastro() )
- {
- // Chamada de Procedimento
- Acesso();
- }
- // Chamada de Função: Menu de Retorno Principal
- cod = Menu_Retorno(cod);
- }
- return(0);
- }
- ///////////////////// FUNÇÕES /////////////////////
- // Menu de Retorno
- char Menu_Retorno(char cod)
- {
- // Entrada de Dados
- cout << "\n\n - Deseja Retornar ao Menu Principal ?" << endl;
- cout << " - [s] Sim " << endl;
- cout << " - [n] Não " << endl;
- cout << " - Opc.: ";
- cod = getche();
- // Retorno
- return(cod);
- }
- // Cadastro
- bool Cadastro()
- {
- // Variáveis
- char resp;
- // Apresentação + Entrada de Dados
- cout << " - O Senhor(a) já Realizou o seu Cadastro ? " << endl;
- cout << " - [s] Sim " << endl;;
- cout << " - [n] Não " << endl;
- cout << " - Opc.: ";
- cin >> resp;
- // Estrutura de Decisão: Proteção
- while (resp != 's' && resp != 'n')
- {
- system("cls & color C");
- cout << "\n\n - O Senhor(a) já Realizou o seu Cadastro ? " << endl;
- cout << " - [s] Sim " << endl;;
- cout << " - [n] Não " << endl;
- cout << " - Opc.: ";
- cin >> resp;
- }
- // Estrutura de Decisão: Proteção
- if( resp == 's' || resp == 'S')
- {
- // Retornando Verdadeiro
- return true;
- }
- // Caso Contrário
- else
- {
- // Estrutura de Repetição: Proteção Contra Comprimento de Strings
- do
- {
- // Apresentação 1 + Entrada de Dados
- system("cls & color F");
- cout << " ================= " << endl;
- cout << " Cadastro " << endl;
- cout << " ================= " << endl;
- cout << "\n - Digite seu 1º Nome [Sem Espaços]: ";
- cin >> pri_nom;
- cout << "\n - Digite seu Último Nome [Sem Espaços]: ";
- cin >> ult_nom;
- // Apresentação 2 + Entrada de Dados
- system("cls & color E");
- cout << " ================= " << endl;
- cout << " Cadastro " << endl;
- cout << " ================= " << endl;
- cout << "\n - Digite um Login sem 'Espaços' [10 Caracteres]: ";
- cin >> log;
- cout << "\n - Digite uma senha sem [10 Caracteres - Sem Espaços]: ";
- cin >> sen;
- // Cópia de Strings
- strcpy(contr_log,log);
- strcpy(contr_sen,sen);
- // Concatenação
- strcat(pri_nom," ");
- strcat(pri_nom, ult_nom);
- // Apresentação 3
- system("cls & color D");
- cout << "\n\t *** Parabéns "<< pri_nom << " !!! *** \n" << endl;
- cout << "\n\t *** Cadastro Realizado com Sucesso !!! *** \n\n" << endl;
- system("timeout /nobreak /t 3");
- } while( (strlen(log) < 0 && strlen(log) > 10) && (strlen(sen) < 0 && strlen(sen) > 10) );
- // Retorno: Verdadeiro
- return(true);
- }
- }
- // Acesso: Login e Senha
- void Acesso()
- {
- // Variável
- int erro = 4;
- // Estrutura de Repetição: Proteção Contra Erros de Tentativas
- while ( erro >= 0 )
- {
- // Apresentação + Entrada de Dados
- system("cls & color B");
- cout << "\n ============== " << endl;
- cout << " Acesso " << endl;
- cout << " ============== " << endl;
- cout << "\n - Login: ";
- cin >> log;
- cout << " - Senha: ";
- cin >> sen;
- // Estrutura de Decisão: Comparação de Strings Sem Erros !!!
- if ( ( strcmp(log,contr_log) && strcmp(sen,contr_sen) ) == 0 )
- {
- Menu();
- break;
- }
- // Caso Contrário: Número de Tentativas
- else
- {
- erro--;
- if (erro == 0)
- {
- system("cls & color C");
- cout << "\n\n\t - Acabaram as Tentativas \n\n" << endl;
- system("timeout /nobreak /t 3");
- exit(0);
- }
- else
- {
- system("cls & color C");
- cout << "\n\n\t - Somente " << (erro) << " Tentativa(s) \n\n" << endl;
- system("timeout /nobreak /t 3");
- }
- }
- }
- }
- // Menu
- void Menu()
- {
- // Variáveis
- int opc;
- int loop = 1;
- // Estrutura de Repetição
- while(loop)
- {
- // Apresentação + Entrada de Dados
- system("cls & color E");
- cout << "\n\n ----------------------------------- " << endl;
- cout << " CAIXA ELETRÔNICO " << endl;
- cout << " ----------------------------------- \n" << endl;
- cout << " - [1] SALDO " << endl;
- cout << " - [2] DEPÓSITO " << endl;
- cout << " - [3] SAQUE " << endl;
- cout << " - [4] Voltar " << endl;
- cout << " - Opc:> ";
- cin >> opc;
- // Estrutura de Escolha: Métodos
- switch(opc)
- {
- case 1:
- Saldo();
- break;
- case 2:
- Deposito();
- break;
- case 3:
- Saque();
- break;
- case 4:
- loop = 0;
- break;
- default:
- cout << " - Inválido" << endl;
- break;
- }
- }
- }
- // Saldo
- void Saldo()
- {
- // Apresentação + Entrada de Dados
- system("cls & color E");
- cout << "\n\n -------------- " << endl;
- cout << " SALDO " << endl;
- cout << " -------------- \n" << endl;
- cout << " - Nome: " << pri_nom << endl;
- cout << " - Saldo R$: " << saldo << endl;
- system("echo. & pause");
- }
- // Deposito
- void Deposito()
- {
- // Variável
- float valor;
- // Apresentação + Entrada de Dados
- system("cls & color E");
- cout << "\n\n ------------------ " << endl;
- cout << " DEPOSITO " << endl;
- cout << " ------------------ \n" << endl;
- cout << " - Valor: R$ ";
- cin >> valor;
- // Cálculo: Depósito
- saldo += valor;
- system("echo. & pause");
- }
- // Saque
- void Saque()
- {
- // Variável
- float valor;
- // Apresentação + Entrada de Dados
- system("cls & color E");
- cout << "\n\n -------------- " << endl;
- cout << " SAQUE " << endl;
- cout << " -------------- \n" << endl;
- cout << " - Valor: R$ ";
- cin >> valor;
- // Estrutura de Decisão
- if ( valor > saldo )
- {
- cout << "\n - Valor Indisponível \n";
- }
- else
- {
- // Cálculo: Saque
- saldo -= valor;
- // Apresentação
- cout << "\n - Valor: R$ " << valor;
- cout << "\n - Saldo: R$ " << saldo;
- }
- cout << "" << endl;
- system("echo. & pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement