grafico de tortuga (pseudojuego) en c# extremo novato!

angel210s

Lanero Novato
19 Abr 2009
14
Hola a todos, estoy tratando de hacer una aplicacion en c# para la univ, el nombre real es graphic turttles no se si la traduccion al español sea tan literal, es simple, utilizando consola se presentan unas opciones que son levantar lapiz bajar lapiz moverse a la derecha moverse a la izquierda, caminar n pasos, la idea es que el usuario teclee unos numeros y luego pueda observar un grafico en pantalla que muestre el desplazamiento de la tortuga, si tenia el lapiz abajo, el algoritmo de los procedimientos lo resolvi rapido pero a la hora de llevarlo a cabo me esta dando problemas, el programa esta incompleto pero ya me esta tirando varios errores, si alguien me puede ayudar seria de gran utilidad...Aqui les va el codigo

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1 {
class Program {


//--------------funcion giro------------------------------------------------------
static int rotar ( int sentido, string direccion){
int m;


if (direccion=="derecha") {
if (sentido==4) return 1;
else {
m=sentido+1;
return m;
}
}

if (direccion=="izquierda") {
if (sentido==1) return 4;

else {
m=sentido-1;
return m;
}

}

}






//-----------funcion moverse--------------------------------------------------------





//--------------MAIN------------------------------------------------------------------

static void Main (string[] args) {
int [,] arr= new int [20,20];
bool lapiz;
lapiz = true;
int sentido=1;
bool salida=false;

//----------------presentacion menu-------------

Console.WriteLine ("APLICACION DE TORTUGA\n\n");
Console.WriteLine ("1.Lapiz arriba");
Console.WriteLine ("2.Lapiz abaj");
Console.WriteLine ("3.girar izquierda");
Console.WriteLine ("4.girar derecha");
Console.WriteLine ("5.moverse , espacios");
Console.WriteLine ("6.mostrar");
Console.WriteLine ("7.'SALIR'");

int respuesta= Convert.ToInt32 (Console.ReadLine ());



//-----------lectura---------------------------------

switch (respuesta){
case 1: lapiz = false;
case 2: lapiz = true;
case 3: sentido= rotar (sentido, "izquierda");
case 4: rotar (sentido,"derecha");

case 5: {
int espacios= Convert.ToInt32( Console.ReadLine());
moverse (sentido, espacios,lapiz,posicion);
}

case 6: {
mostrar(int [,]table);
Console.ReadLine();


}

}







}
}
}


hay 3 errores principales, el primero es la funcion rotar, que me indica que no todas las rutas devuelven codigo, no se a que se debe puesto que todas las opciones de if tienen un return, otra cosa, utilize numeros para la direccion, 1,2,3,4 si la tortuga esta en 4 y se le pide ir a la derecha caera en 1...o al menos eso espero :D ...la funcion moverse no la he escrito aun porque queria resolver esto primero.
El otro error es con el case 6...primero me dice "se esperaba un } "...bueno pero q no esta viendo que lo coloque mas abajito?...creo que hay un problema con las llaves aunque las revise y parecieran todas estar bien me resulto extraño que al cerrar el switch la llave de cierre no quedara alineada...bueno gracias por su ayuda de antemano!
 
case 6: {
mostrar(int [,]table);

hola! el error que tenés ahí es que le estás definiendo la variable en la función.. cualquier drama que tengas avisame, me encanta programar :D

el error de la llave se desencadena de ese.. porque cree que estás definiendo la función =)
 

Los últimos temas