Buscar

Estrutura de Repetição em C++

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

Aula 7 - Estrutura de repetição – Parte I
INTRODUÇÃO
A estrutura de repetição, junto com as estruturas sequenciais e de decisão, forma a trinca de estruturas fundamentais
de desenvolvimento em qualquer linguagem de programação.
É interessante notar o quanto fazemos tarefas repetidas no dia a dia. Todos os dias acordamos, estudamos,
trabalhamos, dormimos etc.
Na programação, não é diferente. Jogar um “joguinho” no computador é uma estrutura de repetição, assim como o
próprio sistema operacional funciona em uma estrutura de repetição. Existem milhares de exemplos.
Vamos começar a estudá-los nesta aula.
Disciplina Portal http://estacio.webaula.com.br/cursos/gra007/aula7.html
1 of 9 05/05/2019 14:03
Vamos lá?
OBJETIVOS
Aplicar os conhecimentos adquiridos para escrever programas com a estrutura for e com os operadores de incremento
e decremento.
Disciplina Portal http://estacio.webaula.com.br/cursos/gra007/aula7.html
2 of 9 05/05/2019 14:03
REPETIÇÕES
Vamos a mais uma importante estrutura de programação: a estrutura de repetição.
Chico Buarque diz, na música Cotidiano:
“todo dia ela faz tudo sempre igual, me sacode às seis horas da manhã, me sorri um sorriso pontual”...
Concorda que essa é uma repetição?
Repetições infinitas não são muito agradáveis, seja no mundo real ou em programas de computador.
Quer ouvir a música? Acesso o link: Chico Buarque - Cotidiano (glossário)
Vamos a um exemplo mais prático. Creio que você sabe jogar o famoso “jogo da velha”, certo?
Olha só como é o jogo:
Pergunto a você:
- Quantas jogadas no máximo podemos ter em um jogo da velha?- Como o jogo começa?
Como termina?
Em breve, você terá condições de criar um jogo da velha bem bacana em C++, sabia?
Até lá, essas perguntas deverão estar respondidas. Um jogo como este, ou um jogo de videogame qualquer, é uma
estrutura de repetição.
Disciplina Portal http://estacio.webaula.com.br/cursos/gra007/aula7.html
3 of 9 05/05/2019 14:03
No mundo empresarial, temos milhares de situações envolvendo repetições: o cálculo de uma folha de pagamento,
uma linha de produção em uma fábrica, um projeto de desenvolvimento de software etc.
Ah, respondendo às perguntas do jogo da velha:
Temos no máximo nove jogadas; se o jogador “X” começar, ele terá uma jogada a mais. Idem para o jogador “O”. Isto
se o jogo não acabar antes;
O jogo termina com todas as posições em branco, esperando ser preenchidas com “X” ou “O”;- O jogo finaliza quando
algum dos jogadores ganha ou quando há um empate e ninguém faz uma sequência.
Trocando para a linguagem de computador, teríamos:
A palavra repetir é muito importante no exemplo.
É ela que vai fazer com que a repetição ocorra nove vezes, que é um número conhecido.
A cada repetição, quatro atividades serão feitas (jogada do “X”, verifica se ganhou; jogada do “Y”, verifica se
ganhou). Sendo assim, temos nossa primeira forma de fazer repetição em C++.
A ESTRUTURA FOR
Qual é a tradução de for?
“Para”, certo? Pois bem, a estrutura for é muito
usada nas repetições, principalmente nas
ocasiões nas quais sabemos a quantidade de
repetições que ocorrerão.
Disciplina Portal http://estacio.webaula.com.br/cursos/gra007/aula7.html
4 of 9 05/05/2019 14:03
Esse tipo de repetição é chamada de repetição
controlada por contador, pois teremos uma
variável que determinará o número de
repetições daquela parte do programa.
Observe: é um pouco estranho ter duas
repetições e meia, ou “repita 10 vezes e meia”,
certo? Logo, esta variável tem que ser inteira.
Não podemos ter uma variável decimal para
contar quantas repetições teremos.
EXEMPLO
Vamos a um exemplo em C++:O exemplo mais simples que podemos fazer é criar um programa que conta de 1 a 10.
Veja só:
A execução do programa gera o seguinte resultado:
Disciplina Portal http://estacio.webaula.com.br/cursos/gra007/aula7.html
5 of 9 05/05/2019 14:03
Simples, não é?
Observe a sintaxe do for em C++:for (inicialização ; condição ; incremento)
O comando for em C++ é composto por três partes, e cada uma delas é separada por ponto e vírgula:
Inicialização
declaramos uma variável do tipo inteiro (sempre) e atribuímos um valor inicial;
Condição
é uma expressão relacional que determina quando a repetição acaba. Quando a condição se
tornar falsa, a execução do programa continua no comando seguinte ao for;
Incremento
configura como a variável de controle da repetição varia cada vez que a repetição é
executada. Pode ser positivo ou negativo.
O for do primeiro exemplo está mostrado na linha 5. Vamos dar uma pausa no for para tratar de um assunto que está
bastante relacionado com as estruturas de repetição em geral.
Clique aqui (glossário) e saiba mais.
O QUE PODEMOS FAZER COM O FOR?
Agora que vimos o que podemos fazer com os operadores em C++, olha só o que podemos fazer com o for:
Alterar a variável de controle de 1 a 100 incrementando de 1for (int i=1; i<=100; i++)
Alterar a variável de controle de 100 a 1 em decrementos de 1for (int i=100; i>=1; i--)
Alterar a variável de controle de 8 a 88 em incrementos de 8for (int i=8; i<=88; i+=8)
Alterar a variável de controle de 20 a 2 em decrementos de 2for (int i=20; i>=2; i-=2)
Alterar a variável de controle sobre uma sequência de valores. Por exemplo: 2,5,8,11,14,17,20for (int i=2; i<=20; i+=3)
Alterar a variável de controle sobre uma sequência de valores. Por exemplo: 99,88,77,66,55,44,33,22,11,0for (int i=99;
i>=0; i -=11)
O comando for é usado para várias finalidades, em qualquer linguagem de programação. Uma das aplicações é somar
valores.
Observe o exemplo a seguir:
Disciplina Portal http://estacio.webaula.com.br/cursos/gra007/aula7.html
6 of 9 05/05/2019 14:03
A execução do programa gera o seguinte resultado:
Embora o exemplo seja muito simples, ele mostra um uso muito comum desse tipo de estrutura de repetição: usar o
for para somar valores e armazenar em uma variável que está dentro da repetição.
Vamos fazer outro exemplo, e com ele, ajudar uma criança a aprender a tabuada. A ideia do programa é obter um valor
do usuário referente à tabuada que ele deseja estudar e “tomar” a tabuada do número desejado.
Clique aqui (glossário) e saiba mais.
VÍDEO
Como vimos no vídeo e na listagem, o programa cria uma repetição de 1 a 10 entre as linhas 13 a 24. Veja que nem
sempre o for faz repetições somente com uma linha, como vimos nos exemplos anteriores. Neste programa e na
maioria deles, o bloco de repetição pode ser bem grande.
Para cada repetição, o programa pergunta o resultado da multiplicação do número da tabuada e do número da
repetição atual. Se o usuário acertar, a variável acertos é acumulada, senão a variável erros é incrementada.
Para isso, usamos uma estrutura de decisão composta (lembra?). Ou seja, misturamos nesse programa a estrutura de repetição
com a estrutura de decisão vista anteriormente.
No final do programa, nas linhas 25 a 30 é feita uma pequena análise do desempenho do usuário durante o programa. O programa
Disciplina Portal http://estacio.webaula.com.br/cursos/gra007/aula7.html
7 of 9 05/05/2019 14:03
“premia” o usuário que acertou todas as respostas; se houve um erro ou mais, ele mostra a quantidade de erros (de acordo com a
variável erros) e a quantidade de acertos (variável acertos).
Existem muitas coisas que dá para fazer com o for. Mas por enquanto, para aprender como ele funciona, está ótimo.
1- O que o seguinte pedaço de programa faz?
Escreve os números de 1 a 10, na mesma linha;
Escreve os números de 1 a 10, pulando linha;
Escreve os números de 1 a 11, na mesma linha;
Escreve os números de 1 a 11, pulando linha;
Nada, há um erro de sintaxe.
Justificativa
2. Em qual situação abaixo podemos usar um comando de repetição?
Verificar se um número é par ou ímpar.
Determinar a idade em dias de uma pessoa.
Calcular a folha de pagamentode uma empresa.
Fazer a conversão de dólar para real.
Calcular a velocidade média de um carro, dados a distância e o tempo.
Justificativa
3. Quero contar os números pares de 1 a 100. Como faço isto usando um for?
for (int i=1; i = 100; i++)
for (int i=1; i<=100;i+2)
for (int i=1; i<100; i+=2)
for (int i=0; i<=100; i+=2)
for (int i=0; i<=100; i++)
Justificativa
Disciplina Portal http://estacio.webaula.com.br/cursos/gra007/aula7.html
8 of 9 05/05/2019 14:03
Disciplina Portal http://estacio.webaula.com.br/cursos/gra007/aula7.html
9 of 9 05/05/2019 14:03

Continue navegando