Estruturas de Dados Módulo 3 – Controle de Fluxo

Slides:



Advertisements
Apresentações semelhantes
INTRODUÇÃO A COMPUTAÇÃO ENG. CIVIL
Advertisements

Programação de Computadores
Estruturas de Controle
Programação em Java Prof. Maurício Braga
Estruturas de Repetição
Linguagem C Marco Reis.
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INSTRUÇÕES DE CONTROLE – PARTE I Prof. Thiago Pereira Rique
Casos típicos para o Enquanto-Faça
Programação de Computadores - 2
Introdução à Computação - Jorge Macêdo
Estruturas de repetição
Introdução à Programação
Algoritmos com seleção
Introdução a Programação
Linguagem C Estruturas de Controle de Fluxos
Linguagem C LPG-I – Estruturas de Repetição Prof. Flavio Marcello
Estrutura de Repetição
LINGUAGEM C Centro Federal de Educação Tecnológica da Paraíba Coordenação de Informática Professor: Lafayette B. Melo.
Laboratório de Programação de Computadores II Aula 1 2S/2009.
Lógica de Programação Módulo II
Linguagem C Estruturas de Seleção.
Estruturas de Decisão Permitir testes para decidir acções alternativas: if if - else switch (?:) Operador Condicional MF.
Estrutura de decisão e repetição em JAVA
O Portal do Estudante de Computação
Aula prática 4 Laços Monitoria de Introdução à Programação
Introdução à Programação Estruturas de Repetição
Linguagem de Programação II Parte IV
Linguagem de Programação I Parte II
Linguagem de Programação I Parte III
Material Didático Proposto
FTIN Formação Técnica em Informática
Universidade Federal de Alagoas – UFAL Centro de Tecnologia – CTEC
© 2003 Introdução à programaçãoComputadores e programação I Linguagens de programação Introdução ao C (continuação)
PROGRAMAÇÃO I UNIDADE 4.
Aula 6 - Estruturas de Controle
Algoritmo e Programação
Programação e Sistemas de Informação
Linguagem de Programação JAVA
Algoritmos e Estruturas de Dados
PROGRAMAÇÃO ou LINGUAGEM C?
Algoritmos e Estrutura de Dados I
Introdução à Linguagem C
Aula prática 2 Operadores e Expressões Comandos de Decisão Comentários
Algoritmos - exercícios
Algoritmos Comandos de repetição.
Wellington Felix.  Criada por Brian Kernighan e Denis Ritchie, na década de 1970, para uso em um computador DEC PDP-11 em Unix  C++ é uma extensão da.
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo III Comandos de Controle.
Aula Prática 2 Monitoria IP/CC (~if669).
Fundamentos de linguagens de programação
Introdução a Programação
Curso Técnico em Informática Professor Igor Vale.
Profa. Maria Augusta Constante Puget
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS Tecnologia em Redes de Computadores Algoritmos e linguagens de programação 1 (aula 08) Prof. Alessandro Bernardo.
Profa. Maria Augusta Constante Puget
Linguagens de Programação
Comandos de Repetição (While, Do..While e For)
Programação para Web I AULA 4 ESTRUTURAS DE CONTROLE.
Linguagem de Programação 11 Estruturas de Decisão e Repetição. Prof. Luiz José Hoffmann Filho
Laço ou loop e repetição
INTRODUÇÃO A COMPUTAÇÃO ENG. CIVIL Professora: Fabíola Gonçalves. UFU Universidade Federal de Uberlândia.
1 Estruturas de Controle Algoritmos Algoritmos –Série de ações em uma ordem específica As ações executadas Ordem na qual as ações são executadas.
Visual C# (parte 2) Prof. Igor Conrado Alves de Lima – Operadores, estruturas de decisão, vetores (arrays), e estruturas de.
ALGORITMOS Profº Antonio Carlos Marcelino de Paula 1.
Fundamentos de Programação 1 Aula N. 02 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Laços de Repetição em C”
1Unidade 04 – Estruturas de Repetição Algoritmos e Linguagens de Programação Estruturas de Repetição Prof.: Guilherme Baião S. Silva
1 CCO 016 FUNDAMENTOS DE PROGRAMAÇÃO Universidade Federal de Itajubá Prof. Dr. Edison Oliveira de Jesus.
1 Estruturas Condicionais Aula – Tópico 3 Algoritmos e Estruturas de Dados I (DCC/003)
Ambientação com a Sintaxe de Java: parte 2 Prof. Gustavo Wagner Slides Originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB  Centro de.
IF E ITERAÇÃO WHILE Dilvan Moreira (baseado no livro Big Java e T. Munzner)
Transcrição da apresentação:

Estruturas de Dados Módulo 3 – Controle de Fluxo Marco A. Casanova - PUC-Rio e Denise Guliato- UFU

Tópicos Seleção – Tomada de decisão Repetição

Seleção – Tomada de Decisão A seleção permite escolher entre duas ou mais alternativas: Isto nos permite tomar uma decisão: - two-way selection; - multiway selection

Two-way selection False (zero) True (!zero) condição de decisão ação para false ação para true

Tomada de Decisão: a two-way selection

