• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

sportal

1º Trabalho em C para a faculdade

6 mensagens neste tópico

Boa tenho um trabalho para fazer na faculdade, mas tou com alguns problemas será que alguém me pode ajudar?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Claro que sim.

Mas apresenta as tuas dúvidas em concreto senão ninguém te vai ajudar sem saber o que tens mais dificuldades. :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

o meu problema foi que entrei agora em Janeiro arranjei vaga e tenho um trabalho para entregar hoje até à meia noite :) tipo missão impossível :P tenho andado a ler os apontamentos dos meu colegas e não consigo lá chegar.

Precisava de alguém com muita paciência e que aceitasse o pdf onde esta o trabalho e me orientasse por alto o que fazer.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pretende-se implementar um programa que indique um modo de gravar, em cassetes de video, um conjunto de filmes com durações dadas, por forma a minimizar o número de cassetes utilizadas.

Dados: Tempo de gravação de uma cassete de vídeo (em minutos), número de filmes e duração de cada um em minutos.

1. Defina estruturas de informação apropriadas para resolver este problema, incluindo as variáveis simples que vai utilizar.

2. Defina uma função com o protótipo "void ler_dados(void);" que lê os dados (no formato descrito no exemplo dado da entrada padrão).

3. Defina uma função com o prótotipo "void resultado_cassetes(void);" que imprime o número de cassetes utilizadas bem como os filmes gravados em cada cassete.

4. Uma primeira estratégia muito simples ("first-fit") consiste em considerar os filmes um a um pela ordem que são dados e gravar cada filme na primeira cassete em que couber, ou numa nova cassete se não couber em nenhuma. Suponhamos, por exemplo, que num certo momento já foram utilizadas 5 cassetes e que os seus tempos livres são de respectivamente 60.40.100.10 e 80 minutos. Se o filme seguinte tem a duração de 70 minutos é gravado na cassete 3 (tempo livre 100); se tivesse a duração de 120 minutos, seria gravado numa nova cassete (e passariam a haver 6 cassetes utilizadas). Para a implementação desta estratégia:

a. Defina estruturas de informação apropriadas.

b. Escreva uma função com o prótotipo "void colocaff(int nfilme);" que "grava" o filme número "nfilme" na cassete correspondente ao "first-fit"

c. Complere o seu programa, definindo estruturas de informação, escrevendo a função "main", etc..

5. Outra estratégia ("best-fit") consiste em considerar os filmes um a um pela ordem que são dados e gravar cada filme na cassete com o menor tempo livre onde o filme cabe, ou numa nova cassete se não couber em nenhuma. Para o exemplo da alínea anterior, um filme de 35 minutos seria gravado na cassete 2 ( a qual ficaria com 5 minutos livres). Escreva uma função com o pr´totipo "voi colocabf(int nfilme);" que "grava" o filme número "nfilme" na cassete correspondente ao best-fit".

6. Mostre que nem o "first-fit" nem o "best-fit" são estratégias óptimas, através de um exemplo em que existe uma gravação em menos cassetes do que a que resulta da aplicação dessas estratégias.

7. Defina uma função com o prótotipo "voi resultado_filmes(void);" que imprime todos os filmes gravados, a sua duração e a cassete onde cada filme está gravado.

8. Escreva uma função com o prótotipo "void ordena_filmes(int tipo_ordenação);" que ordena o vector de filmes segundo a sua duração. Se o parâmetro tipo_ordenação for igual a CRESCENTE a ordenação será por duração crescente, enquanto que para ordenação decrescente o parâmetro deve ser igual a DECRESCENTE. CRESCENTE E DECRESCENTE são constantes.

9 Modifique a função "main" de forma a que a saída do programa mostr, depois da indicação das cassetes onde está gravado cada filem, uma lista de filme ordenados por ordem crescente da sua duração.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Afinal houve um prolongamento até amanhã às 17h, se existir alguma pessoa que o consiga fazer ficarei extremamente grato, podendo inclusive oferecer alguns descontos numa marca de electrodomésticos conceituada no mercado, obrigado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Afinal houve um prolongamento até amanhã às 17h, se existir alguma pessoa que o consiga fazer ficarei extremamente grato, podendo inclusive oferecer alguns descontos numa marca de electrodomésticos conceituada no mercado, obrigado.

Sim claro, nos vamos fazer o teu trabalho...  :)

Lê as regras do fórum sff, não podes pedir este tipo de coisas.

Tópico bloqueado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Convidado
Este tópico está fechado a novas respostas.