7 Comandos e Estruturas de Controle

Documentos relacionados
CAPÍTULO 4 ESTRUTURAS DE CONTROLE

Linguagem de Programação. Tutorial 3 Os comandos if, else e else if

Introdução à Lógica de Programação Aula 2. Adaptação de Luis Otavio Alvares

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

Estruturas de Seleção Parte I Seleção Simples e Composta

CAPÍTULO IV. Estruturas Condicionais CAPÍTULO IV ESTRUTURAS CONDICIONAIS ESTRUTURA CONDICIONAL SIMPLES

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

UNIDADE 4 ESTRUTURAS DE CONTROLE

CAPÍTULO IV. Estruturas Condicionais CAPÍTULO IV ESTRUTURAS CONDICIONAIS ESTRUTURA CONDICIONAL SIMPLES

Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Exercício... Para começar... Resolução... Para começar... Para começar...

Estruturas de Seleção Seleção Simples e Composta (parte 1)

Aula 7: Estrutura de Decisão

ESTRUTURA CONDICIONAL E SELEÇÃO

Algoritmos - 3. Alexandre Diehl. Departamento de Física - UFPel

Estruturas de Decisão

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA. DIM0320 Algoritmos e Programação de Computadores

AULA 2: INTRODUÇÃO A PYTHON. Luís Feliphe Silva Costa

Programação Estruturada

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

Estrutura de Seleção

Aula 03 Introdução à Programação com a Linguagem Python

Lógica de Programação e Algoritmos

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA COMANDOS DE DESVIO

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

Tópicos abordados. Estruturas de Decisão. Simples Composta Encadeada

Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini

Resolva os exercícios utilizando a linguagem de programação C

Estruturas Condicionais. Tiago Alves de Oliveira

UNIDADE CURRICULAR DE LÓGICA DE PROGRAMAÇÃO DOCENTE: ANDRÉ LUIZ SILVA DE MORAES

Aula 6 Instruções de Seleção Cleverton Hentz

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

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

Engenharia Civil. Introdução à Programação

Introdução a programação Controle de Fluxo

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

- Aula 29, 30, 31 e 32 - Técnicas de programação.

Programação Procedimental

Oficina de Python Prof. Me. José Carlos Perini

Linguagem C. Programação Estruturada. Estruturas de Controle. Prof. Luis Nícolas de Amorim Trigo

LINGUAGEM C: COMANDOS DE REPETIÇÃO

IEC081 Introdução à Ciência dos Computadores Estruturas Condicionais em Linguagem C

Estruturas de Decisão

Linguagem C/C++ Estrutura Condicional. Prof: Rosemary Melo

CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS

Oficina de Python Prof. Me. José Carlos Perini

Sistema Operacional Unidade 11.2 Shell Script: estruturas condicionais. QI ESCOLAS E FACULDADES Curso Técnico em Informática

Estruturas de controle: Estrutura de DECISÃO

Estruturas de Controle de Fluxo Pseudocódigo/Exercício Construa o pseudocódigo de um algoritmo para obter o resultado da divisão de dois números

Introdução à Ciência da Computação SCC0120 Prof. Zhao Liang. Aula de Laboratório 1: Operadores, comandos básicos e comando IF 27/03/2012

Programação para Games I

CURSO BÁSICO DE PROGRAMAÇÃO AULA 3. Revisão Estrutura de Decisão Se Então

Professor Mauricio Lederer Algoritmos. Entrada e saída de dados

Algoritmo e Linguagem C++

Estrutura de decisão

Programação científica C++

Aula 5 -Algoritmos Estruturas de Controle (Estruturas de Seleção)

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

Universidade Federal de Uberlândia Faculdade de Computação. Expressões aritméticas, relacionais e lógicas Estruturas condicionais

Aula 03 Estruturas Condicionais. Prof. Filipe Wall Mutz

Algoritmos e Programação

Introdução à Programação

Estruturas de Seleção Parte II Seleção Encadeada

Lógica de Programação I

Aula 16 Estruturas de Controle. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Mini apostila de Python - Oficina de Vestibulandos. PET Computação - UFPR September 2016

Universidade Estadual do Sudoeste da Bahia Departamento de Estudos Básicos e Instrumentais Disciplina: Introdução à Ciência da Computação Prof.

Algoritmos e Programação

Estruturas de Seleção Seleção Encadeada

PSEUDO-CÓDIGO. Nickerson Fonseca Ferreira

