SlideShare uma empresa Scribd logo
1 de 4
Baixar para ler offline
Python:
whilewhile
Rodrigo de Toledo
(original: Claudio Esperança)
Primeiros passos em programação
• Até agora só vimos:
– Expressões, que são escritas e computadas
imediatamente
– Variáveis, que podem ser usadas para valores
temporáriostemporários
– Input, para ler informações entradas pelos usuários
– Print, para informar ao usuário a saída
– If, comando condicional para tomada de decisão
• O que veremos agora:
– Comandos de repetição (ou loop)
Primeiros passos em programação
>>> # Série de Fibonacci
... a,b = 0,1
>>> while b < 10:
... print b
... a,b = b,a+b
Comentário
Atribuição dupla
Comando de repetição
Expressão booleana
... a,b = b,a+b
...
1
1
2
3
5
8
Bloco do
comando de repetição
Expressão booleana
Resultado
Indentação
Sobre a série de Fibonacci
• Fibonacci, matemático do século XII
• Fórmula
• Série
– 1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597, ...
• Tendem à razão áurea
– 1.618033989...– 1.618033989...
– Razão da beleza
• Na natureza:
– Espiral: conchas, bromélias, orelha...
– Flores: girassol...
– Crescimento populacional dos coelhos
• Várias propriedades matemáticas
• Muito usado em aprendizado de linguagens de programação
while
• Repete uma seqüência de comandos enquanto uma dada expressão
booleana é avaliada como verdadeira
• Formato:
whilewhilewhilewhile expressão:
comando
...
comandocomando
• Exemplo:
>>> i = 10
>>> while i>8:
... print i,
... i = i-1
...
10 9
Programas armazenados
• À medida que os programas vão se tornando mais complicados, é
mais interessante guardá-los em arquivos e executá-los quando
necessário
• Arquivo fibo.py (use um editor de textos como o do IDLE):
# Série de Fibonacci:
a, b = 0, 1a, b = 0, 1
while b < 10:
print b
a, b = b, a+b
Formas de Executar
um Programa
• 4 opções:
– Digite python fibo.py no seu shell (ex: janela DOS), ou
– Clique no ícone do arquivo, ou
– De dentro do editor IDLE, selecione Run Module (F5), ou– De dentro do editor IDLE, selecione Run Module (F5), ou
– De dentro do interpretador python:
>>> execfile ("fibo.py")
Entre com um numero 5
1 1 2 3
>>>
Observações
• Existe um outro comando de repetição:
– FOR
– (o comando FOR será visto posteriormente)
• Em geral usa-se a variável i (abreviação de integer)
para contagem sequencial de inteirospara contagem sequencial de inteiros
• É possível haver loop dentro de loop
– Nesse caso recomenda-se usar variáveis diferentes para o controle do
loop (ex: i, j, k ...), para que não haja interferência
• Atenção para não criar um loop infinito
– Para interromper: ctrl+c
– Exemplo no próximo slide
Laços Infinitos
• Como em todo comando de repetição, é
importante evitar os chamados “laços
infinitos” ou “loop infinitos”
• Ex.:• Ex.:
>>> i = 10
>>> while i>8:
... print i,
... i = i+1
...
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
30 31 32 33 ...
Vamos fazer juntos...
1. Faça um programa que repita na tela 40 vezes a
frase “Aprender Python eh muito facil!”
2. Faça um programa que leia quantas vezes a frase
“Aprender Python eh muito facil!” deverá ser
repetida, imprima também o número da linha.repetida, imprima também o número da linha.
3. Faça um programa que leia 40 números
somando-os e ao final diga o total
4. Faça um programa que inicialmente pergunte
quantos números serão entrados e então calcule
o seu somatório e a média.
Exercícios (loop)
1. Faça um programa que leia um numero entre 1 e
10 e imprima a sua tabuada de 1 a 10.
2. Faça um programa que leia um número
informando a quantidade de números que serão
entrados em sequência posteriormente, entãoentrados em sequência posteriormente, então
leia os números e, ao final, imprima a média
deles
3. Faça um programa que leia uma seqüência de 10
números e, ao final, imprima o maior deles.
4. Faça um programa que imprima todas as
tabuadas de 1 a 10.
Exercícios (while)
1. Faça um programa que leia uma série de números inteiros e imprima a sua
média, o programa termina com a entrada do número 0.
2. Faça um programa que leia uma série de números positivos e diga ao final
qual é o maior (termina com um número negativo).
3. Altere o programa anterior para imprimir também qual é o segundo maior.
4. Faça um programa que leia 2 números da entrada e imprima o resto da
divisão inteira do primeiro pelo segundo usando subtrações sucessivas (ou
seja, não use comando de resto: %).
5. Altere o programa anterior para que imprima também o resultado da
divisão (não use comando de divisão: /).divisão (não use comando de divisão: /).
6. Faça um programa que calcule e imprima o CR do período para os alunos
da UFRJ (matrícula inferior ou igual a zero termina a entrada). Para cada
aluno, o programa deverá ler:
número da matrícula;
quantidade de disciplinas cursadas;
Para cada disciplina cursada:
nota da disciplina.
créditos da disciplina
Obs1: O CR é calculado segundo a média ponderada das notas.
Obs2: O programa termina com a entrada de uma matrícula negativa.
Exercício: números primos
• Fazer um programa que decida se um número
positivo dado é primo ou não
– Entrada: número inteiro positivo
– Saída: diagnóstico de primalidade do número– Saída: diagnóstico de primalidade do número
• Exemplos de execução:
– Entre com um número inteiro positivo: 169
169 é múltiplo de 13
– Entre com um número inteiro positivo: 983
983 é primo
Exercício: números primos
• Um número natural é primo se é divisível apenas
por si mesmo e pela unidade (excetuando-se o 1)
• Isto sugere o seguinte algoritmo:
– Se o número é 1, então não é primo
– Se o número é 2, então é primo– Se o número é 2, então é primo
– Caso contrário,
• Seja d um possível divisor, cujo valor é inicialmente 2
• Repetir
– Se o resto da divisão do número por d é zero, então o número
não é primo
– Caso contrário, incrementar d
– Se d é igual ou maior que o número, então terminar repetição
diagnosticando o número como primo

Mais conteúdo relacionado

Mais procurados

Dicas para maratonas de programação
Dicas para maratonas de programaçãoDicas para maratonas de programação
Dicas para maratonas de programaçãoAnderson Araújo
 
Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10André Phillip Bertoletti
 
Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06André Phillip Bertoletti
 
Algoritmos - Comandos de Repetição
Algoritmos - Comandos de RepetiçãoAlgoritmos - Comandos de Repetição
Algoritmos - Comandos de RepetiçãoElaine Cecília Gatto
 
T02_LM3: Introdução à algoritmia (2013-2014)
T02_LM3: Introdução à algoritmia (2013-2014)T02_LM3: Introdução à algoritmia (2013-2014)
T02_LM3: Introdução à algoritmia (2013-2014)Carlos Santos
 
Logica Algoritmo 05 Repeticao
Logica Algoritmo 05 RepeticaoLogica Algoritmo 05 Repeticao
Logica Algoritmo 05 RepeticaoRegis Magalhães
 
Introdução à programação
Introdução à programaçãoIntrodução à programação
Introdução à programação12anogolega
 
Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)111111119
 
Lógica de programação em ppt
Lógica de programação em pptLógica de programação em ppt
Lógica de programação em pptAndrei Bastos
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAislan Rafael
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetiçãoTácito Graça
 
ICC - Aula 04 - Expressões literais, comando de atribuição e de entrada/saída
ICC - Aula 04 - Expressões literais, comando de atribuição e de entrada/saídaICC - Aula 04 - Expressões literais, comando de atribuição e de entrada/saída
ICC - Aula 04 - Expressões literais, comando de atribuição e de entrada/saídaFelipe J. R. Vieira
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascalJocelma Rios
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Gercélia Ramos
 
Lógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetiçãoLógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetiçãoWesley R. Bezerra
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosMario Jorge Pereira
 
Algoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetiçãoAlgoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetiçãoAlex Camargo
 

Mais procurados (20)

Dicas para maratonas de programação
Dicas para maratonas de programaçãoDicas para maratonas de programação
Dicas para maratonas de programação
 
Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10Lógica de Programação - Unimep/Pronatec - Aula10
Lógica de Programação - Unimep/Pronatec - Aula10
 
Python + algoritmo
Python + algoritmoPython + algoritmo
Python + algoritmo
 
Aula python
Aula pythonAula python
Aula python
 
Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06Lógica de Programação - Unimep/Pronatec - Aula06
Lógica de Programação - Unimep/Pronatec - Aula06
 
Algoritmos - Comandos de Repetição
Algoritmos - Comandos de RepetiçãoAlgoritmos - Comandos de Repetição
Algoritmos - Comandos de Repetição
 
T02_LM3: Introdução à algoritmia (2013-2014)
T02_LM3: Introdução à algoritmia (2013-2014)T02_LM3: Introdução à algoritmia (2013-2014)
T02_LM3: Introdução à algoritmia (2013-2014)
 
Logica Algoritmo 05 Repeticao
Logica Algoritmo 05 RepeticaoLogica Algoritmo 05 Repeticao
Logica Algoritmo 05 Repeticao
 
Introdução à programação
Introdução à programaçãoIntrodução à programação
Introdução à programação
 
Algoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em CAlgoritmos - Aula 13 A - Lacos em C
Algoritmos - Aula 13 A - Lacos em C
 
Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)Comandos de pascal e estrutura de repetição (para...fazer)
Comandos de pascal e estrutura de repetição (para...fazer)
 
Lógica de programação em ppt
Lógica de programação em pptLógica de programação em ppt
Lógica de programação em ppt
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e Programação
 
Aula 04 estruturas de repetição
Aula 04   estruturas de repetiçãoAula 04   estruturas de repetição
Aula 04 estruturas de repetição
 
ICC - Aula 04 - Expressões literais, comando de atribuição e de entrada/saída
ICC - Aula 04 - Expressões literais, comando de atribuição e de entrada/saídaICC - Aula 04 - Expressões literais, comando de atribuição e de entrada/saída
ICC - Aula 04 - Expressões literais, comando de atribuição e de entrada/saída
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascal
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)
 
Lógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetiçãoLógica de Programação - Estrutura de repetição
Lógica de Programação - Estrutura de repetição
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos
 
Algoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetiçãoAlgoritmos e Programação: Estruturas de repetição
Algoritmos e Programação: Estruturas de repetição
 

Destaque

004 programando em python - listas
004   programando em python - listas004   programando em python - listas
004 programando em python - listasLeandro Barbosa
 
006 programando em python - dicionarios
006   programando em python - dicionarios006   programando em python - dicionarios
006 programando em python - dicionariosLeandro Barbosa
 
005 programando em python - tuplas e strings
005   programando em python - tuplas e strings005   programando em python - tuplas e strings
005 programando em python - tuplas e stringsLeandro Barbosa
 
013 programando em python - arquivos
013   programando em python - arquivos013   programando em python - arquivos
013 programando em python - arquivosLeandro Barbosa
 
007 programando em python - funcoes
007   programando em python - funcoes007   programando em python - funcoes
007 programando em python - funcoesLeandro Barbosa
 
Ideias para programar
Ideias para programarIdeias para programar
Ideias para programarrobinhoct
 

Destaque (8)

004 programando em python - listas
004   programando em python - listas004   programando em python - listas
004 programando em python - listas
 
05 listas
05 listas05 listas
05 listas
 
006 programando em python - dicionarios
006   programando em python - dicionarios006   programando em python - dicionarios
006 programando em python - dicionarios
 
005 programando em python - tuplas e strings
005   programando em python - tuplas e strings005   programando em python - tuplas e strings
005 programando em python - tuplas e strings
 
013 programando em python - arquivos
013   programando em python - arquivos013   programando em python - arquivos
013 programando em python - arquivos
 
007 programando em python - funcoes
007   programando em python - funcoes007   programando em python - funcoes
007 programando em python - funcoes
 
Ideias para programar
Ideias para programarIdeias para programar
Ideias para programar
 
Aula02
Aula02Aula02
Aula02
 

Semelhante a 02 while

03 programando em python - comandos basicos
 03   programando em python - comandos basicos 03   programando em python - comandos basicos
03 programando em python - comandos basicosVictor Marcelino
 
Introducao a Lógica de Programação
Introducao a Lógica de ProgramaçãoIntroducao a Lógica de Programação
Introducao a Lógica de ProgramaçãoMarcelo Rodrigues
 