Tomada de Decisão: a two way selection

Tomada de Decisão: a two way decision Expressão Condicional

Tomada de Decisão: a two-way selection Exercício: Escreva uma programa que imprima os seguintes dizeres, de acordo com a temperatura lida como entrada. Se temperatura for maior ou igual que 300 C, então ‘bom para ir ao clube’ Se temperatura menor que 300 C, então ‘bom para estudar’

Tomada de Decisão: a two-way selection #include <stdio.h> main() { int temp; printf(“entre com a temperatura: “); scanf(“%d”, &temp); if ( temp >= 30) printf(“ \n Bom para ir ao clube”); else printf(“\n Bom para estudar”); }

Tomada de Decisão: a multiway selection escolhe entre várias alternativas: Expressão multiway Valor 4 Valor 1 Valor 2 Valor 3 ação valor 4 ação valor 1 ação valor 2 ação valor 3

Tomada de Decisão: a multiway selection O comando switch funciona apenas quando a expressão nas alternativas de seleção (label case) são constantes do tipo inteiro ou caractere.

Tomada de Decisão: a multiway selection

Exercício Escreva um programa que leia uma expressão aritmética simples e imprime o resultado da sua avaliação. Operadores: +, - , *, / Domínio dos operandos: números reais

Exercício Escreva um programa que imprima o conceito de um aluno, dada a sua media final (números inteiros no intervalo 0 – 100). Para escrever o programa, analise score = media/10: Conceito A: score = 9 ou 10; (media >= 90) Conceito B: score = 8; (80 <= media < 70) Conceito C: score = 7; (70 <= media < 60) Conceito D: score = 6; (60 <= media < 70) Conceito F: score = 5, 4, 3, 2, 1, 0. (media < 60)

Tomada de Decisão: a multiway selection Comando “else-if” - usado quando se quer tomar uma decisão com base em múltiplas alternativas cujos valores não são constantes inteiras ou caracteres. If (expr1) {bloco de comandos 1} else if (expr2) {bloco de comandos 2} else {bloco de comandos 3}

Tomada de Decisão: a multiway selection Exercício: Reescreva o programa para imprimir o conceito de um aluno, considerando que agora a media geral é um numero real. Conceito A: media >= 90; Conceito B: media >= 80; Conceito C: media >=70; Conceito D: media >= 6; Conceito F: media nos demais casos.

Exercícios Escreva um programa que implemente a calculadora usando o comando if-else. Escreva um programa, que dados 3 números inteiros, imprima o menor valor; Escreva um programa que dado um numero entre 0 e 6, imprima o correspondente dia da semana. Assuma que o primeiro dia da semana (0) é domingo.

Repetição O real poder dos computadores está na sua habilidade para repetir uma operação ou uma serie de operações muitas vezes. Este repetição chamada laços (loopings) é um dos conceitos básicos da programação estruturada.

Conceito de um laço Neste exemplo o laço nunca para ( loop infinito) uma ação ou um conjunto de ações Neste exemplo o laço nunca para ( loop infinito) Queremos um laço que termine quando o trabalho é feito condição que controla o laço.

Laços pré-teste e pós-teste No laço pré-teste, a condição é verificada antes do inicio do laço e a cada iteração Se a condição é verdadeira o código é executado, Se a condição é falsa, o laço termina.

Laços pré-teste e pós-teste No laço pós-teste as ações são executadas pelo menos uma vez, então a condição que controla o laço é avaliada. Se a condição é, o laço é repetido, Se condição é falsa, o laço termina.

Laços pré-teste e pós-teste Exemplo: Suponha que você queira fazer exercícios de levantamento de peso. Você avaliação as suas condições com pré-teste ou com pós-teste. Levante peso false Energia ? true Energia? Levante peso true false (a) pré-teste (b) pós-teste

Laços pré-teste e pós-teste No pré-teste, as ações podem ser executadas 0, 1 ou mais vezes; No pós-teste, as ações podem ser executadas uma ou mais vezes.

Laços pré-teste e pós-teste Inicialização: feita antes da primeira execução do corpo do laço; Atualização: modifica a condição de controle do laço, movendo de true para false.

Laços pré-teste e pós-teste Os conceitos de inicialização e atualização podem ser aplicados ao problema de levantamento de peso

Laços pré-teste e pós-teste Os laços podem ser controlados por evento:

Laços pré-teste e pós-teste Os laços podem ser controlados por contador:

Repetição: while While é um laço pré-teste. Usa uma expressão para controlar o laço.

Repetições

Exercício usando while 1) Escreva um programa que calcule o fatorial de um numero inteiro não negativo usando while.

Solução exercício 2

Repetição : for (pré-teste)

Calculo do fatorial usando for

Calculo do fatorial usando for

Repetição : do-while (pós-teste)

Calculo do fatorial usando do-while

Exercicio: O que faz este programa???

Comando continue

O comando continue

Exercícios Escreva uma programa que calcule a media N números reais lidos pelo teclado. O valor de N é dado pelo usuario. Imprima os números lidos e a média calculada: 2) Modifique o exercicio anterior de tal forma a não fornecer previamente o numero de elementos a serem lidos.