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

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

Prof. Jorge Cavalcanti

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

Algoritmos I Aula 10 Estrutura de controle: repetição

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

Linguagem C ESTRUTURA DE CONTROLE

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Início Enquanto - GABARITO Professor: Danilo Giacobo

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição - GABARITO Repetição com Variável de Controle - Para Professor: Danilo Giacobo

Desenvolvimento de Algoritmos. Slides elaborados pela Prof(a). Simone do Rocio Senger de Souza ICMC/USP

Programação II. Victor Amorim dos Santos

Prof. Paulo Villa Aula 1

Aula 4 Estruturas Condicionais

Aula 1: Desenvolvimento de Algoritmos

Lógica e Linguagem de Programação Aula 03 - Estruturas de controle Exercícios de Fixação 2 - RESPOSTAS Professor: Danilo Giacobo

Estruturas de Controle de Fluxo

Microcontroladores. Programação: fluxogramas, pseudocódigos e lógica. Prof. Daniel

AULA 10 VETORES. Disciplina: Algoritmos Professora: Alba Lopes.

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA DISCUSSÃO DOS EXERCÍCIOS E EXERCÍCIOS EXTRAS

Algoritmos. Prof. Jonatas Bastos Site:

CURSO BÁSICO DE PROGRAMAÇÃO AULA 5. Revisão Laços de Repetição

Fundamentos de Programação 1

Sistemas Operacionais e Introdução à Programação. Introdução à Lógica de Programação: estruturas de repetição

Universidade Federal de Uberlândia Faculdade de Computação. Estruturas de repetição

Exercícios de Fixação Conteúdo das aulas 03 a 06

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

Estruturas de Controle de Fluxo

Aula 4 Oficina de Programação Algoritmos - Parte 3. Profa. Elaine Faria UFU

Estruturas Condicionais. Tiago Alves de Oliveira

Lista de Exercícios Estrutura de Repetição

Lista de Exercícios 06 Modularização (Procedimentos e Funções)

Algoritmos e Programação

Lógica de Programação

ESTRUTURAS DE REPETIÇÃO - PARTE 2

Treinamento Olimpíada Brasileira de Informática

Introdução a Computação

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

Estrutura Condicional

Questão 1: Questão 2:

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

BCC201 Introdução à Programação ( ) Prof. Reinaldo Silva Fortes. Prática 05 Modularização

foi teoricamente impossível trabalhar essa semana.

COMANDOS DE REPETIÇÃO (ENQUANTO, REPITA E PARA)

Para começar... Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Para começar... Comando REPITA (repeat) Comando REPITA (repeat)

Programação II. Victor Amorim dos Santos

Desenho de algoritmos

Lista (01) de Exercícios Ref. Aulas: Prof. Leandro

Fundamentos da programação de computadores.

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

Universidade Federal de Mato Grosso do Sul. Lista de Exercícios 2

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA PRÉ AULA 31/08/2015

ALGORITMOS AULA 2. Profª Amanda Gondim

algoritmo "exercício 22 resposta incorreta" var A, i: inteiro eh_primo: logico inicio repita escreva ("Entre com um valor inteiro positivo: ") leia

Estruturas de repetição

Programação em C. Victor Amorim dos Santos

Introdução à Pseudo-código PROGRAMAÇÃO I (COM06842) LÓGICA E TÉCNICA DE PROGRAMAÇÃO (COM06039)

A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado..

Aula 11: Laços e exercícios

INFORMÁTICA APLICADA AULA 06 ALGORITMOS

UNIVERSIDADE ESTADUAL VALE DO ACARAÚ EXERCÍCIOS RESOLVIDOS Estruturas de Repetição

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 29 de agosto de 2008

SISTEMAS DE NUMERAÇÃO

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I)

Algoritmos e Lógica de Programação (Aula Prática - 09/05/16)

Português Estruturado (VISUALG) Repetição

Algoritmo e Programação. Capítulo 2 Tópicos Preliminares

Aula 5 Estrutura de Repetição e Vetores

Lista de Exercícios 03a Algoritmos Repetição

COMANDOS DE REPETIÇÃO (ENQUANTO)

Lógica Aula 3. Definição. Estrutura de decisão

Estruturas de Repetição

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

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)

Algoritmos e Programação I

INFORMÁTICA APLICADA AULA 03 ALGORITMOS

Busca em Memória Primária Estrutura de Dados II

Lista de Exercícios 03a Algoritmos Repetição. 1) Escreva um algoritmo em PORTUGOL que imprima todos os números inteiros de 0 a 50.

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

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 3 de setembro de 2010

MC102 Algoritmos e Programação de Computadores

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

Exercícios: Comandos de Repetição

Estruturas de controle: Estrutura de DECISÃO

Transcrição:

Introdução à Ciência da Computação Aula de Exercícios Prof. Ricardo J. G. B. Campello Estagiário PAE: Bilzã M. de Araújo Créditos Os exercícios dos slides a seguir foram adaptados dos originais de A. L. V. Forbellone e H. F. Eberspächer.

