Kom igångKom igång gratis

Break och next

För att avsluta genomgången av slingor återvänder vi till break, och det relaterade begreppet next. Precis som med repeat- och while-slingor kan du avbryta en for-slinga helt med break. Om du däremot bara vill hoppa över den aktuella iterationen och fortsätta slingan använder du next. Det kan vara användbart när slingan stöter på ett fel, men du inte vill att det ska stoppa hela körningen.

for (value in sequence) {
    if(next_condition) {
        next
    }
    code
    if(breaking_condition) {
        break
    }
}

Du behöver inte använda break och next samtidigt – exemplet ovan visar bara den allmänna strukturen.

Tanken med att använda next i början, innan koden körs, är att kontrollera om ett problem finns innan det uppstår.

Den här övningen är en del av kursen

R för finans – fortsättningskurs

Visa kurs

Övningsinstruktioner

Vektorn apple finns i din arbetsmiljö.

  • Skriv ut apple. Det finns några saknade värden!
  • Fyll i luckorna i slingan så att den gör följande:
    • Kontrollera om value är NA. Om så är fallet, gå till nästa iteration.
    • Kontrollera om value är större än 117. Om så är fallet, avbryt och sälj!
    • Annars skriv ut "Nothing to do here!".

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Print apple
___

# Loop through apple. Next if NA. Break if above 117.
for (value in apple) {
    if(is.na(___)) {
        print("Skipping NA")
        next
    }
    
    if(value > ___) {
        print("Time to sell!")
        break
    } else {
        print(___)
    }
}
Redigera och kör kod