Ir para o conteúdo
LUCAS SILVA

ajuda com estrutura pascal

Mensagens Recomendadas

LUCAS SILVA

galera é o seguinte, tenho esse códigozinho ai, que é uma calculadora de áreas, que usa o comando de repetição " repeat "

fiquei enrolado, e nao consegui fazer esse mesmo código usando a repetição " while " , e com ' for "

voces poderiam me ajudar por favor?

agradeço

Program qc;
var
opcao:integer;
a1,a2,a3:real;
lado:real;
base, altura:real;
Begin
repeat
clrscr;
writeln('MENU');
writeln('1: PARA CALCULAR A AREA DO QUADRADO');
writeln('2: PARA CALCULAR A AREA DO RETANGULO');
writeln('3: PARA CALCULAR A AREA DO TRIANGULO');
writeln('4: PARA SAIR');
writeln(' QUAL SUA OPCAO ?'); 
readln (opcao);
case (opcao) of
1: begin
 writeln('VOCE ESCOLHEU A AREA DO QUADRADO');
 writeln('POR FAVOR INFORME UM DOS LADOS DO QUADRADO');
 readln (lado);
 writeln ('A ÁREA DO SEU QUADRADO É : ', lado*lado :4:2);
 end; 

2: begin
 writeln ('VOCE ESCOLHEU CALCULARMOS A ÁREA DO RETANGULO');
 writeln ('VAMOS ME AJUDE, INFORME A BASE E A ALTURA DO MESMO');
 readln (base,altura);
 writeln ('A BASE DO SEU RETANGULO É ', base*altura :4:2);
 end;


3: begin
 writeln ('VOCEE ESCOLHEU CALCULARMOS A AREA DO TRIANGULO');
 writeln ('POR FAVOR INFORME  A BASE A ALTURA');
 readln (base, altura);
 writeln ('A AREA DO SEU TRIANGULO É' ,  ((base*altura) /2):4:2);
 end



else begin
    if(opcao=4)
    then begin
         writeln ('VOCE OPTOU POR SAIR, BYE BYE');


         end


     else begin
          writeln ('VOCE DIGITOU UMA OPCAO INVÁLIDA');


          end;
end;













end;
readln;
 until (opcao=4);
End.

Editado por pwseo
syntax highlight.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pwseo

Lucas,

O teu código está pessimamente indentado (não sei se foi ao copiar para o fórum ou se realmente é assim que o escreveste), por isso deverias tratar de o indentar correctamente. Também não tinhas colocado as tags code correctamente, mas já tratei disso (certifica-te que lês este tópico de ajuda para que não se repita a situação).

E por fim, vamos ao teu código. Estás a utilizar Pascalzim? Se não estás, falta-te uses crt no código.

Em relação à tua questão: é suposto fazeres o mesmo programa com um ciclo for e/ou while onde estás a utilizar o repeat? É isso que está escrito no enunciado? Porque embora seja simples fazer a conversão para utilizar o while, o mesmo não pode ser dito para o for

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
LUCAS SILVA

Lucas,

O teu código está pessimamente indentado (não sei se foi ao copiar para o fórum ou se realmente é assim que o escreveste), por isso deverias tratar de o indentar correctamente. Também não tinhas colocado as tags code correctamente, mas já tratei disso (certifica-te que lês este tópico de ajuda para que não se repita a situação).

E por fim, vamos ao teu código. Estás a utilizar Pascalzim? Se não estás, falta-te uses crt no código.

Em relação à tua questão: é suposto fazeres o mesmo programa com um ciclo for e/ou while onde estás a utilizar o repeat? É isso que está escrito no enunciado? Porque embora seja simples fazer a conversão para utilizar o while, o mesmo não pode ser dito para o for

amigo, desculpa pela identação, meio que na pressa só fiz colar o código aqui, e não prestei atenção como ele ficava.

Sim sim amigo preciso desse mesmo código com o WHILE, E COM O FOR.

com o while comecei a fazer, mas deu erro fiz naquele esquema while (opcao<>4)do

case..

1

2

3

... etc

só que após a case me enrolei, e ele nao compilou.

e com o for nao faço nem idéia por onde começar , me ajuda ai por favor, grato.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pwseo

Lucas,

É preciso que coloques aqui o que fizeste com o while para que possamos ajudar-te a perceber qual o erro e de que forma se corrige.

Partilhar esta mensagem


Ligação 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. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.