Exercicio em C- Ajuda Please

Boas pessoal, eu estou a tirar um cet de redes, e eu tenho grandes dificuldades na programação, eu vou deixar aqui a enunciado, se for possivel agredeceria a vossa ajuda. O professor já deu os ficheiros,não os posso anexar aqui, no total são 624.No total são 20 zebras,e cada ficheiro corresponde a um minuto.Muito obrigado pela vossa ajuda!

Com este projecto pretende-se que desenvolva um programa em linguagem C que permita determinar algumas características acerca do movimento de uma manada de zebras. Como sabemos, as zebras em geral deslocam-se em grupo. Assuma que em cada zebra foi colocado um sensor sem fios, que permitiu obter e registar num ficheiro a sua posição ao longo do tempo. A partir da posição das zebras ao longo do tempo pretende-se que o programa determine:





Qual o número de zebras da manada

;




Qual a posição média ;




Qua l a envolvente geográfica em que a manada se desloca(será determinar o

x

mínimo
,
x
máximo
,
y
mínimo
,

y
máximo
);



Determinar qual o animal que está a deslocar-se mais rápido num determinado instante;




Determinar a velocidade média da manada.
 
Última edição:
Sim tens razão, a minha duvida é, como eu posso fazer para carregar todos esses ficheiros? Eu para determinar aqueles topicos todos tenho que os comparar. é essa a minha questão.
Cumps
 
Cheira-me que alguém faltou às aulas de ficheiros em C mas vou aqui deixar o básico

Para trabalhares com ficheiros tens primeiro que o abrir usando:

FILE *fin = fopen ("por_aqui_nome_do_ficheiro.txt", "r");

e depois para tirares a informação de dentro do ficheiro usas:

fscanf (fin, "%d", &n);

em que n é a variavel onde guardas o valor, se quiseres vários valores podes usar um ciclo for e para guardar esses valores um array:

for(i = 0; i != EOF; i++)
fscanf (fin, "%d", &n);

não sei se a parte do EOF funciona mas podes sempre usar algo mais normal como i < num;
 
Sim tens razão, a minha duvida é, como eu posso fazer para carregar todos esses ficheiros? Eu para determinar aqueles topicos todos tenho que os comparar. é essa a minha questão.
Cumps

Estás a pensar manter os 600 ficheiros abertos ao mesmo tempo? Podes sempre fazer um vector de FILE *, assim mantinhas os ficheiros todos abertos ao mesmo tempo. No entanto essa é uma solução parva e que possivelmente nem funciona, provavelmente o SO nem te deixa abrir tantos ficheiros ao mesmo tempo.

Aquilo que deves fazer é abrir um ficheiro de cada vez e armazenar o seu conteúdo em memóra [dinâmica] (uso de listas? vectores simples?).

Depois de teres a informação toda carregada em memória, fazes as comparações necessárias.

Cumps
 
Back
Topo