Page 196

3.6 Recursi´ on struct Naufrago naufrago;

3 4

naufrago.fila = rand () % FILAS; naufrago.columna = rand () % COLUMNAS; naufrago.encontrado = 0; return naufrago;

5 6 7 8 9

}

10 11 12 13 14 15

void pon_naufragos(struct GrupoNaufragos * grupoNaufragos, int cantidad ) /* Situa aleatoriamente cantidad n´ aufragos en la estructura grupoNaufragos. */ { int fila, columna, ya_hay_uno_ahi, i; struct Naufrago un_naufrago;

16

grupoNaufragos->cantidad = 0; while (grupoNaufragos->cantidad != cantidad ) { un_naufrago = naufrago_al_azar (); ya_hay_uno_ahi = 0; for (i=0; i<grupoNaufragos->cantidad ; i++) if ( un_naufrago.fila == grupoNaufragos->naufrago[i].fila && un_naufrago.columna == grupoNaufragos->naufrago[i].columna) { ya_hay_uno_ahi = 1; break; } if (!ya_hay_uno_ahi) { grupoNaufragos->naufrago[grupoNaufragos->cantidad ] = un_naufrago ; grupoNaufragos->cantidad ++; } }

17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

}

¿Es correcto el programa con estos cambios? · 205 Modifica el juego para que el usuario pueda escoger el nivel de dificultad. El usuario escoger´ a el n´ umero de n´ aufragos perdidos (con un m´aximo de 20) y el n´ umero de sondas disponibles. · 206 Hemos construido una versi´on simplificada de Galaxis. El juego original s´olo se diferencia de ´este en las direcciones exploradas por la sonda: as´ı como las sondas de miniGalaxis exploran 4 direcciones, las de Galaxis exploran 8. Te mostramos el resultado de lanzar nuestra primera sonda en las coordenadas 4J de un tablero de juego Galaxis: ABCDEFGHIJKLMNOPQRST +++++.+++.+++.++++++ ++++++.++.++.+++++++ +++++++.+.+.++++++++ ++++++++...+++++++++ .........1.......... ++++++++...+++++++++ +++++++.+.+.++++++++ ++++++.++.++.+++++++ +++++.+++.+++.++++++

0 1 2 3 4 5 6 7 8

Implementa el juego Galaxis. .............................................................................................

3.6.

Recursi´ on

Es posible definir funciones recursivas en C. La funci´on factorial de este programa, por ejemplo, define un c´ alculo recursivo del factorial: factorial recursivo.c 1

factorial recursivo.c

#include <stdio.h>

2

190

Introducci´ on a la Programaci´ on con C

Profile for esLibre.com

Introducción a la programación con c  

Introducción a la programación con c  

Advertisement