ESTO ES EL MAIN void main () { int opcion; /* Inicializar tortuga */ inicializar(); /* Menu */ do{ opcion=leer_menu(); switch(opcion){ case 1: opcion1(); break; case 2: opcion2(); break; case 3: opcion3(); break; case 4: opcion4(); break; case 5: opcion5(); break; case 6: opcion6(); break; default: printf("opcio incorrecta\n"); } }while (opcion!=0); finalizar(); /* Finalizar tortuga */ } int leer_menu () { int opcion; printf("Las opciones del menu son:\n"); printf("opcion 1: Dibuja segmento(1)\n"); printf("opcion 2: Lee contorno de teclado y lo escribe en fichero\n"); printf("opcion 3: Lee contorno de fichero y lo dibuja en pantalla\n"); printf("opcion 4: Lee contorno de fichero y le calcula el perimetro\n"); printf("opcion 5: Lee contorno de fichero, se modifica y se vuelve a escribir en fichero\n"); printf("opcion 6: Rotar contorno una vuelta completa\n"); /* Mostrar menu */ scanf("%d%*c",&opcion); /* Pedir opcion y retornarla */ return opcion; } void pausa() { printf("\n Presione cualquier tecla para continuar ..."); fflush (stdin); getchar(); } void resultado(int cod, tNombre msg) { if (cod<=0) printf("\n ERROR (%d): %s \n", cod, msg); else printf("\n OK (%d): %s \n", cod, msg); } /* opcion 1: Dibuja segmento */ void opcion1() { tCoordenada coordenadaA,coordenadaB; /* Leer coordenada A */ printf("Escriu la coordenada A:\n"); coordenadaA=leer_coordenada_teclado (); /* Leer coordenada B */ printf("Escriu la coordenada B:\n"); coordenadaB=leer_coordenada_teclado (); /* Borrar pantalla */ /* Dibujar segmento de A hasta B */ posicionar_tortuga(coordenadaA); dibujar_segmento(coordenadaA,coordenadaB); } /* Crea e inicializa una estructura de tipo tCoordenada con las coordenadas (0,0) */ tCoordenada ini_coordenada () { tCoordenada aux; aux.latitud= 0; aux.longitud= 0; return aux; } HASTA AQUI S EL MAIN AHORA VIENE COORDENADA.C /* Lee desde teclado los campos latitud y longitud de la estructura coordenada y retorna una estructura de tipo tCoordenada cargada con éstos valores */ tCoordenada leer_coordenada_teclado () { tCoordenada coord; coord = ini_coordenada(); printf("\n Latitud? "); scanf("%f", &coord.latitud); printf("\n Longitud? "); scanf("%f", &coord.longitud); return coord; } void escribir_coordenada_pantalla (tCoordenada coord) { printf("\n Coordenada: latitud=%.2f longitud=%.2f \n", coord.latitud, coord.longitud); } void posicionar_tortuga (tCoordenada coordenada) { posicion_inicial (coordenada.latitud,coordenada.longitud); } void dibujar_segmento ( tCoordenada cinicio, tCoordenada cfinal ) { float x; tCoordenada coord2,coord1; x=atan(coord2.longitud/coord1.latitud); girar(x); avanzar(calcular_distancia(coord1,coord2)); } float calcular_distancia (tCoordenada coord1, tCoordenada coord2) { float x,y,z; x=(coord2.latitud)-(coord1.latitud); y=(coord2.longitud)-(coord1.longitud); z=sqrt(pow(x,2)+pow(y,2)); return z; }