Expressões Lógicas Comandos de Seleção



Documentos relacionados
LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos

ESTRUTURA CONDICIONAL

Programação WEB I Estruturas de controle e repetição

Introdução à Lógica de Programação (cont.)

1. Estrutura de seleção. Seleção: algumas etapas (passos) do algoritmo são executadas dependendo do resultado de uma condição

Informática II Ficha 5_resolução

Laboratório de Programação I

Introdução à Lógica de Programação

Programação: Estruturas de seleção

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Introdução a linguagem C Estruturas de decisão

BC0501 Linguagens de Programação

Noções sobre Objetos e Classes

1 Lógica de Programação

Técnicas de Programação I

Informática de Gestão 1º ano / 1º semestre Ano letivo: 2014/2015. Visual Basic VBA

EXERCÍCIOS. 2. Faça um algoritmo que receba dois números e ao final mostre a soma, subtração, multiplicação e a divisão dos números lidos.

Aula 3 Desvio Condicional

OPERADORES E ESTRUTURAS DE CONTROLE

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

3. Tipos de Dados, Constantes e Variáveis.

CAPITULO 5 COMANDO DE FLUXO IF

4 Criação de macros e introdução à linguagem VBA

Algoritmos em Javascript

DESENVOLVIMENTO DE SOFTWARE

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados)

Apostila de Fundamentos de Programação I. Prof.: André Luiz Montevecchi

ESTRUTURA DE UM PROGRAMA EM C++ Estrutura de um Programa em C++

Estrutura de Dados. Introdução a Ponteiros. Prof. Gerson Borges Estrutura de Dados I 1

Nesta aula serão apresentados alguns comandos de condição, repetição e gráficos.

7. Estrutura de Decisão

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

DESENVOLVIMENTO DE SOFTWARE

Apresentar os conceitos básicos e as estruturas de linguagem relacionadas à tomada de decisão ofertadas pela linguagem C, tais como:

Manipulando Strings no VBA (Replace, Mid e InStr)

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos

IFTO TÉCNICO EM INFORMÁTICA DESENVOLVIMENTO DE SISTEMAS AULA 01

Aula 02: C# - Estruturas de Decisão

ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES II PROFESSOR RAFAEL BARRETO DELPHI FORMULÁRIO COM ABAS E BUSCAS DE REGISTROS

Algoritmos e Programação

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

Compilado pela Prof a Sílvia Moraes Organizado por Stewart Unger

Programação Estruturada e Orientada a Objetos REVISÃO

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Revisão Aula Anterior Estruturas de Decisão (If e Switch)

Introdução a Algoritmos Parte 04

Microsoft Excel Macro V. Índice 16-) Formulários ) Gerando código para o Formulário... 49

Algoritmo. Prof. Anderson Almeida Ferreira. Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

Comandos de Manipulação

IFTO LÓGICA DE PROGRAMAÇÃO AULA 02

Sub AcessaWeb(url, x) ' recebe uma url para pesquisar e devolve uma planilha ' Solicita a criação da planilha x

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

2. OPERADORES ALGORITMOS, FLUXOGRAMAS E PROGRAMAS FUNÇÕES... 10

Algoritmos com VisuAlg

PROGRAMAÇÃO DE COMPUTADORES (Teoria)

JavaScript (ou JScript)

Manipulando Strings no VBA (Replace, Mid e InStr)

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

Programação SQL. Introdução

Exercícios de Fixação Pseudocódigo e Estruturas Básicas de Controle

Procalc v1.0. Versão Programador

Noções Várias em Visual Basic

INTRODUÇÃO À LINGUAGEM C++

O comando switch. c Professores de ALPRO I 04/2012. Faculdade de Informática PUCRS. ALPRO I (FACIN) O comando switch 04/ / 31

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

Edwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C / C++

Controle de Fluxo Comandos de decisão

ULA Sinais de Controle enviados pela UC

Representação de Algoritmos - Linguagens de Programação

JSP - ORIENTADO A OBJETOS

Algoritmos e Programação _ Departamento de Informática

A1;A7 é o mesmo que A1 e A7 A1:A7 é o mesmo que A1 até A7 (abrange A1, A2, A3, A4, A5, A6, A7).

Programação Funcional. Capítulo 13. Mônadas. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2013.

Controle de Fluxo Comandos de decisão

IES-300. Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br

Técnicas de Teste de Software

Algoritmos Computacionais ( Programas )

AULA 12 FUNÇÕES Disciplina: Algoritmos e POO Professora: Alba Lopes alba.lopes@ifrn.edu.br

INTRODUÇÃO OBJECT PASCAL/DELPHI

Aluísio Eustáquio da Silva

Sintaxe e Semântica. Fases da Compilação. programa fonte

Findo o processo de normalização, obtemos o conjunto de tabelas indicado na tabela 1.28.

ESTRUTURA DE DADOS PILHA

Noções básicas sobre macros no Access 97. Construção de algumas macros simples. Noções básicas sobre procedimentos VBA no Access 97

