Jump to content


Photo

Passar Algoritmo Para Pascal, Alguém Sabe?


  • Faça o login para participar
7 replies to this topic

#1 DSR

DSR

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 13/05/2009, 00:09

var

   Maior,Menor,Idade,QtdPessoas:Inteiro

   MediaIdade,MediaAltura,Altura:Real

   Continua:caractere

inicio

   Maior <- 0

   Menor <- 999

   Continua <- "S"

   Enquanto (Continua = "S") Faca

			Escreva("Digite a idade: ")

			Leia(Idade)

			Escreva("Digite a altura: ")

			Leia(Altura)

			Se (Idade > Maior) Entao

			   Maior <- Idade

			FimSe

			Se (Idade < Menor) Entao

			   Menor <- Idade

			FimSe

			MediaIdade <- MediaIdade + Idade // Faz a soma da idade de todas pessoas

			MediaAltura <- MediaAltura + Altura // Faz a soma da altura de todas pessoas

			QtdPessoas <- QtdPessoas + 1 // Conta quantas pessoas existem no cadastro, para poder fazer a divisão das medias

			Escreva("Deseja continuar cadastrando (S/N) ? ")

			Leia(Continua)

   FimEnquanto

   Escreval("Média de Idade: ",MediaIdade / QtdPessoas)

   Escreval("Média de Altura: ",MediaAltura / QtdPessoas)

   Escreval("Maior Idade: ",Maior)

   Escreval("Menor Idade: ",Menor)


Edição feita por: DSR, 13/05/2009, 00:12.


#2 DarkSign

DarkSign

    Doutor

  • Usuários
  • 868 posts
  • Sexo:Masculino
  • Localidade:Brasil
  • Interesses:Tecnologias na área WEB em geral e desenvolvimento.

Posted 13/05/2009, 09:14

Essa tá fácil pra passar pra Pascal...

mas... você não sabe nada de Pascal? Isso tá me cheirando a trabalho. Pq vc não tenta e tenta tirar as dúvidas ao inves de pedir pra alguem fazer pra ti?

/*DarkSign*/
Não sabe por onde começar? Que tal pelas Regras ?

#3 DSR

DSR

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 13/05/2009, 15:27

Essa tá fácil pra passar pra Pascal...

mas... você não sabe nada de Pascal? Isso tá me cheirando a trabalho. Pq vc não tenta e tenta tirar as dúvidas ao inves de pedir pra alguem fazer pra ti?

/*DarkSign*/

gostaria de saber como fica essa parte em pascal, de onde veio esse 0 e 999 oquê siguinifica esse sinal (<-0)
Maior <- 0 Menor <- 999 Continua <- "S", e o peso das pessoas?

#4 DarkSign

DarkSign

    Doutor

  • Usuários
  • 868 posts
  • Sexo:Masculino
  • Localidade:Brasil
  • Interesses:Tecnologias na área WEB em geral e desenvolvimento.

Posted 13/05/2009, 16:08

Ah isso eh simples.

O simbolo <- significa "atribuir a" em pseudo-codigo.

O codigo acima transcrito em pascal seria assim:

var
   Maior,Menor,Idade,QtdPessoas:Inteiro
   MediaIdade,MediaAltura,Altura:Real
   Continua:caractere
inicio
   Maior <- 0
   Menor <- 999
   Continua <- "S"

em Pascal:
var
   Maior,Menor,Idade,QtdPessoas: Integer;
   MediaIdade,MediaAltura,Altura: Real;
   Continua: char;

begin

   Maior := 0;
   Menor := 999;
   Continua := "S"

Ae você vai alterando. Analisa o pseudo-codigo e tenta escrever o Pascal, como eu fiz.

/*DarkSign*/
Não sabe por onde começar? Que tal pelas Regras ?

#5 DSR

DSR

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 14/05/2009, 01:22

será que o algoritmo em pascal fica assim, se poder mostrar aonde errei te agradeço!

Program media;
uses wincrt;
Var maior,menor,idade,qtdpessoas:integer;
mediaidade,mediaaltura,altura:real;
continua:char;

Begin

clrscr;
maior:=0;
menor:=999;
continua := 'S';
for continua :='S' then;
writeln('digite a idade:');
readln (idade);
writeln('digite a altura:');
readln (altura);
if(idade > maior)then;
maior := idade
end;

begin;

if(idade < menor) then
writeln (menor := idade);
end;
readln (mediaidade:=mediaidade+idade);
readln (mediaaltura:=mediaaltura+altura);
readln (qtdpessoas:=qtdpessoas+1);
writeln ('Deseja continuar cadastrando (S/N) ? ');
readln (continua);
for
writeln('Média de Idade:',MediaIdade / QtdPessoas);
writeln('Média de Altura:',MediaAltura / QtdPessoas);
writeln('Maior Idade: ',Maior);
writeln('Menor Idade: ',Menor);
readln;
End.

#6 DarkSign

DarkSign

    Doutor

  • Usuários
  • 868 posts
  • Sexo:Masculino
  • Localidade:Brasil
  • Interesses:Tecnologias na área WEB em geral e desenvolvimento.

Posted 14/05/2009, 15:26

Você errou alguns pontos;

Enquanto = while

então:

Enquanto (Continua = "S") Faca

Fica

While (continua = "S") Do

E aqui:
if(idade > maior)then;
maior := idade
end;

begin;

if(idade < menor) then

Não sei da onde tu tirou aquele begin;, hehehehe, um erro de sintaxe e um begin fora do lugar.

Você tá testando isso no compilador?
Tenta corrigir os erros ae.

/*DarkSign*/
if(idade > maior)then;
maior := idade

retire o ponto e virgula depois de then
if(idade > maior)then
maior := idade

Não sabe por onde começar? Que tal pelas Regras ?

#7 DSR

DSR

    Novato no fórum

  • Usuários
  • 5 posts
  • Sexo:Não informado

Posted 14/05/2009, 22:05

cara estou tentando fazer este algoritmo no copilador pascal, só que este parte final não deu certo, já tentei de varias maneiras será que você pode me ajudar?

while;
writeln('Média de Idade:',mediaidade / qtdpessoas);
writeln('Média de Altura:',mediaaltura / qtdpessoas);
writeln('Maior Idade: ',maior);
writeln('Menor Idade: ',menor);
readln;
End.


esse while, acho que esta errado porque ele é usado quando se quer repetir algo, se vcê poder me explicar eu agradeço
até+

#8 DarkSign

DarkSign

    Doutor

  • Usuários
  • 868 posts
  • Sexo:Masculino
  • Localidade:Brasil
  • Interesses:Tecnologias na área WEB em geral e desenvolvimento.

Posted 18/05/2009, 15:25

Sim, esse while está errado, você tem que ter o controle dele.

A estrutura geral do while é

while CONDICAO do
begin

end;

/*DS*/
Não sabe por onde começar? Que tal pelas Regras ?




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq