Skip to content

Commit

Permalink
Merge pull request #182 from bjc-edc/merge-2023-11-17
Browse files Browse the repository at this point in the history
Merge 2023 11 17
  • Loading branch information
cycomachead authored Nov 17, 2023
2 parents 481fc54 + 56e3bf6 commit 5893039
Show file tree
Hide file tree
Showing 56 changed files with 306 additions and 292 deletions.
3 changes: 1 addition & 2 deletions course/bjc4nyc.es.html
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ <h2>La belleza y alegría de la informática&mdash;<em>BJC</em></h2>
</div>
<div class="todo">Links for Development Process:
<ul>
<li><a href="/bjc-r/topic/topic.es.html?topic=nyc_bjc/7-recursion-trees-fractals.es.topic" title="Unidad 7: Fractales y recursión">Unidad 7: Fractales y recursión</a></li>
<li><a href="/bjc-r/topic/topic.es.html?topic=nyc_bjc/8-recursive-reporters.es.topic" title="Unidad 8: Funciones recursivas">Unidad 8: Funciones recursivas</a></li>
</ul>
</div>
Expand All @@ -59,7 +58,7 @@ <h2>La belleza y alegría de la informática&mdash;<em>BJC</em></h2>
<a href="/bjc-r/topic/topic.es.html?topic=nyc_bjc/6-how-computers-work.es.topic" title="Unidad 6: ¿Cómo funcionan las computadoras?">Unidad 6: ¿Cómo funcionan las computadoras?</a>
</div>
<div class="topic_link">
<span href="/bjc-r/topic/topic.es.html?topic=nyc_bjc/7-recursion-trees-fractals.es.topic" title="Unidad 7: Fractales y recursión">Unidad 7: Fractales y recursión</span>
<a href="/bjc-r/topic/topic.es.html?topic=nyc_bjc/7-recursion-trees-fractals.es.topic" title="Unidad 7: Fractales y recursión">Unidad 7: Fractales y recursión</a>
</div>
<div class="topic_link">
<span href="/bjc-r/topic/topic.es.html?topic=nyc_bjc/8-recursive-reporters.es.topic" title="Unidad 8: Funciones recursivas">Unidad 8: Funciones recursivas</span>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ <h4><strong>Crear una variable global</strong></h4>
<li>Haz que el programa <code>cambie</code> la puntuación en 1 punto cada vez que se haga clic sobre el personaje.</li>
<div class="examFullWidth">
<div class="pseudop">
<img class="inline nopadtb" src="/bjc-r/img/2-complexity/change-score-by-1.es.png" height="26" alt="incrementar (puntuación) en (1)" title="incrementar (puntuación) en (1))" /> (lo que significa <img src="/bjc-r/img/2-complexity/set-score-to-score-plus-one.es.png" height="40" alt="asignar a(puntuación) el valor (puntuación+1)" title="asignar a(puntuación) el valor (puntuación+1)">) se escribiría como <pre class="inline">puntuación &leftarrow; puntuación + 1</pre> o <img class="inline" src="/bjc-r/img/2-complexity/score-increment-blocktran.es.png" alt="puntuación ← puntuación + 1" title="puntuación ← puntuación + 1" />.
<img class="inline nopadtb" src="/bjc-r/img/2-complexity/change-score-by-1.es.png" alt="incrementar (puntuación) en (1)" title="incrementar (puntuación) en (1))" /> (lo que significa <img src="/bjc-r/img/2-complexity/set-score-to-score-plus-one.es.png" alt="asignar a(puntuación) el valor (puntuación+1)" title="asignar a(puntuación) el valor (puntuación+1)">) se escribiría como <pre class="inline">puntuación &leftarrow; puntuación + 1</pre> o <img class="inline" src="/bjc-r/img/2-complexity/score-increment-blocktran.es.png" alt="puntuación ← puntuación + 1" title="puntuación ← puntuación + 1" />.
</div>
</div>
</ol>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ <h4><strong>Making a Global Variable</strong></h4>
<li>Make the program <code>change</code> the score by 1 whenever the sprite is clicked.</li>
<div class="examFullWidth">
<div class="pseudop">
<img class="inline nopadtb" src="/bjc-r/img/2-complexity/change-score-by-1.png" height="26" alt="change (score) by (1)" title="change (score) by (1)" /> (which means <img src="/bjc-r/img/2-complexity/set-score-to-score-plus-one.png" height="40" alt="set(score) to (score+1)" title="set(score) to (score+1)">) would be written as <pre class="inline">score &leftarrow; score + 1</pre> or <img class="inline" src="/bjc-r/img/2-complexity/score-increment-blocktran.png" alt="score ← score + 1" title="score ← score + 1" />.
<img class="inline nopadtb" src="/bjc-r/img/2-complexity/change-score-by-1.png" alt="change (score) by (1)" title="change (score) by (1)" /> (which means <img src="/bjc-r/img/2-complexity/set-score-to-score-plus-one.png" alt="set(score) to (score+1)" title="set(score) to (score+1)">) would be written as <pre class="inline">score &leftarrow; score + 1</pre> or <img class="inline" src="/bjc-r/img/2-complexity/score-increment-blocktran.png" alt="score ← score + 1" title="score ← score + 1" />.
</div>
</div>
</ol>
Expand Down
4 changes: 2 additions & 2 deletions cur/programming/7-recursion/1-trees/1-recursive-tree.es.html
Original file line number Diff line number Diff line change
Expand Up @@ -103,14 +103,14 @@ <h2>El árbol recursivo</h2>
<p>Todos estos bloques se ven esencialmente iguales excepto que <code>árbol 5</code> usa <code>árbol 4</code>,mientras que <code>árbol 4</code> usa <code>árbol 3</code>, y así sucesivamente. Entonces tiene sentido preguntarse si podemos reemplazar todos estos bloques con un solo bloque <code>árbol</code>, usando una variable para el número que cambia.</p>
<div class="vocabFullWidth">
<p>Usar un bloque dentro de sí mismo se llama <strong>recursividad</strong>.</p>
<div class="endnote">Aprendiste sobre la recursiviad en <a href="/bjc-r/cur/programming/3-lists/1-abstraction/3-fractal-art-recursive.html?topic=nyc_bjc%2F3-lists.topic&course=bjc4nyc.html&novideo&noassignment" title="Unidad 3 Laboratorio 1 Página 3: Usar la abstracción para anidar triángulos">Unidad 3 Laboratorio 1 Página 3: Usar la abstracción para anidar triángulos</a>.</div>
<div class="endnote">Aprendiste sobre la recursividad en <a href="/bjc-r/cur/programming/3-lists/1-abstraction/3-fractal-art-recursive.html?topic=nyc_bjc%2F3-lists.topic&course=bjc4nyc.html&novideo&noassignment" title="Unidad 3 Laboratorio 1 Página 3: Usar la abstracción para anidar triángulos">Unidad 3 Laboratorio 1 Página 3: Usar la abstracción para anidar triángulos</a>.</div>
</div></div>


<!--<div class="forYouToDo">
<ol start="6">
<li>
It might seem that all we need to do is build this (with the parts stuck together instead of the gaps that we show). In fact, this is not quite right, but it's worth trying to see what happens. Build it and try <code>árbol</code> with the input nivels of 5, 3, and 1 (still using tamaño 50).<br />
It might seem that all we need to do is build this (with the parts stuck together instead of the gaps that we show). In fact, this is not quite right, but it's worth trying to see what happens. Build it and try <code>árbol</code> with the input nivels of 5, 3, and 1 (still using size 50).<br />
<img src="/bjc-r/img/6-recursion/árbol-recursive-without-control.es.png" alt="recursive árbol model without stop rule">
</li>
<li>
Expand Down
2 changes: 1 addition & 1 deletion cur/programming/7-recursion/1-trees/2-base-case.es.html
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ <h2>El caso base</h2>
</p>
</div>
<div>
<span>Betsy:</span> ¡Así que nuestra bloque de <code>árbol</code> recursivo tiene que hacer algo <em>diferente</em> en el nivel más bajo!
<span>Betsy:</span> ¡Así que nuestro bloque de <code>árbol</code> recursivo tiene que hacer algo <em>diferente</em> en el nivel más bajo!
</div>
<div>
<span>Gamal:</span> ¡Sí! Tiene que dibujar solo una línea sin agregar otra rama.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ <h2>Autoevaluación: Entradas de <code>árbol</code></h2>

