Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.

LuisGCarv

Membros Plenos
  • Total de itens

    21
  • Registro em

  • Última visita

  • Qualificações

    N/D
  1. C Mesmo erro em dois programas diferentes

    Eu acho que já consegui arrumar tudo. Como o case não aceita strings, quando eu digitava enter, estava entrando na opção de default, mas eu consegui resolver isso com alguns getchar (); .
  2. Eu consegui acessar as outras opções em outro tópico, nesse não está vindo, fica travado em html. Mas se não tem problema postar assim, então aqui vai: Algoritmo "CadastrarClienteeAutomovel" Tipo Processos = registro Codigo : inteiro Nome, Marca, Modelo, Cor, Ano, Placa, Chassi : caractere fimregistro Var // Seção de Declarações das variáveis Cadastro : Vetor [1..100] de Processos i ,j, n, o, p, q : inteiro Inicio // Seção de Comandos, procedimento, funções, operadores, etc... q := 1 enquanto q = 1 faca escreval ("MENU PRINCIPAL") escreval (" ") escreval ("1- Cadastrar cliente") escreval ("2- Checar um cadastro já realizado") escreval ("3- Fechar o programa") leia (o) limpatela escolha o caso 1 escreval ("Digite o número de clientes a serem cadastrados : ") leia (n) limpatela j := 1 repita i := i + 1 Cadastro[i].Codigo:= i + 1000 escreval ("CADASTRO") escreval (" ") escreval ("Digite o nome do cliente : ") leia (Cadastro[i].Nome) escreval ("Digite a marca do veículo : ") leia (Cadastro[i].Marca) escreval ("Digite o modelo do veículo : ") leia (Cadastro[i].Modelo) escreval ("Digite a cor do veículo : ") leia (Cadastro[i].Cor) escreval ("Digite o ano do veículo : ") leia (Cadastro[i].Ano) escreval ("Digite o código da placa do veículo : ") leia (Cadastro[i].Placa) escreval ("Digite o código de chassi do veículo : ") leia (Cadastro[i].Chassi) j := j + 1 limpatela ate j > n escreval ("Escolha uma opção:") escreval ("1- Voltar ao menu principal") escreval ("2- Fechar o programa") leia (q) limpatela caso 2 se (Cadastro[1].Codigo<1000) então escreval ("Sem clientes cadastrados!") escreval (" ") escreval ("Escolha uma opção:") escreval ("1- Voltar ao menu principal") escreval ("2- Fechar o programa") leia (q) limpatela senao escreval ("CLIENTES CADASTRADOS") escreval (" ") i := 1 enquanto (Cadastro[i].Codigo>1000) faca escreval ("Código : ", Cadastro[i].Codigo) escreval ("Nome do cliente: ", Cadastro[i].Nome) escreval (" ") i := i + 1 fimenquanto escreval ("Digite o código do cliente que você deseja acessar as informações") leia (p) limpatela escreval ("Código : ", Cadastro[p-1000].Codigo) escreval ("Nome do cliente: ", Cadastro[p-1000].Nome) escreval ("Veículo") escreval ("Marca : ", Cadastro[p-1000].Marca) escreval ("Modelo: ", Cadastro[p-1000].Modelo) escreval ("Cor : ", Cadastro[p-1000].Cor) escreval ("Ano : ", Cadastro[p-1000].Ano) escreval ("Placa : ", Cadastro[p-1000].Placa) escreval ("Chassi : ", Cadastro[p-1000].Chassi) escreval (" ") escreval ("Escolha uma opção:") escreval ("1- Voltar ao menu principal") escreval ("2- Fechar o programa") leia (q) limpatela fimse caso 3 limpatela interrompa outrocaso repita escreval ("Opção inválida!") escreval (" ") escreval ("Escolha uma opção:") escreval ("1- Voltar ao menu principal") escreval ("2- Fechar o programa") leia (q) limpatela ate q < 3 fimescolha fimenquanto Fimalgoritmo
  3. C Mesmo erro em dois programas diferentes

    o codigo é um pouco grande e eu percebi que coloquei um case dentro de outro, será que pode ser isso? aqui a parte do código até o primeiro case. int controlepag(void) { struct controle pagamento[100]; int a, b, c, fim, op, horas; char o[5]; do { printf ("Escolha uma opção \n"); printf ("\n"); printf ("1) Cadastrar um funcionário \n"); printf ("2) Verificar o cadastro de um funcionário \n"); printf ("3) Voltar ao menu anterior \n"); printf ("4) Encerrar o processo \n"); scanf ("%d",&op); system ("cls"); switch(op) { case 1: pagamento[a].codigo = a + 2001; printf ("Digite o nome do funcionário : \n"); scanf (pagamento[a].nome); printf ("O código do funcionário é %d \n", pagamento[a].codigo); system ("pause"); system ("cls"); strcpy (o,"A"); while (o!="D") { printf ("Selecione um serviço que o funcionário realizou : \n"); printf ("A) 1M \n"); printf ("B) 2S \n"); printf ("C) 3F \n"); printf ("D) Encerrar cálculo de salário \n"); scanf ("%s",&o); system ("cls"); switch (o) { case "A" : printf ("Quantas horas o funcionário trabalhou nesse setor : \n"); scanf ("%d",&horas); pagamento[a].salario += horas * 100; break; case "B" : printf ("Quantas horas o funcionário trabalhou nesse setor : \n"); scanf ("%d",&horas); pagamento[a].salario += horas * 200; break; case "C" : printf ("Quantas horas o funcionário trabalhou nesse setor : \n"); scanf ("%d",&horas); pagamento[a].salario += horas * 300; break; case "D" : printf ("Cálculo encerrado! \n"); printf ("\n"); system ("pause"); system ("cls"); break; default : printf ("Opção inválida! Tente novamente. \n"); printf ("\n"); system ("pause"); system ("cls"); break; } } a += 1; break; O problema aparece no switch (o).
  4. Eu estou tentando mandar o código, mas a opção para usar a tag de code só está me trazendo a de html. Eu só estou conseguindo postar códigos com tag personalizada quando inicio um tópico.
  5. C Mesmo erro em dois programas diferentes

    @vangodp , eu estou tentando um switch com caracter, e tá dando uma falha. "[Error] switch quantity not an integer" como você acha que eu posso resolver isso?
  6. @Simon Viegas , demorei um pouco pra entender mas cheguei à resolução. Muito obrigado novamente!
  7. @Simon Viegas , muito obrigado pelas dicas, e eu acho que vou tentar sem procedimentos mesmo, mas como eu poderia voltar pro menu principal sem chamar uma função ou procedimento?
  8. Valeu pelo esclarecimento, @Simon Viegas . Esse problema foi resolvido, mas agora está dando uma falha na linha de declaração das variáveis e do escolha na parte principal
  9. Eu estava fazendo fazendo um programa com procedimentos que nunca tinha feito antes, e me veio um problema logo de cara na hora que o Visualg lê a segunda linha do código. Eu sempre declarei registros dessa forma e nunca deu errado, vocês conseguem identificar qual é o problema? O resto do código tá coerente em relação aos procedimentos? Como deu esse problema, eu ainda não consegui testar os menus do programa usando esse tipo de comando. Algoritmo "CadastroDeClienteeAutomovel" Tipo Processos = registro Codigo : inteiro Nome, Marca, Modelo, Cor, Ano, Placa, Chassi : caractere fimregistro Var // Seção de Declarações das variáveis Cadastro : Vetor [1..100] de Processos i, n, o, p, q : inteiro procedimento cadastro() inicio escreval ("Digite o número de clientes a serem cadastrados : ") leia (n) limpatela i := 1 repita Cadastro[i].Codigo:= i + 1000 escreval ("CADASTRO") escreval (" ") escreval ("Digite o nome do cliente : ") leia (Cadastro[i].Nome) escreval ("Digite a marca do veículo : ") leia (Cadastro[i].Marca) escreval ("Digite o modelo do veículo : ") leia (Cadastro[i].Modelo) escreval ("Digite a cor do veículo : ") leia (Cadastro[i].Cor) escreval ("Digite o ano do veículo : ") leia (Cadastro[i].Ano) escreval ("Digite o código da placa do veículo : ") leia (Cadastro[i].Placa) escreval ("Digite o código de chassi do veículo : ") leia (Cadastro[i].Chassi) i := i + 1 limpatela ate i > n i := 1 escreval ("Escolha uma opção:") escreval ("1- Acessar as informações de um cliente") escreval ("2- Fechar o programa") leia (q) limpatela se p = 2 então interrompa senao acesso fimprocedimento procedimento acesso() inicio escreval ("CLIENTES CADASTRADOS") escreval (" ") repita escreval ("Código : ", Cadastro[i].Codigo) escreval ("Nome do cliente: ", Cadastro[i].Nome) escreval (" ") i := i + 1 ate i > n escreval ("Digite o código do cliente que você deseja acessar as informações") leia (p) limpatela escreval ("Código : ", Cadastro[p-1000].Codigo) escreval ("Nome do cliente: ", Cadastro[p-1000].Nome) escreval ("Veículo") escreval ("Marca : ", Cadastro[p-1000].Marca) escreval ("Modelo: ", Cadastro[p-1000].Modelo) escreval ("Cor : ", Cadastro[p-1000].Cor) escreval ("Ano : ", Cadastro[p-1000].Ano) escreval ("Placa : ", Cadastro[p-1000].Placa) escreval ("Chassi : ", Cadastro[p-1000].Chassi) escreval (" ") escreval ("Escolha uma opção:") escreval ("1- Cadastrar um cliente") escreval ("2- Fechar o programa") leia (q) limpatela se p = 2 então interrompa senao cadastro fimprocedimento Inicio // Seção de Comandos, procedimento, funções, operadores, etc... escreval ("MENU PRINCIPAL") escreval (" ") escreval ("1- Cadastrar cliente") escreval ("2- Checar um cadastro já realizado") escreval ("3- Fechar o programa") fimprocedimento leia (o) limpatela escolha o caso 1 cadastro caso 2 acesso caso 3 limpatela interrompa outrocaso escreval ("Opção não válida!") interrompa fimescolha Fimalgoritmo
  10. C Variável string com espaço

    @MassakiMsk , ah sim, eu fiz um scanf pra iniciar (sem espaços, mas tive que apertar enter pra sair dele), ai criei um laço de repetição e coloquei esse scanf da frase pra iniciar. Nesse caso eu preciso fazer um getchar antes e depois desse da frase? Ou do jeito que tá não vai dar nenhum outro problema?
  11. C Variável string com espaço

    Ah sim, @MassakiMsk , agora eu entendi e consegui implementar no meu código. Tava dando erro mesmo da forma que você disse, mas ai eu coloquei o getchar antes do scanf e deu certo. Muito obrigado mesmo pela dica!
  12. C Sistema de locadora em C

    Eu to passando pelo mesmo problema, você já começou a fazer o seu?
  13. C Variável string com espaço

    Ah, valeu pela dica, @MassakiMsk Se caso eu precisar usar esse tipo de scanf do primeiro exemplo mais de uma vez, eu vou ter que repetir o getchar em todos eles?
  14. C Como uso FOR nessa questão ???

    Eu usaria dois laços for, um para a linha e outra para a coluna. E usaria o comando if para decidir quando é " " e quando é "*", mas eu não sei qual condição você poderia utilizar.
  15. C Variável string com espaço

    Então, a minha dúvida é super simples. Eu só gostaria de saber se existe algum comando no Dev C++ que permite que você coloque um texto/frase com espaços entre as palavras em uma variável do tipo string. Eu sei que no programa não existe variável desse tipo, e eu já tenho a biblioteca string.h no meu código, mas toda vez que eu tento acrescentar um texto com espaços, o Dev C++ divide as palavras espaçadas em variáveis diferentes, ou seja, cada palavra da frase vai pra uma variável diferente do meu programa, entendem? Vocês poderiam me tirar essa dúvida? Agradeço desde já pela atenção.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×