Ir ao conteúdo
  • Cadastre-se

herbertbahia

Membro Pleno
  • Posts

    537
  • Cadastrado em

  • Última visita

Tudo que herbertbahia postou

  1. acho que agora entendir valeu galera mas se o x fosse menor do que zero e não passasse pelo zero ele seria false?
  2. int main() { int x, i = 1; x = 755; while(x){ i *= x % 10; x /= 10; } printf("%d\n", i); return 0; } eu quero entender porque mesmo colocando apenas 1 letra ou numero no while o loop não é infinito sei que o while significa enquanto, mas nesse caso vai ser enquanto o que?
  3. aqui apareceu 175 não apareceu só um dos 3 números. acho que é porque você colocou while(x) deve ter faltado algum comando porque acho que quando coloca so 1 letra ou 1 numero dentro do while fica loop infinito
  4. assim? #include <stdio.h> #include <stdlib.h> main() { int x,i; x = 755; i *= x % 10; x /= 10; }
  5. @Midori eu fiquei realmente curioso para fazer o que você disse e tentei de toda maneira mas não conseguir poderia mostrar como faz isso que explicou?
  6. //https://pt.wikipedia.org/wiki/Time.h #include <stdio.h> #include <windows.h> #include <time.h> int main () { time_t start_t, end_t; double diff_t; printf("Starting of the program...\n"); time(&start_t); printf("Sleeping for 5 seconds...\n"); Sleep(5000); time(&end_t); diff_t = difftime(end_t, start_t); printf("Execution time = %f\n", diff_t); printf("Exiting of the program...\n"); return(0); }
  7. a estrtutura do cliente é esta typedef struct //dados cadastrais do cliente { char nome[10];//Variável para nome int idade;//Variável para idade char CPF_CNPJ[20];//Variável para CPF/CNPJ char CNH[30];//Variável para CNH char Endereco[50];//Variável para endereço } Cliente;//Atribui todas as variáveis para o Cliente adicionado 7 minutos depois mas não vai ficar legal, o certo seria criar novas estrututuras, a ideia de @arfneto faria mais sentido, isso vai te da uma grande dor de cabeça
  8. cara se quer fazer isto você vai precisar mudar na estrututura,do cliente então voce pode simplesmente ter um cliente.formadepgmt
  9. eu não fiz. a opção que você fez chamada 'Valor do estacionamento' é uma opção de pagamento do cliente ? se voce vai cadastrar mais de um cliente vai precisar de um vetor.. olhe do ponto de vista do menu do software imagine que ele está sendo utilizado por uma grande empresa de segurança nesse momento, e isso não é uma piada.
  10. não, uma linha antes do break 4 é uma linha antes do brreak 4 ou famoso "final do break 3"
  11. faltou um break;para o case 3 uma linha antes do case 4:
  12. é normal usar um switch dentro do outro, a questão é que você chamou a função getch da biblioteca conio veja //Feito por Alex, Gabriel M e Pedro V. //Feito por Alex, Gabriel M e Pedro V. #define _CRT_SECURE_NO_WARNINGS//Diz para o compilador que o programador não quer usar a versão segura das bibliotecas #include <stdio.h>//Biblioteca padrão do C #include <stdlib.h>//Biblioteca padrão do C #include <string.h>//Possui comando para mehlor utilização de stirngs #include <locale.h>//Biblioteca para reconhecer caracteres como "Ç" #include <conio.h>//getch typedef struct //dados cadastrais do cliente { char nome[10];//Variável para nome int idade;//Variável para idade char CPF_CNPJ[20];//Variável para CPF/CNPJ char CNH[30];//Variável para CNH char Endereco[50];//Variável para endereço } Cliente;//Atribui todas as variáveis para o Cliente typedef struct //dados cadastrais do veículo { char placa[10];//Variável para placa do veículo char modelo[20];//Variável para modelo do veículo char marca[20];//Variável para marca do veículo char cor[20];//Variável para cor do veículo char ano[5];//Variável para ano do veículo } Carro;//Atribui todas as variáveis para o carro int le_um_carro(Carro*); //Informações do veículo int mostra_um_carro(Carro* c);//Informações do veículo para serem exibidas no programa int main(){ char aux[200]; Carro info; Cliente cliente; int opcao; //Variável para o Switch-Case int qntdvezes; //Variável que guardar quantas vezes o cliente veio ao estacionamento int virnovamente; //Variável que valida quantas vezes o cliente tem que vir para dar 10 idas ao estacionamento setlocale(LC_ALL, "Portuguese"); //Comando da biblioteca locale.h para reconhecer caracteres especiais while(1){ //Menu para o cliente system("cls"); printf("-----------------------------------------\n"); printf("\tCONTROLE DE ESTACIONAMENTO\n"); printf("-----------------------------------------\n\n"); printf("1- Cadastrar Cliente\n"); printf("\n2- Cadastrar Veículo\n"); printf("\n3- Valor do estacionamento\n"); printf("\n4- Listar o último veículo cadastrado\n"); printf("\n5- Créditos\n"); printf("\n6- Sair\n"); printf("\nOpcao: "); scanf("%d",&opcao); switch (opcao){//Switch para o cliente escolher //Case 1 é para guardar informações do cliente case 1: system("cls");//Limpa a tela printf("Informe o nome do cliente: ");//Printf para exibir uma mensagem na tela fflush(stdin);//Limpa o espaço de memória gets(cliente.nome);//Gets armazena TODOS os caracteres digitados printf("Informe a idade do cliente: "); scanf("%d", &cliente.idade);//Sacnf é para receber valores de váriaveis printf("Informe o CPF/CNPJ do cliente: "); cpf: fflush(stdin); gets(aux); if (strlen(aux) < 11){ //If para validar se os digitos estão corretos printf("Erro quantidade de dígitos menor do que o esperado\n"); printf("Digite novamente: "); goto cpf;//O goto serve para tratar erros, se algum for indentificado, ele volta para o usuário digitar novamente } else if (strlen(aux) > 11){ //Else if para validar se os digitos estão corretos printf("Erro quantidade de dígitos maior do que o esperado\n"); printf("Digite novamente: "); goto cpf; } else{ //Else para validar se os digitos estão corretos, e se estiverem prossegue o cadastro strcpy(cliente.CPF_CNPJ,aux); } printf("Informe o número do CNH do cliente: "); cnh: fflush(stdin); gets(aux); if (strlen(aux) < 11){ //If para validar se os digitos estão corretos printf("Erro quantidade de dígitos menor do que o esperado\n"); printf("Digite novamente: "); goto cnh; } else if (strlen(aux) > 11){ //Else if para validar se os digitos estão corretos printf("Erro quantidade de dígitos maior do que o esperado\n"); printf("Digite novamente: "); goto cnh; } else{ //Else para validar se os digitos estão corretos, e se estiverem prossegue o cadastro strcpy(cliente.CNH,aux);//Strcpy transfere o valor de uma variável para outra(char) } printf("Informe o endereço do cliente: "); gets(cliente.Endereco); system("pause");//Faz o sistema esperar o usuário apertar uma tecla para voltar ao menu break;//´Para a execução do switch //Case 2 é para cadatrar os dados dos veículos case 2: le_um_carro(&info);//Chama a função para o cadastro dos veículos break; default: //Default é para, se alguma opção foi escolhida erroneamente, ele exibe uma mensagem printf("Opcao inesperada: %d\n", opcao); break; //Case 3 é para exibir o valor do estacionamento case 3: system("cls");//limpar a tela int pagamento;//forma de pagamento int tipo_serv;//tipo de serviço { printf("------------------------------------------\n"); printf("\tTIPOS DE SERVICOS OFERECIDOS:\n"); printf("------------------------------------------\n\n"); printf("\n1- PLANO MENSAL =60R$ \n\n"); printf("\n2- DIARIA =2,50R$ \n\n"); printf("Escolha uma das duas opções para realizar o pagamento: "); scanf("%d", &tipo_serv); switch(tipo_serv) { case 1: system("cls"); printf("SUA CONTA FICOU 60R$.\t"); printf("Escolha o meio de pagamento: \n\n"); printf("\n1- Credito\n"); printf("\n2- Debito\n"); printf("\n3- Em dinheiro\n\n"); printf("Digite o numero equivalente a sua escolha: "); scanf("%d", &pagamento); break; case 2: system("cls"); printf("SUA CONTA FICOU 2,50R$.\t"); printf("Escolha o meio de pagamento: \n\n"); printf("\n1- Credito\n"); printf("\n2- Debito\n"); printf("\n3- Em dinheiro\n\n"); printf("Digite o numero equivalente a sua escolha: "); scanf("%d", &pagamento); } } //Case 4 é para exibir o último carro cadastrado case 4: system("cls"); mostra_um_carro(&info); system("pause"); break; //Case 5 é para validar quantas vezes o cliente terá q usar o estacionamento para ter uma vinda de graça case 5: printf(" A cada 10 vindas ao estacionamento, você tem direito a vir 1 vez sem pagar.\n "); printf("Informe quantas vezes veio ao estacionamento:\n "); scanf("%d", &qntdvezes); if (qntdvezes < 10){ virnovamente = 10 - qntdvezes;//Validar quantas vezes o cliente precisa vir para ter o estacionamento gratuito printf(" Você precisa vir mais %d vezes ao estacionamento.", virnovamente); } else { printf(" Parabéns, você tem uma ida ao estacionamento de graça."); } getch(); break; //Case 6 é para o cliente sair do menu case 6: printf("Agradecemos a sua vinda e volte sempre!!"); exit(1);//Sair do programa break; } } } //le_um_carro serve para guardar as informações do case 2 int le_um_carro(Carro* C) { system("cls"); char aux[200]; Carro info; printf("Informe o número da placa, como: xxx-xxxx [8 digitos]: "); placa: fflush(stdin); gets(aux); if (strlen(aux) < 8) {//If para validar se os digitos estão corretos printf("Erro quantidade de dígitos menor do que o correto\n"); printf("Digite novamente: "); goto placa; } else if (strlen(aux) > 8) {//Else if para validar se os digitos estão corretos printf("Erro quantidade de dígitos maior do que o correto\n"); printf("Digite novamente: "); goto placa; } else {//Else para validar se os digitos estão corretos, e se estiverem prossegue o cadastro strcpy(info.placa, aux); } printf("Informe a marca do veículo: "); gets(info.marca); printf("Informe o modelo do veículo: "); gets(info.modelo); printf("Informe a cor do veículo: "); gets(info.cor); printf("Informe o ano do veículo: "); gets(info.ano); *C = info; return 0; }; //mostra_um_carro serve para literalmente mostrar as informações do case 3 int mostra_um_carro(Carro* c) { printf(" Marca/Modelo: %s %s\n Cor: %s\n Placa: %s\n Ano do Veículo: %s\n", c->marca, c->modelo, c->cor, c->placa, c->ano ); return 0; };
  13. eu só estava dando um jeito de compilar até porque voce parecia estar tendo muita dificuldade para fazer isto mas é bem visivel que ainda precisa melhorar mais coisas, viu como fica estranho chamar uma função em um case e na outra ter a função lá dentro parece que nao tem um padrão, e o fato de eu ter escrito os cases 4 e 5 e porque o seu menu gritante nao tinha resposta nenhuma pra isto viu direitinho a conclusão que o @Mauro Britivaldo britivaldo postou? e os exemplos do @arfneto ? se seguir a orientações vai ter uma nota excelente.
  14. #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <string.h> //dados cadastrais do cliente typedef struct{ char nome[10]; int idade; char CPF_CNPJ[20]; char CNH[30]; char Endereco[50]; }Cliente; typedef struct { char placa[10]; char modelo[20]; char marca[20]; char cor[20]; char ano[5]; } Carro; //int le_um_cliente(Cliente*); //int mostra_um_cliente(Cliente*); int le_um_carro(Carro*); int mostra_um_carro(Carro* c); int main(){ char aux[200]; Carro info; Cliente cliente; int opcao; while(1){ system("cls"); printf("-----------------------------------------\n"); printf("\tCONTROLE DE ESTACIONAMENTO\n"); printf("-----------------------------------------\n\n"); printf("1- Cadastrar Cliente\n"); printf("\n2- Cadastrar Veiculo\n"); printf("\n3- Listar veiculos cadastrados\n"); printf("\n4- Creditos\n"); printf("\n5- Sair\n"); printf("\nOpcao: "); scanf("%d",&opcao); switch (opcao) { case 1: /* le_um_cliente(&cliente); mostra_um_cliente(&cliente); break; */ system("cls"); printf("Informe o nome do cliente: "); fflush(stdin); gets(cliente.nome); printf("Informe a idade do cliente: "); scanf("%d", &cliente.idade); printf("Informe o CPF/CNPJ do cliente: "); cpf: fflush(stdin); gets(aux); if (strlen(aux) < 11){ printf("erro quantidade de digitos menor do que o correto\n"); printf("Digite novamente: \n"); goto cpf; } else if (strlen(aux) > 11){ printf("erro quantidade de digitos maior do que o correto\n"); printf("Digite novamente: \n"); goto cpf; } else{ strcpy(cliente.CPF_CNPJ,aux); } printf("Informe o número do CNH do cliente: "); cnh: fflush(stdin); gets(aux); if (strlen(aux) < 11){ printf("erro quantidade de digitos menor do que o correto\n"); printf("digite novamente: \n"); goto cnh; } else if (strlen(aux) > 11){ printf("erro quantidade de digitos maior do que o correto\n"); printf("digite novamente: \n"); goto cnh; } else{ strcpy(cliente.CNH,aux); } printf("Informe o endereco do cliente: "); gets(cliente.Endereco); system("pause"); break; case 2: le_um_carro(&info); break; default: printf("Opcao inesperada: %d\n", opcao); break; case 3: mostra_um_carro(&info); system("pause"); break; case 5: exit(1); } // switch() } }// main() int le_um_carro(Carro* C) { char aux[200]; Carro info; printf("Informe o numero da placa [8 digitos]: "); placa: fflush(stdin); gets(aux); if (strlen(aux) < 8) { printf("erro quantidade de digitos menor do que o correto\n"); printf("Digite novamente: "); goto placa; } else if (strlen(aux) > 8) { printf("erro quantidade de digitos maior do que o correto\n"); printf("Digite novamente: "); goto placa; } else { strcpy(info.placa, aux); } printf("Informe a marca do veiculo: "); gets(info.marca); printf("Informe o modelo do veiculo: "); gets(info.modelo); printf("Informe a cor do veiculo: "); gets(info.cor); printf("Informe o ano do veiculo: "); gets(info.ano); *C = info; return 0; }; // le_um_carro() int mostra_um_carro(Carro* c) { printf("Marca/Modelo: %s %s Cor: %s Placa: %s Entrada: %s \n", c->marca, c->modelo, c->cor, c->placa, c->ano ); return 0; };
  15. #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char qcomprar; int op,i, q,qtd=0; float total=0; // variavel gastos totaisgastos totais char comprados[10][25]; printf("XXXX-XXX-X\n"); // Meu RU printf("\nBem Vindo a Lanchonete \n"); // Frase de Boas vindas printf("\n1 - cachorro_quente $5,00\n2 - x_salada $8,79\n3 - x_bacon $9,99\n4 - misto $6,89\n5 - salada $4,80\n6 - agua $3,49\n7 - refrigerante $4,99\n"); while(1){ printf("\nQual item voce deseja:\n"); // Codigo do Item Desejado scanf("%d", &op); switch(op){ case 1: printf("Qual a quantidade desejada? \n");//Quantidade Desejada scanf("%d", &q); total=(total+q*5.00); qtd++; strcpy(comprados[qtd],"cachorro quente $5,00\n"); break; case 2: printf("Qual a quantidade desejada? \n");//Quantidade Desejada scanf("%d", &q); total=(total+q*8.79); qtd++; strcpy(comprados[qtd],"x salada $8,79\n"); break; case 3: printf("Qual a quantidade desejada? \n");//Quantidade Desejada scanf("%d", &q); total=(total+q*9.99); qtd++; strcpy(comprados[qtd],"x bacon $9,99\n"); break; case 4: printf("Qual a quantidade desejada? \n");//Quantidade Desejada scanf("%d", &q); total=(total+q*6.89); qtd++; strcpy(comprados[qtd],"misto $6,89\n"); break; case 5: printf("Qual a quantidade desejada? \n");//Quantidade Desejada scanf("%d", &q); total=(total+q*4.80); qtd++; strcpy(comprados[qtd]," salada $4,80\n"); break; case 6: printf("Qual a quantidade desejada? \n");//Quantidade Desejada scanf("%d", &q); total=(total+q*3.49); qtd++; strcpy(comprados[qtd],"agua $3,49\n"); break; case 7: printf("Qual a quantidade desejada? \n");//Quantidade Desejada scanf("%d", &q); total=(total+q*4.99); qtd++; strcpy(comprados[qtd],"refrigerante $4,99\n"); break; default: for(i=0;i<=qtd;i++){ printf(" %s ", comprados[i]); } printf("_______________\n"); printf("total %.2f",total); break; } } }
  16. só nao entendir porque cada item tem um código na tabela sendo que ele não foi pedido em nehuma questao
  17. você também é capaz, eu ainda nao sou programador porque sou estudante e nao conseguir nehuma estágio ainda mas acho que consigo te ajudar
  18. para compilar é assim mas o seu algoritmo não está bom #include <stdio.h> int main() { char qcomprar; int i, q, c=0; //variaveis de entrada // variavel gastos totaisgastos totais printf("RU do Aluno: "); // Meu RU printf("Bem Vindo a Lanchonete \n"); // Frase de Boas vindas printf("cachorro_quente , x_salada ,x_bacon, misto, salada, agua , refrigerante\n"); printf("Deseja Compra algo? s | n\n"); //Inicio das compras scanf(" %c", &qcomprar); if (qcomprar == 's') { printf("Qual item voce deseja:\n"); // Codigo do Item Desejado scanf("%d", &i); printf("Qual a quantidade desejada? \n");//Quantidade Desejada scanf("%d", &q); } return 0; }
  19. não, na realidade só está associando o valor 10 a variavel 'a' já que o poderoso typedef tomou o seu tipo, estou mostrando porque as vezes agente pensa usar as coisas porque acha o nome bonitinho mas ele tem suas habilidades
  20. veja isso #include <stdio.h> #include <stdlib.h> typedef int inteiro; typedef float flutuante; typedef char caractere; int main() { inteiro a = 10; printf("%d",a); }
  21. alguns dias atras quando eu coloquei a struct la emcima a primeira vez eu expliquei o motivo, e o que falta para ter parte do cadastro do cliente? crie outro case ... case 1: parte do cadastro do cliente case 2: parte do cadastro do veiculo default: invalido. ou entao chame funcões: case 1 : cliente(); break; case 2: veiculo (); break; ou entao case 1 : info = *le_um_carro(); break; ou res = le_um_carro(&info); break;
  22. conseguiu ler alguma coisa no pdf ? pelo print parece que compilou, acho que nao entrou no switch, sobre adicionar outra variavel inteira talvez a sua intenção tenha sido adicionar uma variavel auxiliar inteira nao entendir bem.
  23. em c++ isso chama se chama metodo normalmente a classe em si vai nos .h você pode ter 200 classes para saber que essa função pertence a aviao e n a carro void aviao::ini(){} void carro::ini(){...} classes são nada mais que sacos de funções ou structs com metodos digamos que posso ter 2 variaveis j ou mais uma global int j; e outra namespace B { int j = 2; } se eu faço B::j me refiro a j do b assim posso ter 200 j 1000 infinitos se eu fizer somente j é o que ta fora é a mesma coisa com as classes se tiver aviao::ini quer dizer o ini que ta declarado na classe aviao

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!