Prof. Jorge Cavalcanti

CURSO BÁSICO DE PROGRAMAÇÃO AULA 3. Revisão Estrutura de Decisão Se Então

Algoritmos - 5. Alexandre Diehl. Departamento de Física - UFPel

Estruturas de Controle

Aula 4 Introdução ao C

Operadores e Estruturas de Decisão. Vanessa Braganholo

JavaScript (ou JScript)

Prof. Jorge Cavalcanti

Comandos de desvio de fluxo. Expressões lógicas.

EXERCÍCIOS: Estrutura Sequencial, IF (SE), ELSE (Senão)

Estruturas de Seleção Seleção Simples e Composta (parte 2)

Algoritmos Estrutura Condicional

Transcrição:

Lógica para a Programação - 1º semestre AULA 03 Prof. André Moraes 7 Comandos e Estruturas de Controle Na criação de algoritmos é comum utilizar conceitos de bloco lógico, entrada e saída de dados, constantes, atribuições, expressões lógicas, aritméticas, bem como comandos que traduzam estes conceitos de forma a representar o conjunto de ações. Para que este conjunto de ações se torne viável, deve existir uma perfeita relação lógica intrínseca ao modo pela qual essas ações são executadas, ao modo pelo qual é regido o fluxo de execução do algoritmo.através das estruturas básicas de controle do fluxo de execução, sequenciação, seleção, repetição e da combinação delas, é possível criar algoritmos para solucionar diversos problemas. 7.1 ESTRUTURA SEQUENCIAL Corresponde ao fato de eu o conjunto de ações primitivas será executado em uma sequência linear de cima para baixo e da esquerda para a direita, isto é, na mesma ordem em que foram escritas. Normalmente é utilizado o ; (ponto e vírgula) para convencionar que após encontrar esse item no código a próxima linha deverá ser executada no algoritmo. 7.2 ESTRUTURAS DE SELEÇÃO Uma estrutura de seleção permite que seja escolhido um grupo de ações (bloco) a ser executado quando determinadas condições representadas por expressões lógicas ou relacionais, são ou não satisfeitas. Na condição das estruturas condicionais são utilizados os operadores relacionais (<, >, =, < =, > =, < >) para as comparações, observando suas características particulares. Em Python, os comandos IF, else, e elif (else IF) criam as condições. Em termos simples, a instrução IF do Python seleciona ações para executar. Ela é a principal ferramenta de linguagem e representa grande parte da lógica que um programa em Python possui. Na teoria, temos 3 tipos de seleção: seleção simples, seleção composta e seleção encadeada. A seleção simples é quando temos uma condição simples antes de executar uma ação: A seleção composta é quando temos situações em que duas alternativas dependem de uma mesma condição, uma onde a condição pode ser verdadeira e outra onde a condição pode ser falsa. A seleção encadeada é quando necessitamos agrupar várias seleções formando uma série de testes. Normalmente utilizada quando existe um grande conjunto de possibilidades ou combinações de situações. Pág 19

7.2.1 EXEMPLO 1 SELEÇÃO SIMPLES Seja o seguinte programa: Salve como temperatura.py Visualização do resultado: 7.2.2 EXEMPLO 2 SELEÇÃO COMPOSTA Notas de alunos: Criar um programa que capture 3 notas do semestre e calcule a média e a situação final do aluno. Para a média abaixo de 7 será reprovado e do contrário aprovado. Seja o código abaixo: Salve o arquivo com o nome notas.py Visualização do resultado: Este algoritmo é bastante simples, pois realiza diretamente o cálculo das médias do aluno e implementa um If para podermos decidir sobre qual será o resultado final de suas notas. Pág 20

Quando precisamos de mais testes para incorporar mais condições, podemos utilizar o mesmo comando IF encadeado para podermos abranger mais situações. Vejamos no exemplo: 7.2.3 EXEMPLO 3 SELEÇÃO ENCADEADA NOTAS DE ALUNOS: Será incluída agora a condição extra de quando o aluno pode estar em exame. Podemos implementar isto com o IF encadeado: Salve o arquivo como notas_encadeadas.py Visualização do resultado: 7.3 OPERADORES LÓGICOS Juntamente com o uso de estruturas de seleção, podemos ainda utilizar os operadores lógicos para podermos ampliar a avaliação das condições que são testadas. Por exemplo, se quiséssemos avaliar duas condições ao mesmo tempo no comando If e imprimir algo na tela do usuário não teríamos como fazer isto de forma prática sem os operadores lógicos. Normalmente, os operadores lógicos mais utilizados são: And operador que une duas condições e retorna verdadeiro quando as duas forem verdadeiras Or operador que une duas condições e retorna verdadeiro quando pelo menos uma condição for verdadeira Not - inverte o resultado de uma expressão lógica Pág 21