<div class="choice" identifier="c0">
<div class="text">
<b>Tel programa nunca dejará de ejecutarse y se dibujarán muchas ramas diferentes.</b>
<b>El programa nunca dejará de ejecutarse y se dibujarán muchas ramas diferentes.</b>
</div>
<div class="feedback">
El programa se detendrá. Intente ejecutar la función paso a paso utilizando las entradas proporcionadas.
Expand Down Expand Up @@ -195,7 +195,7 @@ <h2>Autoevaluación: Entradas de <code>árbol</code></h2>
</div>
</div>
</li>
<li><img class="inline" src="/bjc-r/img/icons/talk-with-your-partner.es.png" alt="Habla con tu compañero" title="Habla con tu compañero" />¿Cómo cambiarías la definición de <code>tree</code> para que no se quedara estancado en un bucle infinito incluso con una entrada negativa para <var>nivel</var>?</li>
<li><img class="inline" src="/bjc-r/img/icons/talk-with-your-partner.es.png" alt="Habla con tu compañero" title="Habla con tu compañero" />¿Cómo cambiarías la definición de <code>árbol</code> para que no se quede estancado en un bucle infinito incluso con una entrada negativa para <var>nivel</var>?</li>
</ol>
</div>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@
</head>

<body>
<h2>Autoevaluación: variaciones de <code>árbol</code></h2>
<h2>Autoevaluación: Variaciones de <code>árbol</code></h2>
<div class="learn">
<p><strong>En esta página</strong>, determinarás qué cambios a <code>árbol</code> podrían producir cambios a la imagen resultante.</p>
</div>
<p>Todas las imágenes de las preguntas de Autoevaluación más adelante están bastas en variaciones del procedimiento de <code>árbol</code> recursivo.<br />
<img class="indent" src="/bjc-r/img/7-recursion/quiztree.es.png" alt="nivel de árbol:(level#) tamaño:(tamaño#){si(level=1){mover(tamaño) pasos; mover(-1*tamaño) pasos}sino{move(tamaño) pasos; girar (15) grados; nivel de árbol:(nivel-1) tamaño:(tamaño*0.75); girar(15) grados; girar(15) grados; nivel de árbol:(nivel-1) tamaño:(tamaño*0.75); girar (15); mover(-1*tamaño) pasos}}" title="nivel de árbol:(level#) tamaño:(tamaño#){si(level=1){mover(tamaño) pasos; mover(-1*tamaño) pasos}sino{move(tamaño) pasos; girar (15) grados; nivel de árbol:(nivel-1) tamaño:(tamaño*0.75); girar(15) grados; girar(15) grados; nivel de árbol:(nivel-1) tamaño:(tamaño*0.75); girar (15); mover(-1*tamaño) pasos}}" />
<img class="indent" src="/bjc-r/img/7-recursion/quiztree.es.png" alt="nivel de árbol:(nivel#) tamaño:(tamaño#){si(nivel=1){mover(tamaño) pasos; mover(-1*tamaño) pasos}sino{move(tamaño) pasos; girar (15) grados; nivel de árbol:(nivel-1) tamaño:(tamaño*0.75); girar(15) grados; girar(15) grados; nivel de árbol:(nivel-1) tamaño:(tamaño*0.75); girar (15); mover(-1*tamaño) pasos}}" title="nivel de árbol:(nivel#) tamaño:(tamaño#){si(nivel=1){mover(tamaño) pasos; mover(-1*tamaño) pasos}sino{move(tamaño) pasos; girar (15) grados; nivel de árbol:(nivel-1) tamaño:(tamaño*0.75); girar(15) grados; girar(15) grados; nivel de árbol:(nivel-1) tamaño:(tamaño*0.75); girar (15); mover(-1*tamaño) pasos}}" />
<img class="indent noshadow" src="/bjc-r/img/7-recursion/tree-level5.jpg" alt="nivel de árbol: (5) tamaño: (100)-Árbol orientado hacia arriba con tronco y cuatro niveles de ramas" title="nivel de árbol: (5) tamaño: (100)-Árbol orientado hacia arriba con tronco y cuatro niveles de ramas"/>
</p>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ <h2>Hacer variaciones a tu árbol</h2>
y construye un bloque <img src="/bjc-r/img/7-recursion/return-sprite.es.png" height="46" alt="return objeto (sprite state)" title="return objeto (sprite state)"> que devuelve el objeto a su posición original.</div>
</ul>
</li>
<li>Cambia el grosor del lápiz entre niveles, de modo que el tronco sea muy grueso y las hojas delgadas.<br /><img src="/bjc-r/img/7-recursion/thicktree.png" alt="tree with thick trunk" title="tree with thick trunk"></li>
<li>Cambia el grosor del lápiz entre niveles, de modo que el tronco sea muy grueso y las hojas delgadas.<br /><img src="/bjc-r/img/7-recursion/thicktree.png" alt="árbol con tronco grueso" title="árbol con tronco grueso"></li>
<li>
Haz un tronco marrón y ramas y hojas verdes.<br />
<div class="sidenote">No tienes que conseguirlo exactamente como en la imagen.</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<head>
<meta charset="utf-8">
<script type="text/javascript" src="/bjc-r/llab/loader.js"></script>
<title>Unidad 7 Laboratorio 2: Proyectos de Recursividad, Página 1</title>
<title>Unidad 7 Laboratorio 2: Proyectos de recursividad, Página 1</title>
</head>

