Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Telmo_silva

Criação de ficheiros em .txt

Mensagens Recomendadas

Telmo_silva

Boa Noite pessoal programador!!!

Estou aqui com um pequeno problema, ou melhor grande ;) para a semana vou ter de entregar um trabalho que no qual quero implementar esta situação é gerar um numero aleatório num intervalo de 0 a 100, que que o utilizador tenta adivinha o numero.

    -o meu resultado final é:

                    O numero correto é o X, quantidade de tentativas X

                    O tempo que demorou a acertar no numero foi X

ou seja eu queria que esta informação fica-se guardada num txt em vez de se ver só na consola. :wallbash:

o meu compilador é o Dev-C++

Help!!!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pmg

Abres o tal do txt com a funcao fopen(). Depois, logo a seguir ao(s) printf(s) do teu resultado final acrescentas um(s) fprintf()s similar(es). Nao te esquecas dum fclose() no fim de escreveres todas as informacoes.


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
jagsilva

Pode ser qualquer coisa assim: Recebe a string e escreve num ficheiro.

#include <stdio.h>
void regista(char* mensagem) 
{ 
   FILE *file;                  /* apontador para ficheiro */

  /* Abre o ficheiro para adicionar informação. Se o ficheiro não existir cria um novo */ 
  file = fopen("log.txt","a+"); 

  /* Escreve a mensagem */
  fprintf(file,"%s\n", mensagem);

  fclose(file);
}

jagsilva

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Flinger

Esse exercício costuma ser dos primeiros que o pessoal faz, ao aprender. Também me parece que estás a pôr a carroça à frente dos bois. Entendo que estejas impaciente para começar a fazer algumas coisas um bocadito mais avançadas, mas para isso precisas de conhecimento que, provavelmente, ainda não tens.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
KTachyon

Tecnicamente, escrever num ficheiro em vez de escrever na consola é apenas um pequeno passo.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Telmo_silva

Boas!!!

Pois, estou de acordo, mas se todos estivermos á espera que o Prof de a matéria para fazer o exercício estávamos bem lixados ;).... Por isso é que se chama pessoas autónomas, e com uma flexibilidade social, para explicar a situação das pessoas que querem fazer algo de novo, no qual o prof ja referiu que é muito valorizado a autonomia de cada um, e não fazer um programa rude, que está já feito logo na primeira pagina do Google. As pessoas que não procuram um pouco mais para melhorar o programa que vai ser avaliado e apresentado á turma, são pessoas que não se querem esforçar em nada.. enfim  :wallbash: .

Quero agradecer a todos os que me responderam e muito obrigado pelas dicas, ja está a funcionar nas perfeitas condições.

Tenho outra questão, já vi que á aqui gente da minha turma também a traz de coisas, pois já á pessoas que já fizeram o mesmo que eu, ou seja, já guardam a informação em TXT, como eu sou mais original do que isso, gostava de uma dica para CSV :)

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Flinger

Ser empreendedor é um qualidade. Concordo contigo, e acho muito bem que não te limites ao que o professor ensina. Mas não vejo grande vantagem em começares a saltar passos, e tentar fazer algo que ainda não sabes. Se queres mesmo aprender mais, arranja um bom livro de c e começa a estudá-lo. Assim vais aprendendo ao teu ritmo, mas de maneira organizada.

Tenho outra questão, já vi que á aqui gente da minha turma também a traz de coisas, pois já á pessoas que já fizeram o mesmo que eu, ou seja, já guardam a informação em TXT, como eu sou mais original do que isso, gostava de uma dica para CSV :)

Isto é um exemplo perfeito :) Se tivesses percebido o que estavas a fazer, com a escrita do ficheiro, já sabias a resposta para isso ;)

O CSV é um implementação particular de arquivos de texto separados por um delimitador, que usa a vírgula e a quebra de linha para separar os valores.

De qualquer forma, não gosto de passar por velho rezingão :D

#include <stdio.h>
void regista(char* mensagem) 
{ 
   FILE *file;                  /* apontador para ficheiro */

  /* Abre o ficheiro para adicionar informação. Se o ficheiro não existir cria um novo */ 
  file = fopen("log.txt","a+"); 

  /* Escreve a mensagem */
  fprintf(file,"%s\n", mensagem);

  fclose(file);
}

Se a tua função de escrita é baseada nisto, então basta que passes a mensagem bem formatada para o ficheiro ser guardado como cvs. O CVS é/foi usado para guardar dados em forma de texto, não frases compostas como estavas a fazer anteriormente, por isso o melhor formato seria:

2,7,50

Ou seja, o número era o 2, com 7 tentativas, em 50 segundos. Para formatares a mensagem, presumo que já tenhas visto o sprintf(). Lembra-te de pôr o \n no fim de cada mensagem.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Telmo_silva

Peço desculpa, estive ausente, como foi época natalícia não estive no pc.

espero que todos tenham tido um bom natal.

sim o problema ficou resolvido...

muito obrigado ;)

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Marc silva

ok amigo eu também estive ausente caro colega programador, andei a azeitona mas não foi por isso que deixei de programar :confused:

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.