1. 学ぶ
  2. /
  3. コース
  4. /
  5. Optimizing R Code with Rcpp

Connected

演習

Předčasné ukončení smyčky for

Někdy se může stát, že budeš chtít smyčku ukončit dřív, než proběhnou všechny iterace. Například tvůj kód může splnit svůj úkol ještě předtím, než se vyzkouší všechny možnosti. Klíčové slovo break ti umožní smyčku předčasně opustit.

Vzor kódu vypadá takto:

for(int i = 0; i < n; i++) {
  // Do something

  // Test for exiting early
  if(breakout_condition) break;

  // Otherwise carry on as usual
}

V tomto cvičení upravíš předchozí příklad tak, aby se smyčka zastavila, jakmile se hodnota přestane výrazně měnit (na základě zadané prahové hodnoty). Funkce byla upravena tak, aby vracela List (o Listech se dozvíš víc v další kapitole) – díky tomu uvidíš přibližnou hodnotu v každé iteraci.

Tato upravená funkce sqrt_approx() vrací jak odmocninu, tak počet iterací potřebných k dosažení výsledku na základě prahové hodnoty.

指示

100 XP

Přidej podmínku pro break, která se spustí, pokud je výsledek dostatečně přesný (na základě proměnné is_good_enough).