Untitled
unknown
plain_text
4 years ago
3.7 kB
5
Indexable
#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct { int cod_servico; char descricao[20]; }Servico; typedef struct { int cod_servico; int num_servico; float valor_servico; int cod_cliente; }Servico_Prestado; int cadastra_servico(Servico* servicos, int tam); int cadastra_servicos_prestados(Servico* servico, int tam, Servico_Prestado servicos_prestados[][3], int tam_x, int tam_y); int mostrar_servicos_dia(Servico_Prestado servicos_prestados[][3], int tam_x, int tam_y); int mostrar_servicos_valor(Servico_Prestado* servicos_prestados, int tam_x, int tam_y); int mostrar_relatorio(Servico* servicos, int tam, Servico_Prestado* servicos_prestados, int tam_x, int tam_y); int main(){ int opcao, i, k; int tam_servicos = 0; Servico servicos[4]; Servico_Prestado servicos_prestados[30][3]; for(i = 0; i < 30; i++) { for (k = 0; k < 3; k++) { servicos_prestados[i][k].cod_servico = -1; } } while(opcao != 6){ scanf("%d", &opcao); switch(opcao){ case 1: if(cadastra_servico(servicos, tam_servicos) == 0){ tam_servicos++; } break; case 2: cadastra_servicos_prestados(servicos, tam_servicos, servicos_prestados, 30, 3); break; case 3: mostrar_servicos_dia(servicos_prestados, 30, 3); break; case 4: break; case 5: break; case 6: break; default: break; } fflush(stdin); } return 0; } int cadastra_servico(Servico* servicos, int tam){ int max = 4; if (tam == max) { printf("Cadastro de tipos de servicos lotado\n"); return 1; } int cod_servico, i, clear; scanf("%d", &cod_servico); for (i = 0; i < tam; i++) { printf("aa"); if (servicos[i].cod_servico == cod_servico) { printf("Ja existe tipo de servico cadastrado com esse codigo\n"); return 1; } } servicos[tam].cod_servico = cod_servico; fflush(stdin); fgets(servicos[tam].descricao, 20, stdin); printf("Tipo de servico cadastrado com sucesso\n"); return 0; } int cadastra_servicos_prestados(Servico* servico, int tam, Servico_Prestado servicos_prestados[][3], int tam_x, int tam_y){ int dia, i, aux = 1, cod_servico, cod_y = -1; scanf("%d", &dia); for (i = 0; i < tam_y; i++){ if(servicos_prestados[dia - 1][i].cod_servico == -1) { aux = 0; if(cod_y == -1){ cod_y = i; } } } if (aux == 1) { printf("Todos os servicos prestados nesta dia ja foram cadastrados\n"); return 1; } scanf("%d", &cod_servico); aux = 1; for(i = 0; i < tam; i++){ if (servico[i].cod_servico == cod_servico) { aux = 0; } } if (aux == 1) { printf("Codigo de servico invalido\n"); return 1; } servicos_prestados[dia][cod_y].cod_servico = cod_servico; scanf("%d", &servicos_prestados[dia][cod_y].num_servico); scanf("%f", &servicos_prestados[dia][cod_y].valor_servico); scanf("%d", &servicos_prestados[dia][cod_y].cod_cliente); printf("%d", servicos_prestados[dia][cod_y].cod_servico); printf("Servico cadastrado com sucesso\n"); return 0; } int mostrar_servicos_dia(Servico_Prestado servicos_prestados[][3], int tam_x, int tam_y){ int dia, i, aux = 1; scanf("%d", &dia); for(i = 0; i < tam_y; i++){ if(servicos_prestados[dia -1][i].cod_servico != -1){ printf("%d %d %f\n", servicos_prestados[dia -1][i].cod_servico, servicos_prestados[dia - 1][i].num_servico, servicos_prestados[dia - 1][i].valor_servico); aux = 0; } //printf("%f\n", servicos_prestados[dia-1][i].valor_servico); } if(aux == 1){ printf("Nenhum servico foi prestado neste dia\n"); return 1; } }
Editor is loading...