Estrutura Condicional em Pascal

Documentos relacionados
Estrutura de Decisão - Case

Capítulo III : A Linguagem Pascal Estruturas de Controlo

Elementos básicos das linguagens de programação

I1, I2 e In são instruções simples ou estruturadas da linguagem Pascal.

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática

Exercícios sobre o Capítulo III

VARIÁVEIS NUMÉRICAS : integer - Números inteiros entre e real - Números reais de 11 algarismos significativos.

Linguagem Pascal. Prof. Sérgio Rodrigues. É a descrição, de forma lógica, dos passos a serem executados no cumprimento de determinada tarefa;

Computação Eletrônica

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho

Capítulo V : A Linguagem Pascal Um Tipo Estruturado de Dados: o array 18. Para limite de n até 2 (* passagens de 1 até (n-1) *)

Linguagem Pascal. Prof. Antonio Almeida de Barros Junior

Introdução à programação em PASCAL. Aula de 22/10/2001. Nota: Conjunto de slides baseados nas transparências utilizadas em PEDA em anos anteriores

APÊNDICE A - FUNDAMENTOS DA LINGUAGEM DE PROGRAMAÇÃO PASCAL.

Linguagem de programação: Pascal

Exercícios. Resposta: a) var valor: real; i: integer. b)

Linguagem Pascal. Definição e Tipos de Dados. Professora Lara Popov Zambiasi Bazzi Oberderder. Linguagem PASCAL 1

Linguagem Computacional. Estruturas de Controle: Estruturas de Repetição. Prof. Dr. Adriano Cansian Prof. Dr. Leandro Alves Neves

Procedimento. Função. Selecção Condicional - a instrução if-then-else. expressão if lógica then instrução else instrução

Métodos de Programação I Ana Maria de Almeida

Introdução à Ciência da Computação

Teoria da Computação e Algoritmos. Introdução à Linguagem Pascal. ALGORITMO <Nome do algoritmo>; <definições>; INÍCIO <Comandos>; FIM.

Disciplina Programação Prof. Esp. Armando Hage. Programação em Turbo Pascal

Notas de Aula de Algoritmos e Programação de Computadores

Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas

LISTA DE EXERCÍCIOS: 1ª Unidade

tipoveiculo = (bicicleta, motociclo, motorizada, automovel, autocomreb, camioneta, autocarro, camiao, reboque); veiculo : tipoveiculo;

ESTRUTURAS DE DECISÃO II: DECISÕES ANINHADAS E ESTRUTURA CASE-OF

Sintaxe do Pascal Simplificado Estendido de 12 novas construções em Notação EBNF (BNF estendida)

2.2.5 EXPRESSÕES - Regras para o cálculo de valores

Algoritmos e Técnicas - Estruturas de Controle de Fluxo Laboratório

Linguagens de Programação:

LISTA 14 Gabarito. 1) Preparar um algoritmo para calcular a soma de 100 termos da seguinte série:

Linguagem de Programação Pascal - Introdução

Lógica de Programação I. Gilson de Souza Carvalho

O AMBIENTE DE PROGRAMAÇÃO VISUAL -PLANO DE ENSINO. Prof. Angelo Augusto Frozza, M.Sc.

Pascal. -Cabeçalho do programa. - label - const - type - var - procedure - function. - integer - real - byte - boolean - char - string

ENQUANTO condição FAÇA comando 1. ENQUANTO condição FAÇA INÍCIO comando 1; comando 2 ; comando 3 FIM ENQUANTO X < Y FAÇA INÍCIO FIM

Descrição da Linguagem Pascal Jr.

ALGORITMOS VARIÁVEIS E OPERADORES. Prof. Angelo Augusto Frozza, M.Sc.

Programação de Computadores II

Sequencial Estrutura de controlo mais simples. As instruções são executadas sequencialmente.

INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO MATEMÁTICA DISCRETA I REDAÇÃO

FERRAMENTAS BÁSICAS DA PROGRAMAÇÃO

1) a) O primeiro numero eh maior b) O primeiro numero eh maior c) Os números são iguais. a)true b)false c)false d)true e)true

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 10. Algoritmos e Programação. Enquanto (Teste no início) Repeat (Teste no final)