Podemos combinar estes operadores em um programa com as estruturas de seleção que vimos anteriormente. O resultado serão programas capazes de avaliar várias condições simultaneamente. 7.3.1 EXEMPLO 4 UTILIZANDO OPERADORES LÓGICOS COM ESTRUTURAS DE SELEÇÃO Salve o arquivo como medias_operadores.py Pág 22

7.3.2 EXEMPLO 5 DETERMINANDO O TRIÂNGULO Dados três valores A, B e C, verificar se eles podem ser os comprimentos dos lados de uma triângulo e, se forem, verificar se compõem um triângulo eqüilátero, isósceles ou escaleno. Informar se não compuserem nenhum triângulo. Dados de entrada: três lados de um suposto triângulo (A, B, C). Dados de saída: enviar as mensagens de: não compõem um triângulo, triângulo eqüilátero, triângulo isósceles, triângulo escaleno. INFORMAÇÕES: O que é um triângulo? Figura geométrica de três lados, em que cada um é menor do que a soma dos outros dois. O que é um triângulo eqüilátero? Um triângulo com três lados iguais. O que é um triângulo isósceles? Um triângulo com dois lados iguais. O que é um triângulo escaleno? Um triângulo com todos os lados diferentes. MONTAGEM LÓGICA EM EXPRESSÕES: É triângulo: (A < B + C) e (B < A + C) e (C < A + B). É eqüilátero: (A = B) e (B = C) É isósceles: (A = B) ou (A = C) ou (B = C) É escaleno: (A <> B) e (B <> C) Seja o exemplo: Pág 23

Testando o algoritmo: OBSERVAÇÕES: Neste exemplo fizemos uso de operadores lógicos and, or para poder adaptar as condições que foram descritas Este exemplo ilustra mais um tipo de algoritmo utilizando a seleção encadeada, onde precisamos de vários testes aninhados um em seguida do outro. Note que este algoritmo é complexo pelo ponto de vista de elaboração, pois não seria muito fácil elaborar todo o pensamento lógico para os testes do tipo de triângulo. Isto é desenvolvido pelo programador ao longo do tempo. 7.3.3 EXEMPLO 6 SE SENÃO SE Vamos supor que em determinado algoritmo uma variável x possa assumir apenas quatro valores, sendo eles v1, v2, v3, v4, e que exista um comando diferente que será executado para cada valor armazenado em X. Dados 4 valores, elaborar um algoritmo para ler a altura de uma pessoa e retornar as mensagens referentes à sua altura e de acordo com a tabela abaixo: Altura Classificação <=1.50 Muito baixo <= 1.65 Baixo <=1.79 Normal >1.79 Alto Salve o arquivo como alturas.py Pág 24

Visualizando o resultado: OBSERVAÇÕES: Aqui novamente fizemos pequenos testes encadeados um após o outro. Note que os testes e as mensagens são totalmente personalizáveis, você pode criar qualquer mensagem que desejar passar ao usuário. Dependendo da altura fornecida teremos resultados diferentes. 7.4 EXERCÍCIOS: 1) Altere o algoritmo utilizado no exemplo 4 (Média de alunos) para que o programa peça primeiro o número de faltas. Caso o número de faltas for maior que o permitido (18) o programa deverá emitir uma mensagem de alerta informando que o mesmo está reprovado por faltas. Caso contrário o programa deverá seguir seu curso solicitando as notas do aluno e realizando os cálculos da média. 2) Tendo como dados de entra a altura e o sexo de uma pessoa, construa um algoritmo que calcule o seu peso ideal, utilizando as seguintes fórmulas: a. Para homens (72.7 * h) 58 b. Para mulheres (62.1 * h) 44.7 3) Construa um algoritmo que leia a o ano de nascimento de uma pessoa, calcule e mostre sua idade e, também, verifique e mostre se ele já tem idade para votar (16 anos ou mais) e para conseguir a Carteira de Habilitação (18 anos ou mais) Pág 25