randRangeWeighted(3, 8, 1, 1 / 6) 1===D_PARENT?randRange(1,2):randRange(D_PARENT+1,2*D_PARENT-1) N_PARENT / D_PARENT randRange(3, 8) randRange(3, 8) randRangeExclude(2,2*D_OFFSPRING_1-1,[D_OFFSPRING_1]) randRangeExclude(2,2*D_OFFSPRING_2-1,[D_OFFSPRING_2]) N_PARENT * getLCM(D_OFFSPRING_1, D_OFFSPRING_2) / D_PARENT
D_PARENT === 1 ? N_PARENT : mixedOrImproper(N_PARENT, D_PARENT) mixedOrImproper(N_OFFSPRING_1, D_OFFSPRING_1) mixedOrImproper(N_OFFSPRING_2, D_OFFSPRING_2) N_OFFSPRING_1 / D_OFFSPRING_1 N_OFFSPRING_2 / D_OFFSPRING_2 OFFSPRING_1 / PARENT OFFSPRING_2 / PARENT getLCM(D_OFFSPRING_1, D_OFFSPRING_2) LCM / D_PARENT LCM / D_OFFSPRING_1 LCM / D_OFFSPRING_2 new Plural(function(e){return $.ngettext({lang:"es-ES",messages:["unidad\n\nunidades","unidades"]},e)})

El bloque inicial que se muestra abajo tiene CODE_PARENT D_PARENT === 1 ? plural_form(UNIT, N_PARENT) : plural_form(UNIT) de longitud. Usa las herramientas a la derecha para convertir el bloque inicial en los dos bloques objetivo que tienen CODE_OFFSPRING_1 unidades de longitud y CODE_OFFSPRING_2 unidades de longitud. Tu progreso se verá reflejado en el cambio de longitud del bloque de prueba.

Bloque inicial:

initSliceClone(["current_block_1","current_block_2"]),init({range:[[0,1],[0,1]],scale:[500,25]}),rectchart([1,0],["#e00","#999"])

Bloque de prueba 1:

init({range:[[0,1],[0,1]],scale:[500,25]}),rectchart([1,0],["#e00","#999"])

Bloque objetivo 1:

init({range:[[0,1],[0,1]],scale:[500*ANSWER_1,25]}),rectchart([1,0],[BLUE,"#999"])

Bloque de prueba 2:

init({range:[[0,1],[0,1]],scale:[500,25]}),rectchart([1,0],["#e00","#999"])

Bloque objetivo 2:

init({range:[[0,1],[0,1]],scale:[500*ANSWER_2,25]}),rectchart([1,0],[ORANGE,"#999"])
Cortar el bloque inicial en
1 pedazo
Copiar el bloque de prueba 1
1 vez
Copiar el bloque de prueba 2
1 vez
[pieces,times.current_block_1,times.current_block_2]
var e=roundTo(3,guess[1]/guess[0]),r=roundTo(3,guess[2]/guess[0]),a=roundTo(3,ANSWER_1);return answer2=roundTo(3,ANSWER_2),e===a&&r===answer2
pieces=guess[0],times.current_block_1=guess[1],times.current_block_2=guess[2],updateGraphAndAnswer()
guess=guess.length?guess:[1,1,1],$("#pieces").text(plural(guess[0],"piece")),$("#current_block_1_times").text(plural(guess[1],"time")),$("#current_block_2_times").text(plural(guess[2],"time"))

Queremos cortar nuestro bloque inicial en una pedazo que se pueda copiar de tal forma que podamos construir tanto el bloque objetivo 1 como el bloque objetivo 2.

El mínimo común denominador de D_OFFSPRING_1 y D_OFFSPRING_2 (el denominador de los bloques objetivo) es LCM. Por lo tanto puedes copiar un bloque de \dfrac{1}{LCM} unidades para construir ambos bloques objetivo.

El bloque inicial tiene una longitud de CODE_PARENT, que puede reescribirse como:

\qquadfraction(D_PARENT, D_PARENT) + fraction(N_PARENT - D_PARENT, D_PARENT) = fraction(N_PARENT, D_PARENT)

We can rewrite the starting block length in terms of \dfrac{1}{LCM} units:

\qquad fraction(N_PARENT, D_PARENT) \times fraction(PARENT_MULTI, PARENT_MULTI) = fraction(SLICES, LCM)

Si cortamos el bloque inical en SLICES pedazos iguales, cada pedazo tendrá una longitud de fraction(1, LCM) unidades.

El bloque objetivo 1 tiene una longitud de CODE_OFFSPRING_1 unidades, que puede reescribirse como:

\qquadfraction(D_OFFSPRING_1, D_OFFSPRING_1) + fraction(N_OFFSPRING_1 - D_OFFSPRING_1, D_OFFSPRING_1) = fraction(N_OFFSPRING_1, D_OFFSPRING_1)

We can rewrite the goal block 1 length in terms of \dfrac{1}{LCM} units:

\qquad fraction(N_OFFSPRING_1, D_OFFSPRING_1) \times fraction(OFFSPRING_1_MULTI, OFFSPRING_1_MULTI) = fraction(OFFSPRING_1_MULTI * N_OFFSPRING_1, LCM)

Si copiamos un pedazo con una longitud de \dfrac{1}{LCM} unidades OFFSPRING_1_MULTI * N_OFFSPRING_1 veces, obtenemos fraction(OFFSPRING_1_MULTI * N_OFFSPRING_1, LCM) unidades, que es la longitud del bloque objetivo 1.

We can rewrite the goal block 2 length in terms of \dfrac{1}{LCM} units:

\qquad fraction(N_OFFSPRING_2, D_OFFSPRING_2) \times fraction(OFFSPRING_2_MULTI, OFFSPRING_2_MULTI) = fraction(OFFSPRING_2_MULTI * N_OFFSPRING_2, LCM)

Si copiamos un pedazo de longitud \dfrac{1}{LCM} unidades OFFSPRING_2_MULTI * N_OFFSPRING_2 veces, obtenemos fraction(OFFSPRING_2_MULTI * N_OFFSPRING_2, LCM) unidades, que es la longitud del bloque objetivo 2.

Por lo tanto la solución es cortar el bloque inicial en SLICES pedazos, copiar el bloque de prueba 1 OFFSPRING_1_MULTI * N_OFFSPRING_1 veces y el bloque de prueba 2 OFFSPRING_2_MULTI * N_OFFSPRING_2 veces.