Introdução à Programação. Expressões Booleanas e Comandos Condicionais

Resumo 2 - Mapeamento Portugol-Pascal

Tutorial de Turbo Pascal

Programação Introdução

Introdução à Programação. Uma Abordagem Funcional

Algoritmos. Prof. Jonatas Bastos Site:

Linguagens de Programação Conceitos e Técnicas. Amarrações

Organização de programas em Pascal

Linguagem C++ Estruturas de controle Parte II Estruturas de repetição

Como construir um compilador utilizando ferramentas Java

Estruturas de Repetição

Capítulo IV : A Linguagem Pascal Ficheiros de Texto

Programação Estruturada

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: Operadores relacionais e lógicos estruturas condicionais If...

Introdução Operadores Relacionais Lógicos Comando If Comando If...else Comando swich()...case...break Operador condicional ternário

Variáveis primitivas e Controle de fluxo

Programação de Computadores I. Professor Ilaim Costa Junior

Programação Orientada a Objetos

Estrutura de decisão

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

Transcrição:

Linguagem de Programação 1 Estrutura Condicional em Pascal Existem situações em que alguns comandos só devem ser executados se alguma condição for verificada. A verificação de que uma condição é satisfeita e, a partir daí, a decisão em relação à execução ou não de uma determinada sequência de comandos é chamada de estrutura de seleção, estrutura de decisão ou comando de seleção. Estrutura condicional simples comando; O comando só será executado se a condição for verdadeira. Uma condição é uma comparação que possui dois valores possíveis: verdadeiro ou falso. comando3; O comandos 1, 2 e 3 só serão executados se a condição for verdadeira. Exemplo 1: programa para determinar o maior de dois números dados. PROGRAM EXEMPLO1; A, B, MAIOR : INTEGER; WRITE('Digite dois numeros: '); READLN(A, B); MAIOR := A; IF (B > A) MAIOR:=B; WRITELN('O maior dos numeros ',A,' e ',B,' e ',MAIOR); Exemplo 2: programa para ordenar os conteúdos de duas variáveis. PROGRAM EXEMPLO2; X, Y, AUX : INTEGER; WRITE('Digite dois numeros: '); READLN(X,Y); WRITELN('Numeros digitados: x = ',X,' y = ',Y); IF X > Y X := Y; Y := AUX; WRITELN('Numeros ordenados: x = ',X,' y = ',Y);

2 Estrutura Condicional Estrutura condicional composta comando1 Se a condição for verdadeira, será executado o caso contrário, se a condição for false, será executado o comando2. END comando3; Se a condição for verdadeira, o comando1 e o comando2 serão executados; caso contrário, se a condição for falsa, o comando3 e o comando4 serão executados. Antes do comando não existe ponto-e-vírgula. Exemplo3: programa para verificar a paridade de um número. PROGRAM EXEMPLO3; NUM : INTEGER; WRITE('Digite um numero: '); READLN(NUM); IF ODD(NUM) = TRUE WRITELN(NUM,' e impar') WRITELN(NUM,' e par'); Se queremos determinar a paridade um número podemos determinar o valor de ODD(numero). Se este valor for true, o número é impar; caso contrário, se for false, o número dado é par. O valor de ODD(numero) é um valor do tipo boolean (true ou false). Exemplo4: programa para ordenar três números dados. PROGRAM EXEMPLO4; X, Y, Z, AUX : INTEGER; WRITE('Digite tres numeros: '); READLN(X,Y,Z); WRITELN('Numeros digitados: x = ',X,', y = ',Y,' e z = ',Z); IF (X > Y) OR (X > Z) {X næo o menor} IF (Z > Y) {Y o menor} {permuta de x e de y} X := Y; Y := AUX; END {Z o menor} {permuta de x e de z}