<body>
Expand Down Expand Up @@ -33,7 +33,7 @@ <h2>Triángulo fractal</h2>
<li>Abre tu proyecto "U3L1-ArteFractal"; y guárdalo como "U7L2-TriánguloFractal".<br /></li>
<li>Ejecuta <img class="noshadow" src="/bjc-r/img/7-recursion/triangle-size-175.es.png" alt="triángulo anidado, tamaño: (175)" title="triángulo anidado, tamaño: (175)" />. Luego, mira dentro del bloque y recuerda con tu compañero cómo funcionaba.</li>
<li>
<strong>Predice</strong> cómo cambiará la forma si cambias el 9 a <img class="noshadow" src="/bjc-r/img/7-recursion/size-gt-9.png" alt="(size)&gt;(9)" title="(size)>&gt;(9)" /> un 2 y ejecutas la instrucción de nuevo. Luego prueba y observa si hace lo que esperas.
<strong>Predice</strong> cómo cambiará la forma si cambias el 9 a <img class="noshadow" src="/bjc-r/img/7-recursion/size-gt-9.png" alt="(tamaño)&gt;(9)" title="(tamaño)>&gt;(9)" /> un 2 y ejecutas la instrucción de nuevo. Luego prueba y observa si hace lo que esperas.
<div class="endnote">
El bloque <code>instrucción atómica</code> (en la paleta de control amarilla) hace que los programas que contiene se ejecuten más
rápido al no permitir que se ejecuten otros programas ni actualizar la pantalla hasta que finalice.<br />
Expand All @@ -47,7 +47,7 @@ <h2>Triángulo fractal</h2>
</ol>
</div>

<p>La expresión<img class="noshadow" src="/bjc-r/img/7-recursion/size-gt-9.png" alt="(size)>(9)" title="(tamaño)>(9)" /> asigna el <em>caso base</em> de la recursividad del bloque <code>triángulo anidado</code>. Sin embargo, utilizando la entrada <var>tamaño</var> para controlar la profundidad de la recursividad no es muy satisfactorio. Por ejemplo, cuando intentaste <img class="noshadow" src="/bjc-r/img/7-recursion/triangle-size-175.es.png" alt="triángulo anidado, tamaño: (175)" title="triángulo anidado, tamaño: (175)" /> podías haber pensado: "Qué imagen tan interesante, pero es demasiado grande para caber en el escenario. Voy a intentar cambiar el tamaño a 100 mejor." Si realmente lo intentaste, ¿estuviste satisfecho con el resultado?</p>
<p>La expresión<img class="noshadow" src="/bjc-r/img/7-recursion/size-gt-9.png" alt="(tamaño)>(9)" title="(tamaño)>(9)" /> asigna el <em>caso base</em> de la recursividad del bloque <code>triángulo anidado</code>. Sin embargo, utilizando la entrada <var>tamaño</var> para controlar la profundidad de la recursividad no es muy satisfactorio. Por ejemplo, cuando intentaste <img class="noshadow" src="/bjc-r/img/7-recursion/triangle-size-175.es.png" alt="triángulo anidado, tamaño: (175)" title="triángulo anidado, tamaño: (175)" /> podías haber pensado: "Qué imagen tan interesante, pero es demasiado grande para caber en el escenario. Voy a intentar cambiar el tamaño a 100 mejor." Si realmente lo intentaste, ¿estuviste satisfecho con el resultado?</p>

