Ir para o conteúdo
fabio19

projecto em pascal

Mensagens Recomendadas

fabio19    0
fabio19

Eu tenho que fazer um programa para gerir um cinema...

Onde tenha que introduzir vaios dados sobre o filme, realizador, assistencia etc....

E depois tenhu que ter o total de assistencia de uma sala e a média...Só que não sei como o fazer...

Agradecia ajuda...Obrigado... :P

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fabio19    0
fabio19

program Estatisticas_de_um_Cinema;
        {declara‡Æo variaveis}
Var n_filme:integer;
    nomefilme:string;
    nomerealizador:string;
    nomeactor:string;
    tipofilme:string;
    precobilhete:string;
    assistencia:integer;
    totalassistencia:integer;
    mediaassitencia:integer;

    F:text;
    begin

                write ('Introduza o nome do filme :');
                readln (nomefilme);
                write ('Introduza o nome do realizador:');
                readln (nomerealizador);
                write ('Introduza o nome do actor :');
                readln (nomeactor);
                write ('Introduza o tipo de filme :');
                readln (tipofilme);
                write ('Introduza o preco do bilhete :');
                readln (precobilhete);
                write ('Introduza a assistencia :');
                readln (assistencia);



end.

Até agora tenho isto...

Mas agora tenho que por a media e o total de aasistencia...so que nao sei como fazer...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
TheDark    0
TheDark

Provavelmente tens que pedir a assistência para cada uma das sessões e ires somando numa variável, e obténs a soma. Depois divides pelo total de sessões e obténs a média.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fabio19    0
fabio19

tipo tenho que inicializar uma variavel tipo "soma:=0"

depois acho que tenho que fazer um ciclo for, mas não tenho a certeza...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
TheDark    0
TheDark

É isso mesmo!

Já tens ali a variável totalassistencia que podes utilizar em vez da soma.

Tens que pedir o total de sessões do filme, e fazes um for de 1 até esse valor. Dentro do for pedes o número de assistentes a essa sessão e somas à totalassistencia. Quando terminas o for, divides pelo total de sessões e tens a média.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
TheDark    0
TheDark

Dentro do for tens que pedir ao utilizador para inserir a assistência para cada uma das sessões, e em vez de adicionares i adicionas o valor inserido pelo utilizador.

Mas estás no bom caminho :(

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fabio19    0
fabio19

program Estatisticas_de_um_Cinema;
        {declara‡Æo variaveis}
Var n_filme:integer;
    nomefilme:string;
    nomerealizador:string;
    nomeactor:string;
    tipofilme:string;
    precobilhete:string;
    sessao:integer;
    assistencia:integer;
    totalassistencia:integer;
    mediaassitencia:integer;
    soma,i:integer;

    F:text;
    begin


                write ('Introduza o numero de sessÆo :');
                readln (sessao);
                write ('Introduza o nome do filme :');
                readln (nomefilme);
                write ('Introduza o nome do realizador:');
                readln (nomerealizador);
                write ('Introduza o nome do actor :');
                readln (nomeactor);
                write ('Introduza o tipo de filme :');
                readln (tipofilme);
                write ('Introduza o preco do bilhete :');
                readln (precobilhete);



                totalassistencia:=0;
                For i:= 1 to assistencia do
                write ('Introduza a assistencia :');
                readln (assistencia);
                totalassistencia:=assistencia+i;

end.

eu fiz assim mas o programa nao corre em condiçoes...

Podias me dizer o que fazer para ele correr melhor????

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
TheDark    0
TheDark

Assim rapidamente, acho que só te falta o begin e o end no for, e tens ali um erro na soma:

                For i:= 1 to assistencia do begin
                        write ('Introduza a assistencia :');
                        readln (assistencia);
                        totalassistencia:=totalassistencia+assistencia;
                end;

O i não entra nas contas para nada...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fabio19    0
fabio19

Poes mas desta forma o programa salta fora sem fazer a pergunta (introduza a assistencia)...

Tou a ficar confuso..... :wallbash:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
TheDark    0
TheDark

My bad. É o que dá não testar o código.

1º tens que pedir o número de sessões, depois é que fazes o for de 1 até ao número de sessões.

writeln("Introduza o numero de sessoes:");
readln(nsessoes);
totalassistencia:=0;
for i:= 1 to nsessoes do begin
        write ('Introduza a assistencia :');
        readln (assistencia);
        totalassistencia:=totalassistencia+assistencia;
end;

Se calhar já estou a meter código a mais...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fabio19    0
fabio19

program Estatisticas_de_um_Cinema;
        {declara‡Æo variaveis}
Var n_filme:integer;
    nomefilme:string;
    nomerealizador:string;
    nomeactor:string;
    tipofilme:string;
    precobilhete:string;
    sessao:integer;
    assistencia:integer;
    totalassistencia:integer;
    mediaassitencia:integer;
    i:integer;

    F:text;
    begin


                
                write ('Introduza o nome do filme :');
                readln (nomefilme);
                write ('Introduza o nome do realizador:');
                readln (nomerealizador);
                write ('Introduza o nome do actor :');
                readln (nomeactor);
                write ('Introduza o tipo de filme :');
                readln (tipofilme);
                write ('Introduza o preco do bilhete :');
                readln (precobilhete);

	write ('Introduza o numero de sessÆo :');
                readln (sessao);
	totalassistencia:=0;
                For i:= 1 to sessao do begin                        
        write ('Introduza a assistencia :');                        
        readln (assistencia);                        
        totalassistencia:=totalassistencia+assistencia;                
                end;





end.

Esprimenta por o programa a correr....

Nao funciona como desejado...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
TheDark    0
TheDark

Não experimento porque não tenho aqui nenhum ambiente Pascal. Mas podes sempre explicar o que é que não funciona como seria pretendido.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
necrolord    0
necrolord

Tipo depois de escrever os dados todos devia aparecer o total, e não aparece....

Falta-te um

Writeln(totalassistencia)

Fora do ciclo de for.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fabio19    0
fabio19

program Estatisticas_de_um_Cinema;

        {declara‡Æo variaveis}

Var n_filme:integer;

    nomefilme:string;

    nomerealizador:string;

    nomeactor:string;

    tipofilme:string;

    precobilhete:string;

    assistencia:integer;

    totalassistencia:integer;

    sessao:string;

    mediaassitencia:integer;

    Terror, Accao, Romance:string;

    i:integer;

    F:text;

    begin

                write ('Introduza o numero de sessÆo :');

                readln (sessao);

                write ('Introduza o nome do filme :');

                readln (nomefilme);

                write ('Introduza o nome do realizador:');

                readln (nomerealizador);

                write ('Introduza o nome do actor :');

                readln (nomeactor);

                write ('Introduza o tipo de filme :');

                readln (tipofilme);

                      If tipofilme <> 'Terror' and tipofilme <> 'Accao' and  tipofilme <> 'Romance' then

                              writeln ('Introduza novamente o tipo de filme:');

                              readln (tipofilme);

                write (tipofilme);

                write ('Introduza o preco do bilhete :');

                readln (precobilhete);

totalassistencia:=0;

                For i:= 1 to sessao do begin

        write ('Introduza a assistencia :');

        readln (assistencia);

        totalassistencia:=totalassistencia+assistencia;

                end;

                Writeln (totalassistencia);

end.

O progama nao compila....

Não sei o que fazer mais...

Partilhar esta mensagem


Link 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