Ir ao conteúdo
  • Cadastre-se

João Miguel Freitas Mausa

Membro Júnior
  • Posts

    10
  • Cadastrado em

  • Última visita

Tudo que João Miguel Freitas Mausa postou

  1. Boa noite! Alguém poderia me ajudar com o código abaixo? Preciso adaptá-lo para que seja possível empilhar strings. #include <stdio.h> #include <stdlib.h> /*Declaração do tipo nó para a pilha, composto de ponteiro para o próximo nó e de um campo para dado */ typedef struct elemento { int dado; struct elemento *proximo; } elemento; elemento *topo = NULL; //Ponteiro para o topo da pilha elemento *alocar = NULL; //Ponteiro para fazer alocação /*Inserção de elementos na pilha Parâmetro dado: é um int */ void push(int dado) { alocar = malloc(sizeof(struct elemento)); //aloca memória if (alocar == NULL) { //Se não for possível fazer a alocação, sai do programa printf("push: Falta de memória\n"); return -1; } alocar->dado = dado; //Copia o dado para o novo nó alocado if (topo == NULL) { //Se não houver elemento ainda na pilha, insere na base topo = alocar; topo->proximo = NULL; } else { alocar->proximo = topo; //Aponta o próximo para o "antigo" topo da pilha topo = alocar; //Aponta o ponteiro de topo para o dado que foi alocado } } /* Retira elementos da pilha */ int pop(int *removido) { if(topo){ *removido = topo->dado; topo = topo->proximo; return 0; } else{ printf("pop: Pilha vazia.\n"); return -1; } } /*Imprime todos os elementos da pilha na tela na ordem de retirada */ void imprimir() { elemento *ponteiro = topo; if (ponteiro == NULL){ printf("imprimir: Pilha vazia.\n"); return -1; } printf("\nPilha:\n"); while (ponteiro) { printf("%d\n", ponteiro->dado); ponteiro = ponteiro->proximo; } } int main() { int dado; int rem = 0; int ret = 0; ret = pop(&rem); //Tenta remover dado da pilha vazia if(ret == 0){ printf("\nmain:Saiu da pilha: %d\n", rem); imprimir(); } printf("\nInserir: "); scanf("%d", &dado); push(dado); imprimir(); printf("\nInserir: "); scanf("%d", &dado); push(dado); imprimir(); ret = pop(&rem); if(ret == 0){ printf("\nmain: Saiu da pilha: %d\n", rem); imprimir(); } ret = pop(&rem); if(ret == 0){ printf("\nmain: Saiu da pilha: %d\n", rem); imprimir(); } printf("\nRetirar: "); ret = pop(&rem); if(ret == 0){ printf("\nmain: Saiu da pilha: %d\n", rem); imprimir(); } }
  2. @CafeComLeiteOficial @mick.07 @GabrielLP14 É o Windows 10. Está aparecendo o seguinte: “Um driver de midia necessário ao compudor esta faltando. Pode se tratar de um driver DVD, USB ou Disco Rigido. Se voce tiver uma unidade de CD, DVD ou flash USB com driver, insira-a agora. Observação: se a mídia de instalação do windows estiver na unidade de DVD ou na unidade USB, você poderá removê-la com segurança para esta etapa.
  3. @GabrielLP14 sim, eu baixei. Mas no momento em que seleciono o pendrive para a instalação, começa normal, eu clico em “instalar agora” e logo em seguida aparece que está faltando drive de midia. Saberia o que eu devo fazer para isso não acontencer?
  4. Olá, obrigado! HD é de 1tb e o SSD 240gb, quero começar o windows do 0 adicionado 1 minuto depois @CafeComLeiteOficial ok, obrigado!
  5. Boa noite, alguém poderia me ajudar com a instalação do windows no SSD? Eu já tenho o windows no HD, e quero removê-lo para colocar no SSD, mas eu não estou conseguindo. Gostaria de saber os passos que devo fazer para o funcionamento.
  6. Olá, alguém poderia me explicar como eu faço a parte que está em vermelho? Eu não sei como faço para ir para a opção que a pessoa escolher e a parte da fila. Agradeço desde já. Faça um programa que simule o gerenciamento de chamados de um setor de TI. Crie uma struct chamados contendo: número do chamado, assunto e descrição. Os chamados devem ser gerenciados em forma de fila. Devem ser oferecidas as seguintes opções: cadastrar novo chamado, exibir todos os chamados e atender chamado. Se for escolhida a opção “atender chamado” o primeiro elemento da fila é removido e impresso em um arquivo atendimentos.txt juntamente com a hora do sistema. O formato do arquivo deve ser o seguinte: *Número do chamado: 22677 Descrição: O usuário do computador com número de patrimônio 335, localizado no setor de RH solicita a verificação das portas USB da sua máquina. Horário do atendimento: Fri Oct 26 13:16:21 2018 *Número do chamado: 22678 Descrição: O usuário do notebook com número de patrimônio 422, localizado no setor de produção solicita a verificação da bateria. Horário do atendimento: Fri Oct 26 14:15:12 2018 Por enquanto eu tenho isso, mas não tá dentro do que o exercício está pedindo, ainda #include <stdio.h> #include <string.h> #include <stdlib.h> struct chamado{ char NumChamado[100]; char assunto[50]; char Descricao[100]; }; int main() { int n; int i; struct chamado *chamados = NULL; printf("Quantos chamados?\n"); scanf("%d", &n); chamados = malloc (n*sizeof(struct chamado)); if (chamados == NULL){ return 0; } else{ for(i=0; i<n; i++){ printf("Sistema de cadastro de chamado"); printf("\n\nNumero do Chamado:\n\n"); scanf("%s", chamados[i].NumChamado); printf("\n\n Tipo de problema:\n\n 1 - Manutencao\n\n 2 - Erro\n\n 3 - Nao funcionando\n"); printf("\nAssunto: "); scanf("%s", chamados[i].assunto); printf("\n\nTipo de descricao:\n\n 1 - Aguardando cliente \n\n 2 - Agendado \n\n 3 - Procimento remoto\n\n"); printf("\n\nDescricao: "); scanf("%s", chamados[i].Descricao); } for(i=0; i<n; i++){ printf("\n\nChamado:%s\n", chamados[i].NumChamado); printf("Assunto:%s\n", chamados[i].assunto); printf("\Descricao:%s\n\n", chamados[i].Descricao); } free(chamados); chamados = NULL; } }
  7. @devair1010 Eu entendi o principio, mas como eu faço para usar o strcmp? Eu irei comparar, e depois irei printar na tela normal caso ele seja igual, certo? E caso seja diferente? Desculpe pela estupidez, mas eu ainda não entendi, creio eu que esteja fazendo algo errado ainda por falta de conhecimento. adicionado 29 minutos depois @devair1010Consegui!!! Fico muito agradecido pela ajuda! Tenha uma ótima noite!
  8. Certo, e para eui comparar arquivos, eu devo usar o comando strcmp ou outro? adicionado 1 minuto depois @devair1010 Certo, e para eu comparar arquivos, eu devo usar o comando strcmp ou outro?
  9. Olá, tenho um trabalho para fazer, mas estou tendo dificuldades com o código. O trabalho é o seguinte: "Faça um programa que gere hashes de arquivos de texto e verifique se mesmos são idênticos através da comparação dos hashes. No menu inicial deve ser mostrada a seguinte interface: Nome ou caminho completo do arquivo 1: Nome ou caminho completo do arquivo 2: A saída deve ser mostrada conforme segue: Os arquivos são iguais. Hash: Ou Os arquivos não são iguais. Hash 1: Hash 2: O código que criei é este: #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { FILE *hash; FILE *hash1; char m[101]; char m1[101]; int t; int t1; if((hash = fopen("Meu_arquivo.txt","w")) == NULL) { printf("Erro ao abrir arquivo!!!\n"); exit(1); } printf("Nome ou caminho completo do arquivo 1: \n"); gets(m); t = strlen(m); fwrite(m, sizeof(char), t, hash); if((hash1 = fopen("Meu_arquivo.txt1","w")) == NULL) { printf("Erro ao abrir arquivo!!!\n"); exit(1); } printf("Nome ou caminho completo do arquivo 2:\n"); gets(m1); t1 = strlen(m1); fwrite(m1, sizeof(char), t1, hash1); if (m == m1) printf("Os arquivos sao iguais.\n Hash: %s", m, hash, m1, hash1); else printf("Os arquivos nao sao iguais.\nHash 1: %s \nHash 2: %s ", m, m1, hash, hash1); } E quando vou processar, sempre aparece que são diferentes, nunca que são iguais. Alguém poderia me ajudar? OBS: Eu não sei se estou utilizando hash da maneira certa.

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

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!