Introdução à programação
Computadores e programação I
Estruturas de Repetição
Aula nº5
© [email protected] 2006
© [email protected] 2003
Introdução à programação
Sumário

Repetição simples de instruções



Repetição com controlo final




Enquanto
para
Repete
faz
Repetição composta de instruções
Exercícios
© [email protected] 2003
Computadores e programação I
Introdução à programação
Computadores e programação I
Fluxo de execução
Inicio / Fim
Decisão
condicional
Entrada de dados
Linha de fluxo
Processamento
(cálculos)
Saída de dados
© [email protected] 2003
Conector de fluxo
Introdução à programação
Computadores e programação I
Exercício
Euromilhoes
inicio
fim
escrever
escrever
escrever
escrever
escrever
escrever
escrever
escrever
escrever
"números:\t"
int ( aleatorio ( ) * 49 + 1 ) , "\t"
int ( aleatorio ( ) * 49 + 1 ) , "\t"
int ( aleatorio ( ) * 49 + 1 ) , "\t"
int ( aleatorio ( ) * 49 + 1 ) , "\t"
int ( aleatorio ( ) * 49 + 1 ) , "\t"
"\nestrelas:\t"
int ( aleatorio ( ) * 9 + 1 ) , "\t"
int ( aleatorio ( ) * 9 + 1 )
ecra
© [email protected] 2003
números: 33
10
estrelas: 8
9
6
13
42
Introdução à programação
Computadores e programação I
Exercício

Construir um programa que imprima os números de 1 a 10
Inicio
Euromilhoes
1
2
3
4
5
6
7
8
inicio
escrever “1"
escrever “2"
escrever “3"
escrever “4"
escrever “5"
escrever “6"
escrever “7"
escrever “8“
escrever “9"
escrever “10"
9
10
Fim
© [email protected] 2003
fim
Ecrã
1
2
3
4
5
6
7
8
9
10
Introdução à programação
Computadores e programação I
Exercício

Construir um programa que imprima os números de 1 a 1000
Não vou
escrever mil
vezes a
mesma coisa
!!!!!!!!
Estruturas de repetição
•Permitem repetir instruções
•A repetição é controlada por uma
condição
© [email protected] 2003
Introdução à programação
Computadores e programação I
Contar até dez – algoritmo e fluxograma
Algoritmo
1- Inicio
2- Iniciar um contador a 1
3 - Repetir enquanto contador < 10
3.1 - Escrever contador
3.2 - Incrementar o contador
4 - fim
© [email protected] 2003
Introdução à programação
Repetição - Enquanto
© [email protected] 2003
Computadores e programação I
Introdução à programação
Computadores e programação I
Repetição – ENQUANTO
Linguagem Estruturada
sim
não
ENQUANTO <condição> FACA
Instrução 1
Instrução 2
Instrução 3
...
FIMENQUANTO
condição
Instruções
1. A condição é avaliada
2. Se o resultado for falso

O ciclo termina
3. Se o resultado for verdadeiro


© [email protected] 2003
São executadas as instruções do
bloco
Volta-se ao ponto 1
Introdução à programação
Repetição
Contador
inicio
inteiro contador
contador <- 1
enquanto contador <= 10 faz
escrever contador , "\t"
contador <- contador + 1
fimenquanto
fim
Exercícios
•Numeros impares menores que 10
•Numeros pares menores que 10
•Multiplos de 5 entre 100 e 200
© [email protected] 2003
Computadores e programação I
Introdução à programação
Exercício

Escreva um programa que
calcule e imprima a média
de 10 números
introduzidos pelo utilizador
Media
inicio
fim
inteiro contador, valor
real soma
contador <- 1
enquanto contador <= 5 faz
escrever "numero:"
ler valor
soma <- soma + valor
contador <- contador + 1
fimenquanto
escrever "a media e :" , soma / 5
© [email protected] 2003
Computadores e programação I
Introdução à programação
Computadores e programação I
Exercícios

Para cada um dos exercícios seguintes desenhe o
fluxograma e o programa



Imprimir os múltiplos de 3 com dois dígitos
Imprima a soma de todos os números naturais entre 0 e
10
Imprima a soma de todos os números naturais num
intervalo introduzido pelo utilizador
© [email protected] 2003
Introdução à programação
Computadores e programação I
Exercícios

Para cada um dos exercícios seguintes desenhe o
fluxograma e o programa

