Ir ao conteúdo
  • Cadastre-se

Brener Emanuel Medeiros

Membro Júnior
  • Posts

    11
  • Cadastrado em

  • Última visita

Reputação

1
  1. Alguem pode me ajudar a resolver? Não consigo fazer funcionar a função de verificar se a placa inserida está no formato AAA0000. Está contido na função inserirveiculo(). #include <stdio.h> #include <locale.h> #include <stdlib.h> #include <time.h> // Programa opcional para resetar o sistema ao iniciar void resetarsistema() { int resetar; FILE *f; printf("Deseja resetar o sistema antes de iniciar? (1= sim | 2= não): "); scanf("%d", &resetar); switch(resetar) { case 1: { f=fopen("carros.txt", "w"); remove("carros.txt"); f=fclose(f); system("cls"); printf("Reiniciando"); _sleep(300); printf("."); _sleep(300); printf("."); _sleep(300); printf("."); _sleep(300); printf("."); _sleep(300); printf("."); _sleep(1000); system("cls"); printf("Sistema reiniciado com sucesso!"); _sleep(4000); system("cls"); // Vários sleeps para criar efeito de loading break; } case 2: { system("cls"); break; } default: { printf("Opção inválida!"); _sleep(4000); system("cls"); resetarsistema(); break; } } } // Variavel para controlar o tempo no formato correto struct Tempo { char hora[7]; }; // Variaveis relacionadas aos veículos struct cadastro { int status, tipo, tipon; char placa[8], modelo[15], marca[15], cor[15], proprietario[20]; struct Tempo entrada; }carro[20]; // Retorna 0/false caso a placa não esteja no formato correto int verificarplaca(int n){ if (n==0){ return 0; } else{ return 1; } } // Verifica se o estacionamento está vazio int verificaestacionamento (int n) { if (n==0){ return 0; } else{ return 1; } } // Programa para deletar as informações dos veículos retirados do estacionamento void deletarcarro(int i){ carro.placa==0; carro.modelo==0; carro.marca==0; carro.cor==0; carro.entrada.hora==0; carro.status==0; carro.proprietario==0; } // Programa para inserir os dados dos veículos que entram no estacionamento void inserirveiculo(int i) { char placa[8], escolhetipo; int tamanhoplaca, k, testeletra, b, c; FILE *f; puts("\nDigite a placa do veículo: \n"); fflush(stdin); gets(placa); strupr(placa); // Transforma strings minúsculas em maiúsculas for (c=0; c<20; c++) { if(strcmp(placa,carro[c].placa)==0){ // Compara a placa digita para verificar há repetição printf("Placa já cadastrada!\n\nInsira outra placa"); _sleep(4000); system("cls"); inserirveiculo(i); return; } } strcpy(carro.placa, placa); // Copia os dados da placa digitada para o sistema de controle tamanhoplaca = strlen(carro.placa); // Verifica se o tamanho da placa é correto if(tamanhoplaca != 7) { printf("Placa inválida!\nTente novamente"); _sleep(4000); system("cls"); inserirveiculo(i); return; } // Verifica se as 3 iniciais são letras for(k=0; k<3; k++) { testeletra=isalpha(carro.placa[k]);//retorna 1 se for letra b==verificarplaca(testeletra); if(b==1) { printf("\nPlaca inválida!\nOs três primeiros dígitos devem ser letras!\n\n"); _sleep(3000); system("cls"); inserirveiculo(i); return; } } //testa se 4 últimos digitos não são letras for(k=3; k<7; k++) { testeletra=isalpha(carro.placa[k]);//retorna 1 se for letra b==verificarplaca(testeletra); if(testeletra==1) { printf("\nPlaca inválida!\nOs quatro últimos dígitos devem ser números!\n\n"); _sleep(3000); system("cls"); inserirveiculo(i); return; } } puts("Digite o modelo do veículo: "); fflush(stdin); gets(carro.modelo); strlwr(carro.modelo); carro.modelo[0]=toupper(carro.modelo[0]); // Deixa a primeira letra maiúscula puts("Digite a marca do veículo: "); gets(carro.marca); fflush(stdin); strlwr(carro.marca); carro.marca[0]=toupper(carro.marca[0]); puts("Digite a cor do veículo: "); fflush(stdin); gets(carro.cor); strlwr(carro.cor); carro.cor[0]=toupper(carro.cor[0]); puts("Digite o nome do proprietário: "); fflush(stdin); gets(carro.proprietario); strlwr(carro.proprietario); carro.proprietario[0]=toupper(carro.proprietario[0]); puts("Digite a hora de entrada do veículo: "); gets(carro.entrada.hora); carro.status=1; //Salva as informações do veículo recém adicionado ao arquivo de texto f=fopen("carros.txt","w"); fwrite(&carro, sizeof(carro), 1, f); fclose(f); } void cadastroveiculo(){ int i, aviso; for (i=0; i<20; i++) { if(carro.status==0) { inserirveiculo(i); printf("\nVeículo cadastrado!"); aviso=0; _sleep(4000); system("cls"); break; } } if(aviso==1) { printf("O estacionamento está cheio!"); _sleep(3000); getch(); system("cls"); } } void retiradaveiculo() { FILE *f; f=fopen("carros.txt", "r"); // Lê os dados para modificá-los ao retirar um veículo fread(&carro, sizeof(carro), 1, f); int i; int hent, ment, hret, mret, ttment, ttmret, tt; // Variáveis de tempo float preco=1.00, precoadicional=0.05; // Declaração de preços char placasai[8]; puts("Digite a placa do veículo: "); gets(placasai); fflush(stdin); strupr(placasai); // Imprime os dados de cada veículo for (i=0; i<20; i++){ if (strcmp(placasai,carro.placa)==0){ printf("\nPlaca: %s", carro.placa); printf("\nModelo: %s", carro.modelo); printf("\nMarca: %s", carro.marca); printf("\nCor: %s", carro.cor); printf("\nProprietário: %s", carro.proprietario); printf("\nHora de Entrada: %s", carro.entrada.hora); carro.status=0; deletarcarro(i); printf("\n\nDigite a hora de entrada do veículo: \nObs: Utilize o formato HH enter MM "); scanf("%d""%d", &hent, &ment); printf("\n\nDigite a hora de saída do veículo: \nObs: Utilize o formato HH enter MM "); scanf("%d""%d", &hret, &mret); //Adiciona 24 na hora de retirada caso a hora de entrada seja maior que esta, para não resultar em números negativos if(hent>hret) { ttment= (hent*60)+ ment; ttmret= ((hret+24)*60)+ mret; tt = ttmret - ttment; } else { ttment= (hent*60)+ ment; ttmret= (hret*60)+ mret; tt = ttmret - ttment; } system("cls"); printf("Veículo retirado com sucesso!"); if (tt<=60) { printf("\n\nTempo de permanência no estacionamento: %d minutos \nTotal a pagar: R$%.2f ", tt, preco); } else { float totalpagar = ((tt-60)*precoadicional) + preco; printf("\n\nTempo de permanência no estacionamento: %.d minutos \nTotal a pagar: R$%.2f\n\n\n", tt, totalpagar); } // Salva os dados editados da lista de veículos f=fopen("carros.txt", "w"); fwrite(&carro, sizeof(carro), 1, f); fclose(f); getch(); system("cls"); return; } } printf("\nPlaca não encontrada!"); _sleep(4000); system("cls"); } void listadeveiculos() { int i, j, n=1, r; FILE *f; f=fopen("carros.txt", "r"); fread(&carro, sizeof(carro), 1, f); for (i=0; i<20; i++) { if (carro.status==1) { printf("\n* Placa: %s\n Modelo: %s\n Marca: %s\n Cor: %s\n Proprietário: %s\n", carro.placa, carro.modelo, carro.marca, carro.cor, carro.proprietario); printf(" Entrada: %s\n\n", carro.entrada.hora); printf("-------------------------------------------------------------------------------"); n=0; r=verificaestacionamento(n); } } if(r==0) { printf("\n\nPressione ENTER para voltar ao menu"); getch(); system("cls"); } else { puts(" Nenhum veiculo cadastrado\n\n Pressione ENTER para voltar ao menu"); getch(); system("cls"); } fclose(f); } main(){ setlocale(LC_ALL,"portuguese"); //Adiciona o ***** portugues ao programa resetarsistema(); int escolha; FILE *f; f=fopen("carros.txt", "r"); fread(&carro, sizeof(carro), 1, f); fclose(f); do { printf(" \n SISTEMA DE ESTACIONAMENTO "); printf(" \n _________________________________"); printf(" \n\n Escolha uma opção"); printf(" \n\n1- Registrar entrada de veículo"); printf(" \n2- Registrar saída de veículo"); printf(" \n3- Listar veículos estacionados"); printf(" \n4- Sair"); printf(" \n\nOpção: "); scanf("%i", &escolha); fflush(stdin); switch(escolha) { case 1: { system("cls"); cadastroveiculo(); break; } case 2: { system("cls"); retiradaveiculo(); break; } case 3: { system("cls"); listadeveiculos(); break; } case 4: { exit(main); } default: { system("cls"); printf("\nOpcao inválida!\n\nTente novamente."); _sleep(3000); system("cls"); } } }while(escolha!=4); getchar(); }
  2. Gostei, e do meu pc atual da pra aproveitar alguma coisa ou é ferro velho? Placa-mãe Gigabyte H61M-S1 Processador Pentium g2030 3.00ghz 2gb ram ddr3 fonte genérica
  3. Olá amigos, quero uma config bacana para jogos da antiga geração (Ps3 e XBOX360) e outros jogos medianos/leves, como Euro Truck Simulator 2 e Minecraft. Nada exagerado, pois para jogos atuais tenho o Ps4 e não ligo muito para gráficos (alto e ultra pra mim são desnecessários), apenas quero uma boa taxa de FPS.
  4. E, última pergunta man, com esse processador eu nao vou perder muita qualidade da placa de video? E sobre as peças poderem ficar ultrapassadas, eu quero esse pc para jogar jogos médios, tipo CSGO, Fortinite, LoL, Euro truck simulator 2, talvez um mais pesado como GTA V, já que no PS4 ja jogo os mais novos.
  5. No caso eu iria pegar peça por peça, e isso demoraria mais de 1 ano com a minha grana atual, mas nao me importo muito com o tempo que demore. E a placa de vídeo é DDR5, e a minha placa-mãe tem memórias DDR3, mas tem o slot PCI Express 3.0, ela vai se encaixar? Sou muito leigo em compatibilidade
  6. Pessoal, este é meu pc: placa-mãe Gigabyte H61M-S1 Processador Pentium G2030 3.00GHz Sem placa de vídeo 248GB de HD 2GB RAM DDR3 Estou pensando em comprar uma placa de vídeo boa, ja que pretendo montar um pc melhor no futuro e ja usar a placa nele. Queria saber se uma Geforce gt 1030 se sairia bem no pc atual, ou teria pelo menos compatibilidade
  7. Olá pessoal, queria algumas recomendações! Esse é meu pc atual: Memória RAM: 2GB DDR3 665MHz Processador: Pentium G2030 3.00GHz Placa-Mãe: Gigabyte H61M-S1 Sem Placa de Vídeo!!! HD: 2 HDs de 148GB Como eu posso ir melhorando aos poucos ele para jogos? Obs: Jogos nao estão pesados, como fortnite, pubg, ETS2, CS GO, Call of Duty antigos e outros jogos medianos
  8. Pessoal, acabei de comprar meu PS4, mas minha TV é pequena e tenho pouco espaço para coloca-lo perto dela. Gostaria de saber se a imagem ficaria boa no monitor do meu PC, com um adaptador de HDMI para VGA, sendo que o monitor tem apenas 15 polegadas e uma resolução de 1024x768.
  9. Pessoal, meu HD esta com uns problemas, as vezes eu coloco algum filme pra reproduzir ( já testei em vários Codecs ) e ele trava, não é porque ta corrompido, apenas trava junto com o problema e depois de uns 5 minutos pra fechar, o HD some da aba ''computador''. Não testei se ele some da bios, mas as vezes é so reiniciar o pc que ele volta. Tenho mais 50 gb em filmes nele e não quero perde-los, seriam semanas pra baixar todos de novo na minha internet, então é bom fazer um backup porque o HD pode estar falecendo?
  10. Muito obrigado amigo, ta mesmo na hora de comprar uma placa de vídeo e uns gigas de ram adicionais.
  11. Bom, estou procurando mais alguns jogos pra rodar na meu pc que mais parece uma calculadora, sendo que eu tenho apenas 2 gb de ram e nao tenho placa de video! Atualmente eu jogo Call of duty mw3 e ETS2 praticamente liso na configuração média, então eu gostaria de umas sugestões nesse nível Configurações: Processador: Intel Pentium G2030 3.00GHz Ram: 2gb Espaço livre: 100gb de 400gb Placa de vídeo: --------------

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...