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

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
anderson de freitas

C Salvar em arquivo utilizando array

Recommended Posts

Pessoal, preciso terminar esse projeto, falta apenas a parte de salvar em arquivo. Segue abaixo o que deve ser feito pra vocês terem uma noção. Do que preciso para salvar no arquivo?

Liga/Desliga lâmpadas de 5 cômodos (controlado pelo
usuário)
 Abre/Fecha porta de 5 cômodos e do portão de entrada
(controlado pelo usuário)
 Definir a temperatura do sistema de aquecimento de água
(perguntando ao usuário)
 Informar se o aquecimento de água está muito quente ou
muito frio em função de parâmetros pré-definidos pelo
sistema
 Controlar a liberação do acendimento das luzes em função
do horário (dia/noite) pré-definido pelo sistema (simular
diversos horários do dia)
 ****Salvar/Recuperar o estado atual da casa em um arquivo
(utilizando um array)
 Inserir ou retirar cômodos (nesse caso deve também
inserir/retirar a lâmpada e a porta correspondente)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use as funções: fprintf --para Salvar, e fscanf --para Recuperar no arquivo.

Clique nos nomes para mais informações.

 

O arranjo nesse caso, seria um array de caracteres em c (variável char).

Não obrigatoriamente duas funções: salvar_estado (...); e recuperar_estado (...);

Dúvida?

 

Editado por AnsiC
melhorar a mensagem
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
22 horas atrás, AnsiC disse:

Use as funções: fprintf --para Salvar, e fscanf --para Recuperar no arquivo.

Clique nos nomes para mais informações.

 

O arranjo nesse caso, seria um array de caracteres em c (variável char).

Não obrigatoriamente duas funções: salvar_estado (...); e recuperar_estado (...);

Dúvida?

 

A duvida agora é quanto a sintaxe...

Compartilhar este post


Link para o post
Compartilhar em outros sites

É chatinha para quem é iniciante pensar nela sem muito experiencia, porém fácil de entender. Ela depende também de como você está gravando os dados no sistema, sua estrutura: exponha como são as variáveis que você usou para gravar o estado da casa.  No primeiro caso, por exemplo; como gravou o estado das luzes, quais são suas variáveis no sistema? 

Compartilhar este post


Link para o post
Compartilhar em outros sites

char comodo [TAM][TAM];
 int porta[TAM], luz[TAM], portao_entrada[1], temperatura = 25, cont = 5, i = 5, hora;

adicionado 2 minutos depois

nesse caso, o programa recebe uma carga inicial de 5 cômodos, caso seja a primeira vez do usuário. as lâmpadas e as portas estarão inicialmente apagadas e fechadas, respectivamente.

 

adicionado 4 minutos depois

os valores de i de cont mudam continuamente, a depender da inserção ou remoção de algum comodo. sobre a hora, acho que n precise ser salva, já que toda vez que o usuário entrar o programa pedirá

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quase como imaginará, apenas char comodo[TAM][TAM] que não; Esse é o array (comodo) que o array da questão Salvar e Recuperar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

não

adicionado 1 minuto depois

na verdade, n precisa salvar necessariamente em um array, a n ser q essa seja a única forma kkk

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendo que:

  1. O problema é usar um array (podendo ser vetor ou matriz): disso desimportante é se as variáveis estão dispersas no sistema, o importante é reuni-las em um só lugar em um array, segundo o enunciado em um arranjo (array).

 

Prefiro Que seja em um vetor, então a estrategia foi identificar quais são as informações e restringir ao máximo o uso de dados e variáveis de maneira que, não percamos em legibilidade (principalmente) e tão pouco em desempenho. Daí pensei em colocar tudo em um vetor de caracteres.

  char informacoes_da_casa[] = {"0000000000000000"};
  /* Estão alinhadas num arranjo [array] de caracteres, cada byte da sequência
   * até último que guardará os dados que são o "estado residencia" no sistema.
   */

Neste exemplo, os 5 primeiros 0s são respectivamente as 5 lâmpadas de cada cômodo,

cujo os estados variam em 2: 0 --desligado, 1 --ligado. Continua o mesmo raciocínio para com as portas.

 

Os próximos 5 0s são receptivamente as portas de 5 cômodos, análogo as lâmpadas, o estado das portas variam em dois: 0 --fechada, 1 --aberta. Etc.

 

 

É padrão que até pode ser adapta ao seu algoritmo, contudo, o professor vai notar notará imediatamente se todo o programa não seguir um paradigma.

Editado por AnsiC
melhorar a mensagem

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






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

×