Calcule o e imprima o valor da potencia dado o valor da
base e do expoente introduzidos pelo utilizador
(NOTA: não utilize o operador ^ )

Calcule e imprima o factorial de um número introduzido
pelo utilizador
© [email protected] 2003
Introdução à programação
Computadores e programação I
Exercícios

Para cada um dos exercícios seguintes desenhe o
fluxograma e o programa


Construa um programa que calcule o soma de uma
sequência de números introduzidos pelo utilizador. O
programa deve solicitar o tamanho da sequencia ao
utilizador.
O mesmo do exercício anterior, mas calcular e imprimir a
média dos elementos positivos.
© [email protected] 2003
Introdução à programação
Computadores e programação I
Exercícios

Para cada um dos exercícios seguintes desenhe o
fluxograma e o programa

Pretende-se calcular o máximo, o mínimo e a média de
uma sequência de números positivos. A sequência
termina com o valor -1.
© [email protected] 2003
Introdução à programação
Computadores e programação I
Exercícios

Para cada um dos exercícios seguintes desenhe o
fluxograma e o programa

Construa um programa que imprima os números da
sequência de Fibbonaci inferiores a 1000




n1 = 1
n2 = 2
ni = ni-1 + ni-2
Série: 1 2 3 5 8 13 21 34
© [email protected] 2003
Introdução à programação
Repetição Para
© [email protected] 2003
Computadores e programação I
Introdução à programação
Computadores e programação I
Repetição – PARA
Linguagem Estruturada
PARA <variavel> DE <expressao1> ATE <expressao2> PASSO <expressao3>
Instrução 1
Instrução 2
Instrução 3
...
PROXIMO
Variavel <- expressão 1
variavel <= espressao2
não
sim
Instruções
Variavel <- variavel + expressão 3
© [email protected] 2003
Introdução à programação
Exercício

Escreva um
programa que
imprima os
números ímpares
menores que 10
Impare
s
inicio
inteiro numero
para numero de 1 ate 10 passo 2
escrever numero , "\t"
proximo
fim
© [email protected] 2003
Computadores e programação I
Introdução à programação
Exercício

Escreva um programa que
calcule e imprima a soma
de 10 números
introduzidos pelo utilizador
Media
inicio
inteiro contador
real valor, soma
para contador de 1 ate 10
ler valor
soma <- soma + valor
proximo
escrever soma
fim
© [email protected] 2003
Computadores e programação I
Introdução à programação
Computadores e programação I
Exercício

Construa um programa que imprima a tabuada de
um número introduzido pelo utilizador
2
2
2
2
2
2
2
2
2
2
x
x
x
x
x
x
x
x
x
x
1 = 2
2 = 4
3 = 6
4 = 8
5 = 10
6 = 12
7 = 14
8 = 16
9 = 18
10 = 20
© [email protected] 2003
5
5
5
5
5
5
5
5
5
5
x
x
x
x
x
x
x
x
x
x
1 = 5
2 = 10
3 = 15
4 = 20
5 = 25
6 = 30
7 = 35
8 = 40
9 = 45
10 = 50
Introdução à programação
Computadores e programação I
Exercícios - FOR

Para cada um dos exercícios seguintes desenhe o
fluxograma e o programa




Imprimir os múltiplos de 3 com dois dígitos
Imprima a soma de todos os números naturais entre 0 e
10
Imprima a soma de todos os números naturais num
intervalo introduzido pelo utilizador
Calcule e imprima o factorial de um número introduzido
pelo utilizador
© [email protected] 2003
Introdução à programação
Computadores e programação I
Ciclos com controlo final
© [email protected] 2003
Introdução à programação
Computadores e programação I
Repete – ATE
Linguagem Estruturada
Repete
Instrução 1
Instrução 2
Instrução 3
...
Ate <condicao>
Instruções
não
condição
1.
2.
3.
sim
As instruções são executadas
A condição é avaliada
Se o resultado for verdadeiro

4.
Se o resultado for falso

© [email protected] 2003
O ciclo termina
Volta-se ao ponto 1
Introdução à programação
Exercício

Escreva um
programa que
permita a
introdução do
numero do mês de
nascimento
Linguagem Estruturada
inicio
inteiro mes
repete
ler mes
ate mes > 0 e mes <= 12
fim
escrever "o mes é " , mes
© [email protected] 2003
Computadores e programação I
Introdução à programação
Computadores e programação I
faz – enquanto
Linguagem Estruturada
faz
Instrução 1
Instrução 2
Instrução 3
...
enquanto <condicao>
Instruções
Sim
condição
1.
2.
3.
não
As instruções são executadas
A condição é avaliada
Se o resultado for falso

4.
Se o resultado for verdade

© [email protected] 2003
O ciclo termina
Volta-se ao ponto 1
Introdução à programação
Exercício

Escreva um
programa que
permita a
introdução do
numero do mês de
nascimento
Linguagem Estruturada
inicio
inteiro mes
faz
escrever "introduza um mes :"
ler mes
enquanto mes < 0 ou mes > 13
fim
escrever "\nmes introduzido :" , mes
© [email protected] 2003
Computadores e programação I
Introdução à programação
Ciclos encadeados
© [email protected] 2003
Computadores e programação I
Introdução à programação
Computadores e programação I
Ciclos encadeados
não
condição
não
condição
sim
sim
Instruções
não
condição
condição
sim
Instruções
Instruções
© [email protected] 2003
Introdução à programação
Computadores e programação I
Exercício

Construa um programa que imprima a as tabuadas
desde o 1 até ao 10
1
1
x
5
=
5
1 x
x 5
5 =
= 5
5
2
x
5
=
10
2
x
5
=
10
1
x
5
=
5
1
x
5
=
5
21 xx 55 == 10
5
3
x
5
=
15
3
x
5
=
15
2
x
5
=
10
2
x
5
=
10
3
x
5
=
15
1
x
5
=
5
1
x
5
=
5
2
1x
x5
5=
= 10
5
4
x
5
=
20
4
x
5
=
20
3
x
5
=
15
3
x
5
=
15
4
x
5
=
20
2
x
5
=
10
2
x
5
=
10
32
x
5
=
15
1
x
5
=
5
1
x
5
=
5
x
5
=
15
x=
525
= 10
5
5
x
5
x
5
=
25
4
x
5
=
20
4
x
5
=
20
5
x
5
=
25
3
x
5
=
15
3
x
5
=
15
4
x
5
=
20
2
x
5
=
10
2
x
5
=
10
3
x
5
=
15
1
x
5
=
5
1
x
5
=
5
25
x=
530
== 10
1
x
5
5
6
x
6
x
5
=
30
5
x
5
=
25
5
x
5
=
25
6
x
5
=
30
4
x
5
=
20
4
x
5
=
20
5
x
5
=
25
3
x
5
=
15
3
x
5
=
15
43
x
5
=
20
2
x
5
=
10
2
x
5
=
10
x
5
=
15
1
x
5
=
5
1
x
5
=
5
2
x
5
== 10
7
x
5
=
35
1
x
5
5
7
x
5
=
35
6
x
5
=
30
6
x
5
=
30
7
x
5
=
35
5
x
5
=
25
5
x
5
=
25
6
x
5
=
30
4
x
5
=
20
4
x
5
=
20
5
x
5
=
25
3
x
5
=
15
3
x
5
=
15
4
x
5
=
20
2
x
5
=
10
2
x
5
=
10
3
x
5
=
15
1
x
5
=
5
1
x
5
=
5
8
x
5
=
40
2
x
5
=
8
x
5
=
40
7
x
5
=
35
1
x
5
= 10
5
7
x
5
=
35
8
x
5
=
40
6
x
5
=
30
6
x
5
=
30
7
x
5
=
35
5
x
5
=
25
5
x
5
=
25
6
x
5
=
30
4
x
5
=
20
4
x
5
=
20
5
x
5
=
25
3
x
5
=
15
3
x
5
=
15
4
x
5
=
20
2
x
5
=
10
2
x
5
=
10
9
x
5
=
45
3
x
5
=
15
9
x
5
=
45
1
x
5
=
5
1
x
5
=
5
8
x
5
=
40
2
x
5
=
8
x
5
=
40
98
x
5
=
45
7
x
5
=
35
1
x
5
= 10
5
7
x
5
=
35
x
5
=
40
6
x
5
=
30
6
x
5
=
30
7
x
5
=
35
5
x
5
=
25
5
x
5
=
25
6
x
5
=
30
4
x
5
=
20
4
x
5
=
20
5
x
5
=
25
3
x
5
=
15
3
x
5
=
15
10
x
5
=
50
4
x
5
=
20
10
x
5
=
50
2
x
5
=
10
2
x
5
=
10
9
x
5
=
45
3
x
5
=
15
9
x
5
=
45
1
x
5
=
5
1
x
5
=
5
10
x
5
=
50
8
x
5
=
40
2
x
5
== 10
8
x
5
=
40
9
x
5
=
45
7
x
5
=
35
1
x
5
5
7
x
5
=
35
8
x
5
=
40
6
x
5
=
30
6
x
5
=
30
7
x
5
=
35
5
x
5
=
25
5
x
5
=
25
6
x
5
=
30
4
x
5
=
20
4
x
5
=
20
5
x
5
=
25
3
x
5
=
15
3
x
5
=
15
10
x
5
=
50
4
x
5
=
20
10
x
5
=
50
2
x
5
=
10
2
x
5
=
10
9
x
5
=
45
3
x
5
=
15
9
x
5
=
45
10
x
5
=
50
8
x
5
=
40
2
x
5
=
10
8
x
5
=
40
9
x
5
=
45
7
x
5
=
35
7
x
5
=
35
8
x
5
=
40
6
x
5
=
30
6
x
5
=
30
7
x
5
=
35
5
x
5
=
25
5
x
5
=
25
6
x
5
=
30
4
x
5
=
20
4
x
5
=
20
1
x
5
=
5
1
x
5
=
5
5
x
5
=
25
3
x
5
=
15
3
x
5
=
15
10
x
5
=
50
4
x
5
=
20
10
x
5
=
50
1
x
5
=
5
9
x
5
=
45
3
x
5
=
15
9
x
5
=
45
10
x
5
=
50
8
x
5
=
40
8
x
5
=
40
9
x
5
=
45
7
x
5
=
35
7
x
5
=
35
8
x
5
=
40
6
x
5
=
30
6
x
5
=
30
7
x
5
=
35
5
x
5
=
25
5
x
5
=
25
2
x
5
=
10
2
x
5
=
10
6
x
5
=
30
4
x
5
=
20
4
x
5
=
20
55
x=
545
===
25
2
x
5
10
10
x
5
=
50
4
x
5
20
10
x
5
=
50
9
x
9
x
5
=
45
10
x
5
=
50
8
x
5
=
40
8
x
5
=
40
9
x
5
=
45
7
x
5
=
35
7
x
5
=
35
8
x
5
=
40
6
x
5
=
30
6
x
5
=
30
3
x
5
=
15
3
x
5
=
15
7
x
5
=
35
5
x
5
=
25
5
x
5
=
25
6
x
5
=
30
3
x
5
=
15
55
x=
545
=
25
10
x
5
=
50
10
x
5
=
50
9
x
9
x
5
=
45
10
x
5
=
50
8
x
5
=
40
8
x
5
=
40
9
x
5
=
45
7
x
5
=
35
7
x
5
=
35
4
x
5
=
20
4
x
5
=
20
8
x
5
=
40
6
x
5
=
30
6
x
5
=
30
7
x
5
=
35
20
64
xx
55
==
30
10
x
5
=
50
10
x
5
=
50
9
x
5
=
45
9
x
5
=
45
10
x
5
=
50
8
x
5
=
40
8
x
5
=
40
5
x
5
=
25
5
x
5
=
25
9
x
5
=
45
7
x
5
=
35
7
x
5
=
35
875
xxx
555
===
40
25
35
10
x
5
=
50
10
x
5
=
50
9
x
5
=
45
9
x
5
=
45
6
x
5
=
30
6
x
5
=
30
10
x
5
=
50
8
x
5
=
40
8
x
5
=
40
9
x
5
=
45
30
86 xx 55 == 40
10
x
5
=
50
10
x
5
=
50
7
x
5
=
35
7
x
5
=
35
9
x
5
=
45
9
x
5
=
45
10
x
5
=
50
7
x
5
=
35
9 x
5 =
45
8
x
5
=
40
8
x
5
=
40
10
=
50
10
x
5
=
50
8 x
10
x 5
5 =
= 40
50
9
x
5
=
45
9
x
5
=
45
9 x
5 =
45
10
10
x
5
=
50
10 x
x 5
5 =
= 50
50
© [email protected] 2003
Introdução à programação
Computadores e programação I
Exercícios

Para cada um dos exercícios seguintes desenhe o
fluxograma e o programa

Calcule e imprima o factorial dos números entre 1 e 10

Verifique se um número é primo


Um número é primo se for divisível apenas por 1 e por ele mesmo
Calcule todos os números primos inferiores a 100
© [email protected] 2003
Download

ppt