Curso de python capítulo 1 - introdução
Curso de python   capítulo 1 - introduçãoCurso de python   capítulo 1 - introdução
Curso de python capítulo 1 - introduçãoRicardo Fahham
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9Felipe Santos
 
Aula 03 - Condicionais e Loops em Python.pptx
Aula 03 - Condicionais e Loops em Python.pptxAula 03 - Condicionais e Loops em Python.pptx
Aula 03 - Condicionais e Loops em Python.pptxCristiano Marçal Toniolo
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de ProgramaçãoAdao Chiavelli
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_javaMirlem Pereira
 
Conceito de funçao e modularizaçao
Conceito de funçao e modularizaçaoConceito de funçao e modularizaçao
Conceito de funçao e modularizaçaossuserc6132d
 
Trabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - PythonTrabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - PythonJanderson Campêlo
 
Aula 01 - Introducao a C (3).pptx
Aula 01 - Introducao a C (3).pptxAula 01 - Introducao a C (3).pptx
Aula 01 - Introducao a C (3).pptxAbdulSacur2
 

Semelhante a 02 while (20)

01 variaveis io if
01 variaveis io if01 variaveis io if
01 variaveis io if
 
LP1 P01 - Python.pdf
LP1 P01 - Python.pdfLP1 P01 - Python.pdf
LP1 P01 - Python.pdf
 
Algoritmos - Aula 07 A - Lacos
Algoritmos - Aula 07 A - LacosAlgoritmos - Aula 07 A - Lacos
Algoritmos - Aula 07 A - Lacos
 
Algoritmos - Pascal
Algoritmos - PascalAlgoritmos - Pascal
Algoritmos - Pascal
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Hardware
HardwareHardware
Hardware
 
03 programando em python - comandos basicos
 03   programando em python - comandos basicos 03   programando em python - comandos basicos
03 programando em python - comandos basicos
 
Módulo 2 pascal
Módulo 2  pascalMódulo 2  pascal
Módulo 2 pascal
 
Introducao a Lógica de Programação
Introducao a Lógica de ProgramaçãoIntroducao a Lógica de Programação
Introducao a Lógica de Programação
 
Python for zombies (very basic level)
Python for zombies (very basic level)Python for zombies (very basic level)
Python for zombies (very basic level)
 
Algop - aula 06
Algop - aula 06Algop - aula 06
Algop - aula 06
 
Curso de python capítulo 1 - introdução
Curso de python   capítulo 1 - introduçãoCurso de python   capítulo 1 - introdução
Curso de python capítulo 1 - introdução
 
Curso De Algoritmo Aula 9
Curso De Algoritmo   Aula 9Curso De Algoritmo   Aula 9
Curso De Algoritmo Aula 9
 
Aula 03 - Condicionais e Loops em Python.pptx
Aula 03 - Condicionais e Loops em Python.pptxAula 03 - Condicionais e Loops em Python.pptx
Aula 03 - Condicionais e Loops em Python.pptx
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de Programação
 
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
8a. aula -_estrutura_de_controle_de_repeticao_-_while_java
 
Conceito de funçao e modularizaçao
Conceito de funçao e modularizaçaoConceito de funçao e modularizaçao
Conceito de funçao e modularizaçao
 
Trabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - PythonTrabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - Python
 
Aula 01 - Introducao a C (3).pptx
Aula 01 - Introducao a C (3).pptxAula 01 - Introducao a C (3).pptx
Aula 01 - Introducao a C (3).pptx
 
Laços de Repetição
Laços de RepetiçãoLaços de Repetição
Laços de Repetição
 

Mais de Leandro Barbosa

Mais de Leandro Barbosa (6)

011 programando em python - conjuntos
011   programando em python - conjuntos011   programando em python - conjuntos
011 programando em python - conjuntos
 
05 biomassa
05 biomassa05 biomassa
05 biomassa
 
python
pythonpython
python
 
python.tipos
python.tipospython.tipos
python.tipos
 
Estrutura cristalina
Estrutura cristalinaEstrutura cristalina
Estrutura cristalina
 
Lista de integração
Lista de integraçãoLista de integração
Lista de integração
 

Último

Religiosidade de Assaré - Prof. Francisco Leite
Religiosidade de Assaré - Prof. Francisco LeiteReligiosidade de Assaré - Prof. Francisco Leite
Religiosidade de Assaré - Prof. Francisco Leiteprofesfrancleite
 
EBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptx
EBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptxEBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptx
EBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptxIlda Bicacro
 
UFCD_10659_Ficheiros de recursos educativos_índice .pdf
UFCD_10659_Ficheiros de recursos educativos_índice .pdfUFCD_10659_Ficheiros de recursos educativos_índice .pdf
UFCD_10659_Ficheiros de recursos educativos_índice .pdfManuais Formação
 
"Nós Propomos! Escola Secundária em Pedrógão Grande"
"Nós Propomos! Escola Secundária em Pedrógão Grande""Nós Propomos! Escola Secundária em Pedrógão Grande"
"Nós Propomos! Escola Secundária em Pedrógão Grande"Ilda Bicacro
 
Slides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptx
Slides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptxSlides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptx
Slides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptxLuizHenriquedeAlmeid6
 
Alemanha vs União Soviética - Livro de Adolf Hitler
Alemanha vs União Soviética - Livro de Adolf HitlerAlemanha vs União Soviética - Livro de Adolf Hitler
Alemanha vs União Soviética - Livro de Adolf Hitlerhabiwo1978
 
Maio Laranja - Combate à violência sexual contra crianças e adolescentes
Maio Laranja - Combate à violência sexual contra crianças e adolescentesMaio Laranja - Combate à violência sexual contra crianças e adolescentes
Maio Laranja - Combate à violência sexual contra crianças e adolescentesMary Alvarenga
 
1. Aula de sociologia - 1º Ano - Émile Durkheim.pdf
1. Aula de sociologia - 1º Ano - Émile Durkheim.pdf1. Aula de sociologia - 1º Ano - Émile Durkheim.pdf
1. Aula de sociologia - 1º Ano - Émile Durkheim.pdfaulasgege
 
Currículo Professor Pablo Ortellado - Universidade de São Paulo
Currículo Professor Pablo Ortellado - Universidade de São PauloCurrículo Professor Pablo Ortellado - Universidade de São Paulo
Currículo Professor Pablo Ortellado - Universidade de São Pauloririg29454
 
Atividades adaptada de matemática (Adição pop )
Atividades adaptada de matemática (Adição pop )Atividades adaptada de matemática (Adição pop )
Atividades adaptada de matemática (Adição pop )MayaraDaSilvaAssis
 
Nós Propomos! Sertã 2024 - Geografia C - 12º ano
Nós Propomos! Sertã 2024 - Geografia C - 12º anoNós Propomos! Sertã 2024 - Geografia C - 12º ano
Nós Propomos! Sertã 2024 - Geografia C - 12º anoIlda Bicacro
 
SQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdfSQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdfAndersonW5
 
[2.3.3] 100%_CN7_CAP_[FichaAvaliacao3].docx
[2.3.3] 100%_CN7_CAP_[FichaAvaliacao3].docx[2.3.3] 100%_CN7_CAP_[FichaAvaliacao3].docx
[2.3.3] 100%_CN7_CAP_[FichaAvaliacao3].docxSílvia Carneiro
 
5. EJEMPLOS DE ESTRUCTURASQUINTO GRADO.pptx
5. EJEMPLOS DE ESTRUCTURASQUINTO GRADO.pptx5. EJEMPLOS DE ESTRUCTURASQUINTO GRADO.pptx
5. EJEMPLOS DE ESTRUCTURASQUINTO GRADO.pptxnelsontobontrujillo
 
425416820-Testes-7º-Ano-Leandro-Rei-Da-Heliria-Com-Solucoes.pdf
425416820-Testes-7º-Ano-Leandro-Rei-Da-Heliria-Com-Solucoes.pdf425416820-Testes-7º-Ano-Leandro-Rei-Da-Heliria-Com-Solucoes.pdf
425416820-Testes-7º-Ano-Leandro-Rei-Da-Heliria-Com-Solucoes.pdfCarinaSofiaDiasBoteq
 
Tema de redação - A prática do catfish e seus perigos.pdf
Tema de redação - A prática do catfish e seus perigos.pdfTema de redação - A prática do catfish e seus perigos.pdf
Tema de redação - A prática do catfish e seus perigos.pdfAnaAugustaLagesZuqui
 
atividade para 3ª serie do ensino medi sobrw biotecnologia( transgenicos, clo...
atividade para 3ª serie do ensino medi sobrw biotecnologia( transgenicos, clo...atividade para 3ª serie do ensino medi sobrw biotecnologia( transgenicos, clo...
atividade para 3ª serie do ensino medi sobrw biotecnologia( transgenicos, clo...WelitaDiaz1
 
O que é, de facto, a Educação de Infância
O que é, de facto, a Educação de InfânciaO que é, de facto, a Educação de Infância
O que é, de facto, a Educação de InfânciaHenrique Santos
 
Periodo da escravidAo O Brasil tem seu corpo na América e sua alma na África
Periodo da escravidAo O Brasil tem seu corpo na América e sua alma na ÁfricaPeriodo da escravidAo O Brasil tem seu corpo na América e sua alma na África
Periodo da escravidAo O Brasil tem seu corpo na América e sua alma na Áfricajuekfuek
 
ATIVIDADE 1 - ENF - ENFERMAGEM BASEADA EM EVIDÊNCIAS - 52_2024
ATIVIDADE 1 - ENF - ENFERMAGEM BASEADA EM EVIDÊNCIAS - 52_2024ATIVIDADE 1 - ENF - ENFERMAGEM BASEADA EM EVIDÊNCIAS - 52_2024
ATIVIDADE 1 - ENF - ENFERMAGEM BASEADA EM EVIDÊNCIAS - 52_2024azulassessoria9
 

Último (20)

Religiosidade de Assaré - Prof. Francisco Leite
Religiosidade de Assaré - Prof. Francisco LeiteReligiosidade de Assaré - Prof. Francisco Leite
Religiosidade de Assaré - Prof. Francisco Leite
 
EBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptx
EBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptxEBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptx
EBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptx
 
UFCD_10659_Ficheiros de recursos educativos_índice .pdf
UFCD_10659_Ficheiros de recursos educativos_índice .pdfUFCD_10659_Ficheiros de recursos educativos_índice .pdf
UFCD_10659_Ficheiros de recursos educativos_índice .pdf
 
"Nós Propomos! Escola Secundária em Pedrógão Grande"
"Nós Propomos! Escola Secundária em Pedrógão Grande""Nós Propomos! Escola Secundária em Pedrógão Grande"
"Nós Propomos! Escola Secundária em Pedrógão Grande"
 
Slides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptx
Slides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptxSlides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptx
Slides Lição 7, CPAD, O Perigo Da Murmuração, 2Tr24.pptx
 
Alemanha vs União Soviética - Livro de Adolf Hitler
Alemanha vs União Soviética - Livro de Adolf HitlerAlemanha vs União Soviética - Livro de Adolf Hitler
Alemanha vs União Soviética - Livro de Adolf Hitler
 
Maio Laranja - Combate à violência sexual contra crianças e adolescentes
Maio Laranja - Combate à violência sexual contra crianças e adolescentesMaio Laranja - Combate à violência sexual contra crianças e adolescentes
Maio Laranja - Combate à violência sexual contra crianças e adolescentes
 
1. Aula de sociologia - 1º Ano - Émile Durkheim.pdf
1. Aula de sociologia - 1º Ano - Émile Durkheim.pdf1. Aula de sociologia - 1º Ano - Émile Durkheim.pdf
1. Aula de sociologia - 1º Ano - Émile Durkheim.pdf
 
Currículo Professor Pablo Ortellado - Universidade de São Paulo
Currículo Professor Pablo Ortellado - Universidade de São PauloCurrículo Professor Pablo Ortellado - Universidade de São Paulo
Currículo Professor Pablo Ortellado - Universidade de São Paulo
 
Atividades adaptada de matemática (Adição pop )
Atividades adaptada de matemática (Adição pop )Atividades adaptada de matemática (Adição pop )
Atividades adaptada de matemática (Adição pop )
 
Nós Propomos! Sertã 2024 - Geografia C - 12º ano
Nós Propomos! Sertã 2024 - Geografia C - 12º anoNós Propomos! Sertã 2024 - Geografia C - 12º ano
Nós Propomos! Sertã 2024 - Geografia C - 12º ano
 
SQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdfSQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdf
 
[2.3.3] 100%_CN7_CAP_[FichaAvaliacao3].docx
[2.3.3] 100%_CN7_CAP_[FichaAvaliacao3].docx[2.3.3] 100%_CN7_CAP_[FichaAvaliacao3].docx
[2.3.3] 100%_CN7_CAP_[FichaAvaliacao3].docx
 
5. EJEMPLOS DE ESTRUCTURASQUINTO GRADO.pptx
5. EJEMPLOS DE ESTRUCTURASQUINTO GRADO.pptx5. EJEMPLOS DE ESTRUCTURASQUINTO GRADO.pptx
5. EJEMPLOS DE ESTRUCTURASQUINTO GRADO.pptx
 
425416820-Testes-7º-Ano-Leandro-Rei-Da-Heliria-Com-Solucoes.pdf
425416820-Testes-7º-Ano-Leandro-Rei-Da-Heliria-Com-Solucoes.pdf425416820-Testes-7º-Ano-Leandro-Rei-Da-Heliria-Com-Solucoes.pdf
425416820-Testes-7º-Ano-Leandro-Rei-Da-Heliria-Com-Solucoes.pdf
 
Tema de redação - A prática do catfish e seus perigos.pdf
Tema de redação - A prática do catfish e seus perigos.pdfTema de redação - A prática do catfish e seus perigos.pdf
Tema de redação - A prática do catfish e seus perigos.pdf
 
atividade para 3ª serie do ensino medi sobrw biotecnologia( transgenicos, clo...
atividade para 3ª serie do ensino medi sobrw biotecnologia( transgenicos, clo...atividade para 3ª serie do ensino medi sobrw biotecnologia( transgenicos, clo...
atividade para 3ª serie do ensino medi sobrw biotecnologia( transgenicos, clo...
 
O que é, de facto, a Educação de Infância
O que é, de facto, a Educação de InfânciaO que é, de facto, a Educação de Infância
O que é, de facto, a Educação de Infância
 
Periodo da escravidAo O Brasil tem seu corpo na América e sua alma na África
Periodo da escravidAo O Brasil tem seu corpo na América e sua alma na ÁfricaPeriodo da escravidAo O Brasil tem seu corpo na América e sua alma na África
Periodo da escravidAo O Brasil tem seu corpo na América e sua alma na África
 
ATIVIDADE 1 - ENF - ENFERMAGEM BASEADA EM EVIDÊNCIAS - 52_2024
ATIVIDADE 1 - ENF - ENFERMAGEM BASEADA EM EVIDÊNCIAS - 52_2024ATIVIDADE 1 - ENF - ENFERMAGEM BASEADA EM EVIDÊNCIAS - 52_2024
ATIVIDADE 1 - ENF - ENFERMAGEM BASEADA EM EVIDÊNCIAS - 52_2024
 

02 while

  • 1. Python: whilewhile Rodrigo de Toledo (original: Claudio Esperança) Primeiros passos em programação • Até agora só vimos: – Expressões, que são escritas e computadas imediatamente – Variáveis, que podem ser usadas para valores temporáriostemporários – Input, para ler informações entradas pelos usuários – Print, para informar ao usuário a saída – If, comando condicional para tomada de decisão • O que veremos agora: – Comandos de repetição (ou loop) Primeiros passos em programação >>> # Série de Fibonacci ... a,b = 0,1 >>> while b < 10: ... print b ... a,b = b,a+b Comentário Atribuição dupla Comando de repetição Expressão booleana ... a,b = b,a+b ... 1 1 2 3 5 8 Bloco do comando de repetição Expressão booleana Resultado Indentação Sobre a série de Fibonacci • Fibonacci, matemático do século XII • Fórmula • Série – 1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597, ... • Tendem à razão áurea – 1.618033989...– 1.618033989... – Razão da beleza • Na natureza: – Espiral: conchas, bromélias, orelha... – Flores: girassol... – Crescimento populacional dos coelhos • Várias propriedades matemáticas • Muito usado em aprendizado de linguagens de programação
  • 2. while • Repete uma seqüência de comandos enquanto uma dada expressão booleana é avaliada como verdadeira • Formato: whilewhilewhilewhile expressão: comando ... comandocomando • Exemplo: >>> i = 10 >>> while i>8: ... print i, ... i = i-1 ... 10 9 Programas armazenados • À medida que os programas vão se tornando mais complicados, é mais interessante guardá-los em arquivos e executá-los quando necessário • Arquivo fibo.py (use um editor de textos como o do IDLE): # Série de Fibonacci: a, b = 0, 1a, b = 0, 1 while b < 10: print b a, b = b, a+b Formas de Executar um Programa • 4 opções: – Digite python fibo.py no seu shell (ex: janela DOS), ou – Clique no ícone do arquivo, ou – De dentro do editor IDLE, selecione Run Module (F5), ou– De dentro do editor IDLE, selecione Run Module (F5), ou – De dentro do interpretador python: >>> execfile ("fibo.py") Entre com um numero 5 1 1 2 3 >>> Observações • Existe um outro comando de repetição: – FOR – (o comando FOR será visto posteriormente) • Em geral usa-se a variável i (abreviação de integer) para contagem sequencial de inteirospara contagem sequencial de inteiros • É possível haver loop dentro de loop – Nesse caso recomenda-se usar variáveis diferentes para o controle do loop (ex: i, j, k ...), para que não haja interferência • Atenção para não criar um loop infinito – Para interromper: ctrl+c – Exemplo no próximo slide
  • 3. Laços Infinitos • Como em todo comando de repetição, é importante evitar os chamados “laços infinitos” ou “loop infinitos” • Ex.:• Ex.: >>> i = 10 >>> while i>8: ... print i, ... i = i+1 ... 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 ... Vamos fazer juntos... 1. Faça um programa que repita na tela 40 vezes a frase “Aprender Python eh muito facil!” 2. Faça um programa que leia quantas vezes a frase “Aprender Python eh muito facil!” deverá ser repetida, imprima também o número da linha.repetida, imprima também o número da linha. 3. Faça um programa que leia 40 números somando-os e ao final diga o total 4. Faça um programa que inicialmente pergunte quantos números serão entrados e então calcule o seu somatório e a média. Exercícios (loop) 1. Faça um programa que leia um numero entre 1 e 10 e imprima a sua tabuada de 1 a 10. 2. Faça um programa que leia um número informando a quantidade de números que serão entrados em sequência posteriormente, entãoentrados em sequência posteriormente, então leia os números e, ao final, imprima a média deles 3. Faça um programa que leia uma seqüência de 10 números e, ao final, imprima o maior deles. 4. Faça um programa que imprima todas as tabuadas de 1 a 10. Exercícios (while) 1. Faça um programa que leia uma série de números inteiros e imprima a sua média, o programa termina com a entrada do número 0. 2. Faça um programa que leia uma série de números positivos e diga ao final qual é o maior (termina com um número negativo). 3. Altere o programa anterior para imprimir também qual é o segundo maior. 4. Faça um programa que leia 2 números da entrada e imprima o resto da divisão inteira do primeiro pelo segundo usando subtrações sucessivas (ou seja, não use comando de resto: %). 5. Altere o programa anterior para que imprima também o resultado da divisão (não use comando de divisão: /).divisão (não use comando de divisão: /). 6. Faça um programa que calcule e imprima o CR do período para os alunos da UFRJ (matrícula inferior ou igual a zero termina a entrada). Para cada aluno, o programa deverá ler: número da matrícula; quantidade de disciplinas cursadas; Para cada disciplina cursada: nota da disciplina. créditos da disciplina Obs1: O CR é calculado segundo a média ponderada das notas. Obs2: O programa termina com a entrada de uma matrícula negativa.
  • 4. Exercício: números primos • Fazer um programa que decida se um número positivo dado é primo ou não – Entrada: número inteiro positivo – Saída: diagnóstico de primalidade do número– Saída: diagnóstico de primalidade do número • Exemplos de execução: – Entre com um número inteiro positivo: 169 169 é múltiplo de 13 – Entre com um número inteiro positivo: 983 983 é primo Exercício: números primos • Um número natural é primo se é divisível apenas por si mesmo e pela unidade (excetuando-se o 1) • Isto sugere o seguinte algoritmo: – Se o número é 1, então não é primo – Se o número é 2, então é primo– Se o número é 2, então é primo – Caso contrário, • Seja d um possível divisor, cujo valor é inicialmente 2 • Repetir – Se o resto da divisão do número por d é zero, então o número não é primo – Caso contrário, incrementar d – Se d é igual ou maior que o número, então terminar repetição diagnosticando o número como primo