Expressões. Prof. Alberto Costa Neto Linguagens de Programação. Departamento de Computação Universidade Federal de Sergipe

Linguagem C: Estruturas de Controle. Prof. Leonardo Barreto Campos 1

Tarefa Orientada 10 Obter informação a partir de uma tabela

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Parte 5 LibreOffice Base

Lista de operadores de comparação - > Maior que - < Menor que - <= Menor ou igual a - >= Maior ou igual a - === Igual a -!

Capítulo 6. Operadores. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

ISCAP. Algoritmia. Pág. 1. Ana Paula Teixeira

1.2 Uma linguagem de programação muito simples

Variáveis e estruturas de controlo. Introdução à Programação André L. Santos

Laboratório de Programação I

Programação Básica em Arduino Aula 2

Lista de Exercícios. Vetores

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

Introdução aos cálculos de datas

Transcrição:

Expressões Lógicas e Comandos de Seleção Prof. de Algoritmos IA

Expressões Lógicas São expressões que resultam em valores lógicos : verdadeiro ou falso. Em VB: a constante True representa verdadeiro a constante False representa falso

Expressões Lógicas Para compor as expressões lógicas utilizam-se os operadores: relacionais: comparam dois valores. >, <, >=, <=, <>, = like (para comparação de strings) lógicos: combinam expressões lógicas. and or not (e) (ou) (não)

Expressões Lógicas Operadores relacionais: Exemplos: > maior que 3>2 d > a < menor que 5<8 ABC < B >= maior ou igual 3>=3 Ivo >= Ira <= menor ou igual 4<=6 A <= A <> diferente 4<>5 A <> a = igual 5=5 c = c

Expressões Lógicas Operadores lógicos: Considerando que A e B são duas expressões lógicas. Tabela Verdade: A B A and B A or B not A F F F F T F T F T T T F F T F T T T T F

Expressões Lógicas Operadores Lógicos: not A : inverte o valor lógico de A A and B : para resultar True exige que as expressões A e B sejam verdadeiras ao mesmo tempo. (basta que um operando seja falso para o resultado ser falso) A or B : para resultar False exige que as expressões A e B sejam falsas ao mesmo tempo. (basta que um operando seja verdadeiro para o resultado ser verdadeiro)

Expressões Lógicas Prioridade dos Operadores: + - ( ) funções ^ *, / \ mod & +, - <, <=, >, >=, =, <>, like not and or xor

Expressões Lógicas Supondo: Dim num, val as Integer Dim flag as Boolean num = 2 val = 3 flag = true Qual o resultado das expressões? a) num<val+1 and num<=val^2-7 b) num<val and not flag c) (num<1 or flag) and val<>num

Seleção / Decisão Permite criar alternativas para o fluxo de execução de um programa (tomada de decisão). VB prevê 2 tipos de comandos de decisão: If... Then... [...] Select Case...

Comando if A sintaxe do comando if é a seguinte: If condição Then comandos Obs: a condição é uma expressão lógica

Comando if Funcionamento: - avalia-se a condição: resulta True ou False; - se o resultado for True, executa(m)-se o(s) comando(s) - se o resultado for False, não faz nada. condição True Comandos False Obs: o comando após ao if é sempre executado.

Comando if Exemplo 1 acertar numero magico. Private Sub Dim valor as Integer Const magico = 10 valor = CInt(txtvalor.Text) If valor = magico Then MsgBox Acertou!! If valor <> magico Then MsgBox Errou!! End Sub busca valor do formulario

Comando if Exemplo 2 verificar se aprovado por media 7. Private Sub Dim nota1, nota2, media as Double nota1 = CDbl(txtn1.Text) busca valor do formulario nota2 = CDbl(txtn2.Text) busca valor do formulario media = (nota1 + nota2) / 2 If media >= 7 Then MsgBox Aprovado por media! If media < 7 Then MsgBox Em exame ou reprovado! End Sub

Comando if-else Outra forma de usar o If é com a cláusula. Esse tipo de construção permite a definição de ações alternativas. Sintaxe: If condição Then comandos1 comandos2

Comando if-else Funcionamento: - avalia-se a condição: resulta True ou False; - se o resultado for True, executa(m)-se o(s) comando(s)1; - se o resultado for False, executa(m)-se o(s) comando(s)2; Obs: - executa-se um o outro comando, nunca ambos; - o comando após ao if sempre é executado;

Comando if-else condição False Comandos2 True Comandos1

Comando if-else Exemplo 1 acertar numero magico. Private Sub Dim valor as Integer Const magico = 10 valor = CInt(txtvalor.Text) If valor = magico Then MsgBox Acertou!! MsgBox Errou!! End Sub busca valor do formulario

Comando if Exemplo 2 verificar se aprovado por media 7. Private Sub Dim nota1, nota2, media as Double nota1 = CDbl(txtn1.Text) busca valor do formulario nota2 = CDbl(txtn2.Text) busca valor do formulario media = (nota1 + nota2) / 2 If media >= 7 Then MsgBox Aprovado por media! MsgBox Em exame ou reprovado! End Sub

