Loop While
Parte da seção Fundamentos do Journey de Swift da Coddy — lição 43 de 86.
Às vezes você não sabe exatamente quantas vezes um loop deve ser executado. Em vez disso, você quer continuar repetindo enquanto uma condição permanecer verdadeira. É aí que entra o loop while.
var count = 1
while count <= 3 {
print(count)
count += 1
}
// Saída: 1, 2, 3 (cada um em uma nova linha)O loop verifica a condição count <= 3 antes de cada iteração. Enquanto ela for verdadeira, o código interno é executado. Assim que a condição se torna falsa, o loop para.
Tome cuidado: se a condição nunca se tornar falsa, você criará um loop infinito! Certifique-se sempre de que algo dentro do loop eventualmente altere a condição:
var number = 10
while number > 0 {
print(number)
number -= 2
}
// Saída: 10, 8, 6, 4, 2Use um loop while quando o número de iterações depende de uma condição que muda durante a execução, em vez de um intervalo fixo.
Desafio
FácilEscreva uma função countdownSum que recebe start e retorna a soma de todos os números de start até 1.
Use um loop while para fazer a contagem regressiva a partir do número inicial, adicionando cada valor a um total acumulado até chegar a zero.
Lógica:
- Comece com o número fornecido
- Enquanto o número for maior que 0, adicione-o à soma e diminua em 1
- Retorne a soma final
Parâmetros:
start(Int): O número inicial para a contagem regressiva
Retornos: A soma de todos os números de start até 1 (Int)
Por exemplo, se start for 5, a função calcula 5 + 4 + 3 + 2 + 1 = 15 e retorna 15.
Folha de consulta
Um loop while repete o código enquanto uma condição for verdadeira:
var count = 1
while count <= 3 {
print(count)
count += 1
}
// Saída: 1, 2, 3A condição é verificada antes de cada iteração. Quando ela se torna falsa, o loop para.
Certifique-se sempre de que a condição eventualmente se torne falsa para evitar loops infinitos:
var number = 10
while number > 0 {
print(number)
number -= 2
}
// Saída: 10, 8, 6, 4, 2Use loops while quando o número de iterações depende de uma condição variável em vez de um intervalo fixo.
Experimente você mesmo
func countdownSum(start: Int) -> Int {
// Escreva o código aqui
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores Parte 1
Operadores AritméticosOperador de MóduloAtribuição CompostaRecapitulação - Matemática SimplesOperadores de Comparação7IO Básico
Função PrintInterpolação de StringsEntrada ReadLineConversão de TiposRecapitulação - Até 120Recapitulação - Verdadeiro ou Falso10Funções
Declarar uma FunçãoParâmetros e ArgumentosValores de RetornoRótulos de ArgumentosRecapitulação - Função SigmaRecapitulação - Função de ValidaçãoValores Padrão13Iterando sobre Sequências
Iterando sobre ElementosO Método EnumeratedIterando sobre Strings P1Iterando sobre Strings P22Variáveis
Let vs VarAnotações de TipoNúmerosStringBooleanosConvenções de NomenclaturaRecapitulação - Inicializar Variáveis5Operadores Parte 2
Operadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 3Operador Ternário8Calculadora de Divisão de Conta
Mensagem de Boas-vindasObtendo Entrada11FizzBuzz com um Diferencial
Visão Geral do JogoA Função FizzBuzz3Opcionais
O que são OpcionaisDesembrulhando com If LetGuard LetOperador de Coalescência NulaRecapitulação - Desembrulho Seguro6Tomada de Decisão
Estrutura IfIf - ElseRecapitulação - Calculadora SimplesEstrutura SwitchSwitch com Intervalos9Loops
Loop For-InLoop WhileLoop Repeat-WhileBreakContinueRecapitulação - FatorialIntervalos em LoopsLoop AninhadoRecapitulação - Entrada Dinâmica12Fundamentos de Arrays
Declarando um ArrayAcessando ElementosModificando ArraysMétodos de ArrayRecapitulação - Lista de ProdutosRecapitulação - Array InvertidoTuplas15Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do Programa