Forum Pplware

Versão Completa: Mudança de matriz em ficheiro
Está de momento a ver uma versão reduzida do nosso conteúdo. Ver versão completa com o formato adequado.
Boas.

Tenho um pequeno GRANDE problema :x

eu tenho 1 "mapa" do estilo

Código:
Código:
4
A (B) A  B
(C)(B)(A) D
D (A) C  D
(A)(B)(D) C
Basicamente o que eu tenho de fazer é identifcar as celulas da grelha.

1o) 4 é o numero de lados do mapa e para ja queria ignora-lo(comezar a contar só a partir da 2ª linha)

2o) eu tenho de identificar os elementos em grupos de 3 e definilos como celulas. ou seja

A -> CELULA 1.2
(B)-> CELULA 2.1

e por ai fora mas e depois modifica-las conforme o utilizador quiser para por ou tirar os () sendo essa função definida atraves de c ou s e depois a celula do mapa, por exemplo

c 31 vai adicionar parenteses ao A
s 21 vai tirar os parenteses do B.

Depois de introduzir esse comando quero que o resultado seja projectado no ecra.

Agradecia bastante se me ajudassem.

Deixo aqui parte do meu codigo para vos facilitar o entendimento
Código:
Código:
int main()
{
    char qua[20];
    printf("Introduza nome do quadro=");
    scanf("%s",qua);
    strcat (qua, ".ltr");
    
    FILE * quadro = fopen (qua , "r");
    if ( quadro != NULL )
        {
            char mystring [100];
            while ( fgets (mystring , sizeof mystring , quadro) )
            {
                fputs (mystring, stdout);
            }
            fclose (quadro);
        }
        else
        {
            perror (qua);
        }
   return 0;
}
Desde já obrigado ^^,
Não percebi mesmo o que pretendes, pela numeração que deste a cada letra.

Tenta dar uma letra diferente a cada posição, para se tentar perceber melhor.

De qualquer das formas, no teu código não existe nada do que falaste... Estás simplesmente a escrever no ficheiro o que o utilizador introduz...

A melhor forma de fazeres isso é criar um array bidimensional de strings (e não uma só string), colocares os valores conforme queres que apareçam (e até mostrá-los ao utilizador), e só no final (talvez mediante um comando de "quit") escrever no ficheiro o que tiveres. É mais fácil.
Exacto, cada vez que o utilizador modifica uma jogada ele deve de actualizar o ficheiro com as instruçoes dadas e apresenta de novo o ficheiro no ecra!

o que eu qeria era algumas ideias de como devo fazer, o que eu qero e transformas aquele texto numa especie de quadro de jogo e atraves de comandos dados pelo utilizador o programa ir a esse celula e modificar a celula.

alguma ideia?
Boas,
antes de mais acho que deverias ter especificado a linguagem que irias utilizar no nome do post...
Segundo, não percebi o sistema de coordenadas.
Por fim, acho também que deverias especificar os conhecimentos que tens de programação para poderes ser ajudado de acordo.

cumps.
Boas,

o post foi mal feito devido a minha presa porque tava prestes a sair Shy

A linguagem é em C,

o que quero e pegar num ficheiro de texto, tranformar num tabuleiro de jogo de tamanho a ser definido pelo primeiro elemento desse ficheiro de texto e depois modificar o conteudo do mesmo, tendo em conta que as celulas estao agrupadas de 3 em 3.

o que sei de C é um pouco basico, mas sufeciente para atingir algumas metas deste trabalho.

Desde já obrigado
nunca trabalhei com C portanto se disser alguma "calinada" por favor corrijam-me.
se percebi bem penso que o melhor procedimento seria passares o contiudo do ficheiro de texto para um array de caracteres(tamanho=(número na primeira linha ao quadrado)*3) ignorando os caracteres de mudança de linha.
fazeres as alterações pretendidas pelo utilizador no array e depois copiares o conteudo array para um ficheiro de texto.

não te posso ajudar em termos de código mas se precisares de ajuda em algoritmia dentro de que puder ajudo...

cumps.
Desde já obrigado :x

Alguem me pode arranjar partes de codigo? é que tou a ficar super apertado em deadlines e preciso de algum source Tongue
URL's de Referência