Exemplo 1: Faça um programa que leia a idade de um nadador e classifique-o em uma das seguintes categorias: Infantil : 5 a 10 anos Juvenil : 11 a 17 anos Adulto : maiores de 17 anos

1ª Solução: Private Sub Dim idade As Integer idade = CInt(txtid.Text) busca idade do formulario If idade>=5 and idade<=10 Then MsgBox Infantil If idade>=11 and idade<=17 Then MsgBox Juvenil If idade>17 Then MsgBox Adulto End Sub Funciona para qualquer entrada de dados?

2ª Solução: Private Sub Dim idade As Integer idade = CInt(txtid.Text) busca idade do formulario If idade<0 or idade>120 Then MsgBox Idade Invalida!!! If idade>=0 and idade<5 Then MsgBox Sem categoria!!! If idade>=5 and idade<=10 Then MsgBox Infantil If idade>=11 and idade<=17 Then MsgBox Juvenil If idade>17 and idade<=120then MsgBox Adulto End Sub

3ª Solução: está certa? Private Sub Dim idade As Integer idade = CInt(txtid.Text) busca idade do formulario If idade<0 or idade>120 Then MsgBox Idade Invalida!!! If idade>=0 and idade<5 Then MsgBox Sem categoria!!! If idade>=5 and idade<=10 Then MsgBox Infantil If idade>=11 and idade<=17 Then MsgBox Juvenil MsgBox Adulto End Sub

Comandos if-else encadeados If condição1 Then comandos1 If condição2 Then comandos2 If condição3 Then comando3

4ª Solução: Private Sub Dim idade As Integer idade = CInt(txtid.Text) busca idade do formulario If idade<0 or idade>120 Then MsgBox Idade Invalida!!! If idade<5 Then MsgBox Sem categoria!!! If idade<=10 Then MsgBox Infantil If idade<=17 Then MsgBox Juvenil MsgBox Adulto End Sub

Exemplo 2: Faça um programa que leia o sexo (m/f) e a idade de uma pessoa e informe se ela é adulta ou não conforme os critérios abaixo: Homem maior que 18 anos Mulher maior que 21 anos

1ª Solução: Private Sub Dim idade As Integer Dim sexo As String idade = CInt(txtid.Text) sexo = txtsexo.text busca idade do formulario busca sexo do formulario If sexo = M ou sexo = m Then If idade >= 18 Then MsgBox Homem adulto MsgBox Homem não adulto If idade >= 21 Then MsgBox Mulher adulta MsgBox Mulher não adulta End Sub

Comando Select Case O comando Select Case é uma alternativa para o encadeamento de comandos If Then. O uso de Select Case é muito comum em menus. Select Case expressão Case lista_valores1 comandos1 Case lista_valores2 comandos2... [Case comandos_else] End Select

Exemplo: Faça um programa que leia 3 valores reais e um inteiro (opção). Se valor digitado na opção for: 1, calcula a média aritmética dos 3 valores reais; 2, calcula a média ponderada (pesos: 4,3,3); 3, calcula a média harmônica.

1ª Solução: utilizando if Private Sub Dim n1, n2, n3, med As Double Dim op as Integer label1.caption \ndigite 1 p/ aritmetica, 2 p/ ponderada ou 3 p/ harmonica: op = CInt(txtop.Text) label2.caption Entre com 3 valores n1 = CInt(txtn1.Text) n2 = CInt(txtn2.Text) n3 = CInt(txtn3.Text) If op=1 Then med = (n1+n2+n3)/3) MsgBox Media Aritmetica = + CStr(med) If op=2 Then med = (4*n1 + 3*n2 + 3*n3)/(4+3+3); MsgBox Media Ponderada = + CStr(med) If op=3 Then If n1<>0 and n2<>0 and n3<>0 Then med = 3/(1/n1+1/n2+1/n3); MsgBox Media Harmonica = + CStr(med) MsgBox Erro. Divisao por zero! MsgBox Opcao invalida. End Sub

1ª Solução: utilizando select case Private Sub Dim n1, n2, n3 As Double Dim op as Integer label1.caption \ndigite 1 p/ aritmetica, 2 p/ ponderada ou 3 p/ harmonica: op = CInt(txtop.Text) label2.caption Entre com 3 valores n1 = CInt(txtn1.Text) n2 = CInt(txtn2.Text) n3 = CInt(txtn3.Text) Select Case op Case 1 med = (n1+n2+n3)/3) MsgBox Media Aritmetica = + CStr(med) Case 2 med = (4*n1 + 3*n2 + 3*n3)/(4+3+3); MsgBox Media Ponderada = + CStr(med) Case 3 If n1<>0 and n2<>0 and n3<>0 Then med = 3/(1/n1+1/n2+1/n3); MsgBox Media Harmonica = + CStr(med) MsgBox Erro. Divisao por zero! Case MsgBox Opcao invalida. End Select End Sub