Linguagem de Programação 3 X := Z; Z := AUX; IF (Y > Z) {permuta de y e de z} AUX := Y; Y := Z; Z := AUX; WRITELN('Numeros ordenados: x = ',X,', y = ',Y,' e z = ',Z); Foi escrita no programa algumas frases explicativas das ações pretendidas. Estas frases são chamadas comentários e devem ser escritas entre pares de caracteres chave, { e }. O compilador desconsidera tudo o que vem entre os dois caracteres. Isso permite ao programador registrar no próprio programa os comentários que ele achar conveniente. A prática de se colocar comentários nos programas é muito importante e facilita sua compreensão. Estrutura CASE Em alguns problemas existem comandos mutuamente exclusivos, isto é, se um comando for executado os demais não serão. Quando este for o caso, um comando seletivo é o mais indicado. CASE seletor OF lista de alvos1: lista de alvos2: alvo3: comando3; alvo4: comando5; Se o seletor atingir a lista de alvos1, o comando1 será executado; se o seletor atingir a lista de alvos2, o comando2 será executado; se o seletor atingir o alvo3, o comando3 será executado ou se o seletor atingir o alvo4 então o comando4 e o comando5 serão executados. Se nenhum alvo for atingido, nada será executado. CASE seletor OF lista de alvos1: lista de alvos2: comando3; Se o seletor atingir a lista de alvos1, o comando 1 e o comando2 serão executados; se o seletor atingir a lista de alvos2, o comando 3 será executado. Se nenhum alvo for atingido, será executado o comando4.

4 Estrutura Condicional A restrição da estrutura CASE é que o seletor só pode ser uma variável do tipo CHAR, INTEGER ou BOOLEAN. Exemplo5: programa que determina o número de dias de um mês dado. PROGRAM EXEMPLO5; MES, ANO, NUMDIAS : INTEGER; WRITE('Digite o mes: '); READLN(MES); CASE MES OF 4, 6, 9, 11 : NUMDIAS := 30; 2 : WRITE('Digite o ano: '); READLN(ANO); IF((ANO MOD 4 = 0) AND (ANO MOD 100 <> 0)) OR (ANO MOD 400 <> 0) NUMDIAS := 29 NUMDIAS := 28; NUMDIAS:= 31; WRITELN('O mes ',MES,' tem ',NUMDIAS,' dias'); Exemplo6: programa que determina o dia da semana de uma dada data, tomando como base o ano de 1600 com o dia primeiro em um sábado. PROGRAM EXEMPLO6; DIA, MES, ANO, DIASANO, DIAS31, ANOBISS : INTEGER; ANOS, NUMDIAS : LONGINT; BISS : BOOLEAN; WRITE('DIGITE DIA, MES E ANO '); READLN(DIA,MES,ANO); BISS:=TRUE; {verifica se o ano e bissexto} IF ((ANO MOD 4 <>0) OR ((ANO MOD 100 = 0) AND (ANO MOD 400 <> 0))) BISS := FALSE; ANOS := ANO - 1600; {numero de meses com 31 dias at o mes dado} IF (MES < 9) DIAS31 := MES DIV 2 DIAS31 := (MES+1) DIV 2; {numero de dias do ano dado, considerando fevereiro como tendo 30 dias} DIASANO := 30*(MES-1) + DIA + DIAS31; {retifica o numero de dias de fevereiro} IF (MES > 2)

Linguagem de Programação 5 IF BISS DIASANO := DIASANO - 1 DIASANO := DIASANO - 2; {numero de anos bissextos entre o ano dado (exclusive) e 1600} IF BISS ANOBISS := (ANO DIV 4-400) - (ANO DIV 100-16) + (ANO DIV 400-4) ANOBISS := (ANO DIV 4-400) - (ANO DIV 100-16) + (ANO DIV 400-4) + 1; {numero de dias entre a data e 01/01/1600} NUMDIAS := ANOS*365 + DIASANO + ANOBISS; {dia da semana} WRITE('O DIA ',DIA,'/',MES,'/',ANO,' CAIU(CAIRA) NUM(A) '); CASE NUMDIAS MOD 7 OF 1 : WRITELN('SABADO'); 2 : WRITELN('DOMINGO'); 3 : WRITELN('SEGUNDA'); 4 : WRITELN('TERCA'); 5 : WRITELN('QUARTA'); 6 : WRITELN('QUINTA'); 0 : WRITELN('SEXTA'); Para se calcular o número de dias entre uma data dada e 01/01/1600 basta multiplicar o número de anos por 365, acrescentar o quantidade de anos bissextos e o número de dias ocorridos no ano corrente.