Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void chama_menu_switch(Fila **f, int n){
- char s[3];
- char confi , c1,c2;
- int i,y,x,a,z,ok;
- double r;
- a = 0;
- for(i = 0; z != 11 ; i++) { // inicio for
- printf("|*|Comandos Menu 1.0|*|\n1 - Criar nova coluna\n2 - Deletar uma coluna\n3 - Inserir receita em coluna\n4 - Remover receita em coluna\n5 - Visualizar lista de colunas\n6 - Remover despesa em coluna\n7 - Inserir despesa em coluna\n8 - Visualiza despesas em uma coluna\n9 - Visualiza receitas em uma coluna\n10 - Calcular lucro bruto\n11 - Sair\n");
- do {
- scanf(" %2[^\n]s", s);
- ok =0;
- for (i=0;i<strlen(s);i++){
- if (s[i] >= 48 && s[i] <= 57) {
- ok = 1;
- }
- }
- } while (!ok);
- c1 = s[0];
- c2 = s[1];
- switch (c1) {
- case '1':
- z = 1;
- if (s[1] != 0) { // caso a string tenha o segundo valor
- switch (c2) {
- case '0':
- z = 10;
- break;
- case '1':
- z = 11;
- break;
- case '2':
- z =12;
- break;
- case '3':
- z = 13;
- break;
- case '4':
- z = 14;
- break;
- case '5':
- z = 15;
- break;
- case '6':
- z = 16;
- break;
- case '7':
- z = 17;
- break;
- case '8':
- z = 18;
- break;
- case '9':
- z = 19;
- break;
- default:
- z = 0;
- break;
- }
- }
- break;
- case '2':
- z =2;
- break;
- case '3':
- z = 3;
- break;
- case '4':
- z = 4;
- break;
- case '5':
- z = 5;
- break;
- case '6':
- z = 6;
- break;
- case '7':
- z = 7;
- break;
- case '8':
- z = 8;
- break;
- case '9':
- z = 9;
- break;
- default:
- z = 0;
- break;
- }
- switch (z) {
- case 1 :
- if (a >= MAX) {
- printf("Muitas colunas, delete uma para criar uma nova.\n");
- break;
- }
- f[a] = fila_cria();
- printf("- %s - Criada com sucesso!\n\n",f[a]->nome);
- a++;
- break;
- case 2:
- if (testa_vetor_ponteiro_vazio(f)) {
- printf("Não existe nenhuma coluna cadastrada.\n");
- break;
- }
- printf("Selecione o numero da coluna que deseja destruir por completo:\n");
- exibe_nome_fila(f,n);
- scanf(" %d",&x);
- if(testa_se_existe_em_vetor(f,x)){
- printf("Tem certeza que deseja deletar %s por completo?[Y/N]\n",f[x]->nome);
- scanf(" %c[y-Y n-N]",&confi);
- if ((confi == 'y') || (confi == 'Y')) {
- fila_destroi(f[x]);
- reorganiza_vetor(f,x);
- a--;
- break;
- }
- else if (confi == 'n' || confi == 'N'){
- printf("\nVoltando ao menu.\n\n");
- break;
- }
- }else{
- printf("\nColuna não identificada, voltando ao menu..\n\n");
- break;
- }
- case 3:
- if (testa_vetor_ponteiro_vazio(f)) {
- printf("Não existe nenhuma coluna cadastrada.\n");
- break;
- }
- printf("Selecione em qual coluna deseja inserir uma receita:\n");
- exibe_nome_fila(f, n);
- scanf(" %d",&y);
- if(testa_se_existe_em_vetor(f,y)){
- printf("Selecione um valor:\n");
- double h;
- scanf("%lf",&h);
- fila_insere(f[y],h);
- break;
- }else{
- printf("\nColuna não identificada, voltando ao menu.\n\n");
- break;
- }
- case 4:
- if (testa_vetor_ponteiro_vazio(f)) {
- printf("Não existe nenhuma coluna cadastrada.\n");
- break;
- }
- printf("Selecione em qual coluna deseja remover uma receita:\n");
- exibe_nome_fila(f, n);
- scanf(" %d",&y);
- fila_exibe(f[y]);
- printf("Tem certeza que deseja remover o primeiro valor?[Y/N]\n");
- scanf(" %c[y-Y n-N]",&confi);
- if (confi == 'y' || confi == 'Y') {
- fila_pop(f[y], &r);
- break;
- } else if (confi == 'n' || confi == 'N'){
- printf("\n..voltando ao menu\n");
- break;
- }else{
- printf("\n..letra invalida , voltando ao menu.\n\n");
- break;
- }
- break;
- case 5:
- if (testa_vetor_ponteiro_vazio(f)) {
- printf("Não existe nenhuma coluna cadastrada.\n");
- break;
- }
- printf("\n- Lista de colunas criadas:\n");
- exibe_nome_fila(f, n);
- printf("\n");
- break;
- case 6:
- if (testa_vetor_ponteiro_vazio(f)) {
- printf("Não existe nenhuma coluna cadastrada.\n");
- break;
- }
- printf("Selecione em qual coluna deseja remover uma despesa:\n");
- exibe_nome_fila(f, n);
- scanf(" %d",&y);
- fila_exibe_despesa(f[y]);
- printf("Tem certeza que deseja remover o primeiro valor?[Y/N]\n");
- scanf(" %c[y-Y n-N]",&confi);
- if (confi == 'y' || confi == 'Y') {
- fila_pop_despesa(f[y], &r);
- printf("\nRemovido com sucesso!\n\n");
- break;
- } else if (confi == 'n' || confi == 'N'){
- printf("\n..voltando ao menu\n");
- break;
- }else{
- printf("\n..letra invalida, voltando ao menu.\n\n");
- break;
- }
- break;
- case 7:
- if (testa_vetor_ponteiro_vazio(f)) {
- printf("Não existe nenhuma coluna cadastrada.\n");
- break;
- }
- printf("Selecione em qual coluna deseja inserir um valor de despesa:\n");
- exibe_nome_fila(f, n);
- scanf(" %d",&y);
- if(testa_se_existe_em_vetor(f,y)){
- printf("Selecione um valor:\n");
- double h;
- scanf("%lf",&h);
- fila_insere_dispesa(f[y],h);
- printf("\n");
- break;
- }else{
- printf("\nColuna não identificada, voltando ao menu.\n\n");
- printf("\n");
- break;
- }
- break;
- case 8:
- if (testa_vetor_ponteiro_vazio(f)) {
- printf("Não existe nenhuma coluna cadastrada.\n");
- break;
- }
- printf("\n- Escolha uma coluna para visualizar suas despesas:\n");
- exibe_nome_fila(f, n);
- scanf(" %d",&y);
- if(testa_se_existe_em_vetor(f,y)){
- fila_exibe_despesa(f[y]);
- }
- printf("\n");
- break;
- case 9 :
- if (testa_vetor_ponteiro_vazio(f)) {
- printf("Não existe nenhuma coluna cadastrada.\n");
- break;
- }
- printf("\n- Escolha uma coluna para visualizar suas receitas:\n");
- exibe_nome_fila(f, n);
- scanf(" %d",&y);
- if(testa_se_existe_em_vetor(f,y)){
- fila_exibe(f[y]);
- }
- printf("\n");
- break;
- case 10:
- if (testa_vetor_ponteiro_vazio(f)) {
- printf("Não existe nenhuma coluna cadastrada.\n");
- break;
- }
- printf("\n- Escolha uma coluna para calcular o lucro baseado nas receitas e despesas:\n");
- exibe_nome_fila(f, n);
- scanf(" %d",&y);
- if(testa_se_existe_em_vetor(f,y)){
- fila_exibe_lucro(f[y]);
- }
- break;
- case 11:
- printf("\n..Programa Finalizado.\n");
- printf("\n");
- break;
- default:
- printf("Opcao invalida, tente novamente:\n");
- break;
- }
- } // fim for
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement