Você está na página 1de 35

1

PROCESSAMENTO DE DADOS
Prof.: Danilo Coimbra
(coimbra.danilo@ufba.br)
2022-2
Estruturas de Repetição - Laços
Conteúdo
2

 Introdução

 Para (FOR)

 Enquanto (WHILE)

 Faça – enquanto (DO – WHILE)


Introdução
3

 Em programação, um dos principais desafios é


identificar e criar processos repetitivos para os
problemas que queremos resolver

 Processos repetitivos ou estruturas de repetição


também são conhecidos como loop
 Loop?
Introdução
4

 Segundo o dicionário Aurélio,


 “Trecho de programa executado repetidamente um
número definido de vezes, ou até que uma condição seja
satisfeita.”
 Segundo Michaelis*,

*http://michaelis.uol.com.br/moderno-portugues/busca/portugues-brasileiro/loop/
Introdução
5

 Permitem que uma ação seja executada mais de uma


vez sem que tenhamos que executar o programa
novamente

 Exemplo:
 Imprimir todos os usuários de um sistema
◼ Poderia ser obtido com outra estrutura? Desvios condicionais?

 Permite ao programador especificar que um


programa deve repetir uma ação enquanto alguma
condição permanecer verdadeira
Introdução
6

Há, basicamente, três tipos de estruturas de repetição

 Para (FOR)

 Enquanto (WHILE)

 Faça Enquanto (DO - WHILE)

 break em estrutura de repetição


Estrutura de Repetição - Para (for)
7

 É uma estrutura de repetição que repete a execução


de uma dada sequência de instruções n vezes, sendo n
conhecido

 Sintaxe
for(inicializações; condição de manutenção da repetição; incrementos){
(sequência de instruções)
}
Estrutura de Repetição - Para (for)
8

 Sintaxe
for(inicializações; condição de manutenção da repetição; incrementos){
sequência de instruções
}
Primeiro o sistema realiza as inicializações
Estrutura de Repetição - Para (for)
9

 Sintaxe
for(inicializações; condição de manutenção da repetição; incrementos){
sequência de instruções
}
Em seguida, o sistema avalia a expressão lógica que
define as condições de manutenção da repetição.
Se for verdadeira, a sequência de instruções é
executada
Estrutura de Repetição - Para (for)
10

 Sintaxe
for(inicializações; condição de manutenção da repetição; incrementos){
sequência de instruções
}
Por fim, o sistema realiza as incrementações...
Estrutura de Repetição - Para (for)
11

 Sintaxe
for(inicializações; condição de manutenção da repetição; incrementos){
sequência de instruções
}
...e as condições de manutenção da repetição são
novamente avaliadas
Estrutura de Repetição - Para (for)
12

 Exemplo 1
Código Saída
#include <iostream>
using namespace std;
?
int main() {
int i;

for(i=1; i<=10 ; i=i+1){


cout<< i <<endl;
}
return 0;
}
Estrutura de Repetição - Para (for)
13

 Exemplo 1
Código Saída
#include <iostream> 1
using namespace std; 2
int main() { 3
int i; 4
5
for(i=1; i<=10 ; i=i+1){ 6
cout<< i <<endl;
}
7
return 0; 8
} 9
10
Estrutura de Repetição - Para (for)
14

 Exemplo 2
Código Saída
#include <iostream>
using namespace std;
?
int main() {
int i;

for(i=10; i>=0 ; i=i-2){


cout<< i <<endl;
}
return 0;
}
Estrutura de Repetição - Para (for)
15

 Exemplo 2
Código Saída
#include <iostream>
using namespace std;
10
8
int main() {
int i; 6
for(i=10; i>=0 ; i=i-2){ 4
cout<< i <<endl;
} 2
return 0; 0
}
Estrutura de Repetição - Para (for)
16

 Exemplo 3
Código Saída
#include <iostream>
using namespace std;
?
int main() {
int i;

for(i=1; i<=10 ; i=i+20){


cout<< i <<endl;
}
return 0;
}
Estrutura de Repetição - Para (for)
17

 Exemplo 3
Código Saída
#include <iostream>
using namespace std;
1
int main() {
int i;

for(i=1; i<=10 ; i=i+20){


cout<< i <<endl;
}
return 0;
}
Estrutura de Repetição - Para (for)
18

 Exemplo 3
Código Saída
#include <iostream>
using namespace std;
?
int main() {
int i, j;

for(i=1,j=5; i+j!=10 ; i++,j++){


cout<< i+j <<endl;
}
return 0;
}
Estrutura de Repetição - Para (for)
19

 Exemplo 3
Código Saída
#include <iostream>
using namespace std;
6
8
int main() {
int i, j;

for(i=1,j=5; i+j!=10 ; i++,j++){


cout<< i+j <<endl;
}
return 0;
}
Estrutura de Repetição
20
enquanto (while)
 É uma estrutura que repete uma sequência de
instruções enquanto uma determinada condição for
satisfeita (verdadeira)
 Se condição for falsa, o controle passa para a próxima
sequência de instruções fora do laço enquanto

 Sintaxe
while (expressão lógica){
sequência de instruções
}
Estrutura de Repetição
21
Enquanto (while)
while (expressão lógica){
sequência de instruções
}

 Sequência de instruções é executada enquanto o valor


da expressão for verdadeiro
 Quando não será verdadeiro?
◼ Quando e como a condição será falsa?
Estrutura de Repetição
22
Enquanto (while)
Exemplo 1
Código Saída
#include <iostream>
using namespace std;
?
int main() {
int i=0;

while(i<10){
cout<< i <<endl;
}
return 0;
}
Estrutura de Repetição
23
Enquanto (while)
Exemplo 1
Código Saída
#include <iostream> 0
using namespace std; 0
0
int main() { 0
int i=0; 0
0
while(i<10){ 0
cout<< i <<endl; 0
} 0
return 0; 0
} 0
...
Estrutura de Repetição
24
Enquanto (while)
Exemplo 2
Código Saída
#include <iostream>
using namespace std;
?
int main() {
int i=0;

while(i<10){
cout<< i <<endl;
i++;
}
return 0;
}
Estrutura de Repetição
25
Enquanto (while)
Exemplo 2
Código Saída
#include <iostream> 0
using namespace std; 1
int main() { 2
int i=0; 3
4
while(i<10){ 5
cout<< i <<endl;
i++;
6
} 7
return 0; 8
} 9
Estrutura de Repetição
26
Enquanto (while)
Exemplo 3
Código Saída
#include <iostream>
using namespace std;
?
int main() {
int i=10;

while(i<10){
cout<< i <<endl;
i++;
}
return 0;
}
Estrutura de Repetição
27
Enquanto (while)
Exemplo 3
Código Saída
#include <iostream>
using namespace std;

int main() {
int i=10;

while(i<10){
cout<< i <<endl;
i++;
}
return 0;
}
Faça - Enquanto (do - while)
28

 O comando “do while” define uma estrutura de


repetição que garante que uma sequência seja
executada ao menos uma vez
 Testa a condição somente no final

 Sintaxe
do{
sequência de instruções
}
while(expressão lógica);
Faça - Enquanto (do - while)
29

 Exemplo 1
Código Saída
#include <iostream>
using namespace std;
?
int main() {
int i=1;

do {
cout<< i <<endl;
}
while(i<=2);
return 0;
}
Faça - Enquanto (do - while)
30

 Exemplo 1
Código Saída
#include <iostream> 1
using namespace std; 1
1
int main() { 1
int i=1; 1
1
do { 1
cout<< i <<endl; 1
} 1
while(i<=2); 1
return 0; ...
}
Faça - Enquanto (do - while)
31

 Exemplo 2
Código Saída
#include <iostream>
using namespace std; ?
int main() {
int i=1;

do {
cout<< i <<endl;
i++;
}
while(i<=2);
return 0;
}
Faça - Enquanto (do - while)
32

 Exemplo 2
Código Saída
#include <iostream>
using namespace std; 1
int main() { 2
int i=1;

do {
cout<< i <<endl;
i++;
}
while(i<=2);
return 0;
}
O Comando break
33
em Estruturas de Repetição
 Do mesmo modo que break interrompe a execução de
instrução(ou instruções) dentro de um “case” no “switch”

 A execução de um comando break dentro de uma


estrutura de repetição interrompe as execuções de uma
sequência de instruções do laço

 Exemplo: Imprimir o maior número inteiro, de um


número dado, que seja múltiplo de 10?
O Comando break
34
em Estruturas de Repetição
 Exemplo
Código Saída
#include <iostream>
using namespace std; ?
int main() {
int i, num;
cin>>num; // 11? 19? 0 ? 10 ?
for(i=num;i<num+10;i++){
if(i%10==0){
cout<<i<<endl;
break;
}
}
return 0;
}
…e quando não sabemos o número de
35
repetições?
 Use while (programa que calcula a média de x alunos)
Código
#include <iostream>
using namespace std;

int main() {
float n1,n2,n3,n4,media;
int continua=1;
while(continua != 0) {
cin >> n1 >> n2 >> n3 >> n4;
media = (n1+n2+n3+n4)/4.0;
if(media >= 7.0)
cout << "Aluno aprovado! Parabens!\n";
else
cout << "Aluno reprovado! Estude mais!\n";
cin >> continua;
}
return 0;
}

Você também pode gostar