Aula de Hoje Iremos exercitar a elaboração de algoritmos Estrutura sequencial Estruturas de seleção Estruturas de repetição Teste de mesa Tirar dúvidas sobre outros tópicos 10 minutos finais Estrutura sequencial Um índio precisa atravessar um rio com uma canoa que possui capacidade para carregar apenas ele mesmo e mais uma carga: um lobo, um bode ou um maço de alfafa. O quê o índio deve fazer para conseguir atravessar o rio sem prejuízos? Escreva um algoritmo mostrando cada uma das ações do índio.

Estrutura sequencial Estrutura sequencial Solução: leva bode de A para B; vai de B para A; leva lobo de A para B; leva bode de B para A; leva alfafa de A para B; vai de B para A; leva bode de A para B;

Estrutura sequencial Solução Alternativa: leva bode de A para B; vai de B para A; leva alfafa de A para B; leva bode de B para A; leva lobo de A para B; vai de B para A; leva bode de A para B; Estruturas de seleção O IMC é um critério da OMS para dar uma indicação sobre a condição de peso de uma pessoa adulta. peso IMC 2 altura Elabore um algoritmo que leia o peso e a altura de um adulto e mostra a sua condição. IMC em adultos abaixo de 18,5 entre 18,5 e 24,9 entre 25 e 29,9 a partir de 30 Condição abaixo do peso peso normal acima do peso obeso

Estruturas de seleção IMC em adultos abaixo de 18,5 entre 18,5 e 24,9 entre 25 e 29,9 a partir de 30 Condição abaixo do peso peso normal acima do peso obeso Estruturas de seleção Solução: real: peso, altura, IMC; leia(peso, altura); IMC <- peso/pot(altura, 2); se IMC < 18.5 então escreva( abaixo do peso ); se IMC >= 18.5 e IMC < 25 então escreva( peso normal ); se IMC >= 25 e IMC < 30 então escreva( acima do peso ); se IMC >= 30 então escreva( obeso );

Estruturas de seleção Solução Melhorada: real: peso, altura, IMC; leia(peso, altura); IMC <- peso/pot(altura, 2); se IMC < 18.5 então escreva( abaixo do peso ); senão se IMC < 25 então escreva( peso normal ); senão se IMC <= 30 então escreva( acima do peso ); senão escreva( obeso ); Estruturas de repetição Elabore um algoritmo que, dado um número como entrada, verifique se este número é ou não um número primo. Um número primo é divisível apenas por 1 e por ele mesmo. Ex: 1, 2, 3, 5, 7, 11, 13, 17, 23,... Dica: Se um número for divisível por qualquer número que não seja 1 ou ele mesmo, então este número não é primo. Ex: 4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 19, 20,... Estratégia: Podemos dividir o número por todos os números entre 2 e numero div 2. Se alguma divisão tiver resto = 0, então o número não é primo.

Estruturas de repetição É necessário utilizar uma estrutura de repetição: enquanto <condição> faça C1; Cn; fimenquanto; repita C1; Cn; até <condição> para V de vi até vf passo p faça C1; Cn; fimpara; Estruturas de repetição Solução usando enquanto: inteiro: numero, divisor; lógico: eh_primo; leia(numero); eh_primo <- V; divisor <- 2; enquanto divisor <= numero div 2 e eh_primo faça se numero mod divisor = 0 então eh_primo <- F; divisor <- divisor + 1; fimenquanto; se eh_primo então escreva( é primo ) senão escreva( não é primo )

Estruturas de repetição Solução usando repita: inteiro: numero, divisor; lógico: eh_primo; leia(numero); eh_primo <- V; divisor <- 2; repita se numero mod divisor = 0 então eh_primo <- F; divisor <- divisor + 1; até divisor > numero div 2 ou não eh_primo; se eh_primo então escreva( é primo ) senão escreva( não é primo ) Estruturas de repetição Solução usando para: 1. 2. inteiro: numero, divisor; 3. lógico: eh_primo; 4. leia(numero); 5. eh_primo <- V; 6. para divisor de 2 até numero div 2 passo 1 faça 7. se numero mod divisor = 0 então 8. inicio 9. eh_primo <- F; 10. divisor <- numero; //a execução sairá do para, 11. //pois V será maior que vf 12. 13. fimpara; 14. se eh_primo então 15. escreva( é primo ) 16. senão 17. escreva( não é primo ) 18. 19.

Teste de mesa http://www.brasilacademico.com/ed/testemesa.htm Exemplo no quadro. Dúvidas?

Outros Exercícios Realize a conversão Decimal -> Binário -> Decimal Caractere M (ASCII: 77) Calcule o resultado das seguintes expressões: não Y*7div2 <= 47-pot(2,3)mod3 e rad(13-4)-3*2 > Z não (8 <> 24/3 ou rad(25)=5 e 15 5 > 5 * 2 ou V)