Aula 6

OPERADORES LÓGICOS

Estrutura condicional composta

 

 

AND

 

 

var X, Y : Integer;

   begin

     Writeln ('Entre com dois Números:'); { Mostra no ecrã a mensagem}

     Readln (X, Y); { Lê os dois números }

     If ((X > Y) And (Y <> 0)) Then {Condição - SE X for maior que Y E Y diferente de 0 - Repare no And}

     Begin  {INICIO - Repare abaixo que existe três instruções, três comandos Writeln, por isso estão entre BEGIN = INICIO e END = FIM}

       Writeln ('X é Maior que Y');

       Writeln ('Y é diferente de 0');

       Writeln ('O Valor de X é =', X);

     End {FIM}

     else

     writeln ('FALSO uma das condições propostas não se verifica');

       readln;

   end.

Condições para ser VERDADE (AND)

Primeiro numero maior que o segundo E (AND) Segundo número <> de 0

x

 

y

 

 

3

and

5

Falso

F^V

3

and

3

Falso

F^V

3

and

0

Falso

V^F

3

and

2

Verdadeiro

V^V

0

and

0

Falso

F^F

 

 

 

 

OR

 

 

var X, Y : Integer;

   begin

     Writeln ('Entre com dois Números:'); { Mostra no ecrã a mensagem}

     Readln (X, Y); { Lê os dois números }

     If ((X > Y) or (Y <> 0)) Then {Condição - SE X for maior que Y ou Y diferente de 0 - Repare no OR}

     Begin  {INICIO - Repare abaixo que existe duas instruções, três comandos Writeln, por isso estão entre BEGIN = INICIO e END = FIM}

       Writeln ('X é Maior que Y OU y é diferente de 0');

       Writeln ('O Valor de X é =', X);

     End {FIM}

     else

     writeln ('FALSO nenhuma das condições propostas não se verifica');

       readln;

end.

Condições para ser VERDADE (OR)

Primeiro numero maior que o segundo OU (OR) Segundo número <> de 0

x

 

y

 

 

3

OR

5

Verdadeiro

FvV

3

OR

3

Verdadeiro

FvV

3

OR

0

Verdadeiro

VvF

3

OR

2

Verdadeiro

VvV

0

OR

0

FALSO

FvF

v

 

 

 

Estrutura Condicional – Composta   (Voltar ao Índice)                                       

 

Estrutura condicional composta com apenas um comando:

Estrutura condicional composta com mais de um comando:

 

Sintaxe:

  SE condição

  ENTÃO comando1

  SENÃO comando2

    

Notas: O comando1 só será executado se a condição for verdadeira, caso contrário, se a condição for falsa, será executado o comando2.

 

Sintaxe:

  SE condição

  ENTÃO INÍCIO

     comando1               

     comando2

     comando3

        FIM

  SENÃO INÍCIO

     comando4

     comando5      

        FIM 

 

SE = IF

ENTÃO = THEN

SENÃO = ELSE

INÍCIO = BEGIN

FIM = END

 

 

Exemplo com apenas uma instrução

Exemplo com mais de uma instrução:

 

A) Compila o seguinte programa e descreve, por palavras tuas o seu funcionamento  

Uses Crt;

 

   var X, Y : Integer;

 

   begin

     Writeln ('Digita dois Números:'); { Mostra no ecrã a mensagem}     Readln (X, Y); { Lê os dois números }

     If (X > Y) {Condição - SE X for maior que Y}

       Then Writeln ('X é Maior que Y, e seu valor é = ', X) {Entra no comando apenas se X for maior que Y - Repare que antes de ELSE não vai ";"}

       Else Writeln ('Y é maior ou igual a X, seu valor é = ',Y); {Entra no comando se Y for maior ou igual a X}

   end.

 

D) Compila o seguinte programa e descreve, por palavras tuas o seu funcionamento  

  

Uses Crt;

 

   var X, Y : Integer;

 

   begin

     Writeln ('Digita dois Números:'); { Mostra no ecrã a mensagem}

     Readln (X, Y); { Lê os dois números }

     If (X > Y) {Condição - SE X for maior que Y}

     Then Begin

            Writeln ('X é Maior que Y');

            Writeln ('O valor de X é =', X);  

          End       { Repara que não tem ponto e vírgula por que "End" está antes do "Else"}

     Else Begin

            Writeln ('Y é Maior ou Igual a X');

            Writeln ('O valor de Y é =', Y);

          End;

   end.        { Sempre no "End" do programa principal vai ponto final ".", e não ponto e virgula ";"}

 

 

B) Compila o seguinte programa e traduz o enunciado

 

In the following program the user will input his/her age (integer type). The program will check if

the user is able to apply for a driving license. If the user is of legal age (i.e. 18), the program will

encourage the user to apply. Otherwise, the program will calculate the number of years remaining

till the age of 18.

 

Program driving;

Var

age : char;

begin

writeln(‘when to apply for a driving license’);

write(‘Type your age (try to be honest please!) : ‘);

readln(age);

if age < 18

then write(‘CONGRATULATIONS...you can apply’)

else write(‘you have to wait ‘, 18 – age, ’years);

readln;

end.

E) Cria um algoritmo que verifique se um número introduzido pelo utilizador é maior ou menor que PI

Program Pzim ;

const PI=3.14;

var x : real;

 Begin

 writeln ('digite um numero');

 readln (x);

 if x< PI then

 writeln('x menor que PI')

 else

 writeln('x maoir que PI');

 End.

 

c) Compila o seguinte programa e escreve um enunciado para o programa

 

 

write('Introduza um numero real: ');

readln(A);

if (A>=0) then begin

writeln('Numero positivo ou nulo');

end

else begin

writeln('Numero negativo');

end;

F) Elabore um algoritmo que calcule a área de um quadrado e de um retângulo, juntamente com o resultado (área) informar o utilizador se a figura geométrica é um quadrado ou um retângulo.

Begin

 writeln('digite l1:');

 readln(l1);

  writeln('digite l2:');

 readln(l2);

  if L1=L2 then

    writeln ('a area é de um quadrado');

   else

  writeln ('a area e de um retangulo');

  End.

ENVIAR AO PROFESSOR (PROFCARLOS2006@gmail.com)

6- programas (A, B, C, D, E, F)

4- explicações (A, D, E, F)

1- enunciado (C)

1 –tradução (B)

 

(Voltar ao Índice)