<div class="forYouToDo">
<ol start="5">
Expand All @@ -62,8 +62,8 @@ <h2>Triángulo fractal</h2>
<li>Crea un bloque <img class="noshadow" src="/bjc-r/img/7-recursion/tri-fract-block.png" alt="triángulo fractal, nivel: ( ) tamaño: ()" title="triángulo fractal, nivel: ( ) tamaño: ()" />. Puedes usar el código existente de tu <code>triángulo anidado</code> para comenzar.</li>
<li>Prueba varios dibujos de <code>triángulo fractal</code>, todos con <var>tamaño</var> 100, pero con los valores de <var>nivel</var> desde 1 hasta 10. Asegúrate que hacen lo que esperabas.</li>
<li>
Generaliza tu procedimiento añadiendo una entradat:<br />
<img class="indent" src="/bjc-r/img/7-recursion/poly-fract.png" alt="polígono fractal, nivel: ( ) número de lados: ( ) tamaño: ()" title="polígono fractal, nivel: ( ) número de lados: ( ) size: ()" />.
Generaliza tu procedimiento añadiendo una entrada:<br />
<img class="indent" src="/bjc-r/img/7-recursion/poly-fract.png" alt="polígono fractal, nivel: ( ) número de lados: ( ) tamaño: ()" title="polígono fractal, nivel: ( ) número de lados: ( ) tamaño: ()" />.
</li>
</ol>
</div>
Expand Down
13 changes: 6 additions & 7 deletions cur/programming/7-recursion/2-projects/2-snowflake.es.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<head>
<meta charset="utf-8">
<script type="text/javascript" src="/bjc-r/llab/loader.js"></script>
<title>Unidad 7 Laboratorio 2: Proyectos de Recursividad, Página 2</title>
<title>Unidad 7 Laboratorio 2: Proyectos de recursividad, Página 2</title>
</head>

<body>
Expand Down Expand Up @@ -68,16 +68,15 @@ <h2>Copo de nieve de Koch</h2>
<ol>
<li><div class="newProject"><span class="text">"U7L2-CopoDeNieveDeKoch"</span><img src="/bjc-r/img/icons/new-project-called.es.png" alt="Comienza un proyecto nuevo llamado U7L2-CopoDeNieveDeKoch" title="Comienza un proyecto nuevo llamado U7L2-CopoDeNieveDeKoch" /></div></li>
<li>
<li>
Termina este procedimiento recursivo para dibujar un lado del copo de nieve de Koch.<br />
Termina este procedimiento recursivo para dibujar un lado del copo de nieve de Koch completando los espacios en blanco y agregando bloques adicionales según sea necesario.<br />
<img class="indent" src="/bjc-r/img/7-recursion/snowflake-code-with-more-blanks.es.png"
alt="nivel de curva de Koch:(level#) tamaño:(tamaño#){si( ){mover (tamaño) pasos} sino{nivel de curva de Koch:() tamaño:(); girar(60) grados; ......}}"
title="nivel de curva de Koch:(level#) tamaño:(tamaño#){si( ){mover (tamaño) pasos} sino{nivelde curva de Koch:() tamaño:(); girar(60) grados; ......}}">
alt="curva de Koch, nivel: (nivel#) tamaño: (tamaño#){si( ){mover (tamaño) pasos} sino{curva de Koch, nivel: () tamaño:(); girar(60) grados; ......}}"
title="curva de Koch, nivel: (nivel#) tamaño:(tamaño#){si( ){mover (tamaño) pasos} sino{curva de Koch, nivel: () tamaño:(); girar(60) grados; ......}}">
</li>
<li>Cuando consigas que un lado del copo de nieve funcione, combina tres de ellos para hacer el copo de
nieve completo.</li>
<li><img class="inline" src="/bjc-r/img/icons/talk-with-your-partner.es.png" alt="Habla con tu compañero"
title="Habla con tu compañero" /> ¿Por qué el <var>tamaño</var> en cada llamada recursiva tiene que
<li>
<img class="inline" src="/bjc-r/img/icons/talk-with-your-partner.es.png" alt="Habla con tu compañero" title="Habla con tu compañero" /> ¿Por qué el <var>tamaño</var> en cada llamada recursiva tiene que
ser un tercio del tamaño del nivel anterior? Si hay cuatro copias, ¿por qué no un cuarto del tamaño?</li>
</ol>
</div>
Expand Down
Loading

0 comments on commit 5893039

Please sign in to comment.