int main(){ int numero_de_elementos, numero_limite, N[numbers] = {}; numero_de_elementos = inicializar_matriz( N, numbers); scanf("%d", &numero_limite); printar_elementos_menores_que(N, numero_de_elementos, numero_limite); return 0; }
int main(){ // Obtengo la cantidad de celdas int c; unsigned int cantidad = 0; FILE* archivo; archivo = fopen("inicial.txt", "r"); while ((c = fgetc(archivo)) != EOF){ cantidad++; } if (cantidad == 0){ printf("El archivo esta vacio\n"); return 2; } else { cantidad--; } fclose(archivo); // Creo e inicializo la matriz //unsigned char matriz [cantidad][cantidad]; unsigned char *matriz = (unsigned char *)malloc(cantidad*cantidad*sizeof(unsigned char)); if (matriz == NULL){ printf("No hay suficiente memoria para la matriz\n"); return 3; } inicializar_matriz(matriz,cantidad,cantidad); //Escribo el estado inicial en la primera fila de la matriz unsigned int i,fila; archivo = fopen("inicial.txt", "r"); for(i=0;i<cantidad;i++){ fscanf(archivo, "%c", &(matriz[i])); matriz[i]-=(unsigned char)48; } fclose(archivo); //Escribo el estado de las demas filas de la matriz for (fila = 0; fila < (cantidad - 1); fila++){ calcular_prox_fila(matriz, fila, REGLA, cantidad); } archivo = fopen("salida.pbm", "wb"); fprintf(archivo, "P1\n"); fprintf(archivo, "# Esto es una matriz completa\n"); fprintf(archivo, "%d %d\n",cantidad*4,cantidad*4); imprimir_matriz_amplificada(matriz,cantidad,cantidad,archivo); fclose(archivo); free(matriz); return 0; }
//funcion que se encarga de llamar a todas las funciones para poder jugar void partida(){ char matriz[FILAS][COLUMNAS], info[FILAS][COLUMNAS]; char respuesta, opcion, respuesta_anterior; int vidas, pos_usuario[USUARIO], pos_maquina[ENEMIGOS][2], nivel, puntuacion, cocos_anterior, asteriscos, turnos; bool asterisco_comido; /*---------------------------------------------------------------------------------------------*/ /*Englobar en una funcion*/ do{ //iniciamos la partida char dibujo_enemigo[ENEMIGOS] = {'M', 'M', 'M', 'M'}; asteriscos = 4; asterisco_comido = false; turnos = 0; vidas = 3; respuesta = 'j'; respuesta_anterior = 'a'; nivel = 1; puntuacion = 0; cocos_anterior = MCOCOS; cargar_mapa(matriz, info); inicializar_matriz(matriz, pos_usuario, pos_maquina, info, dibujo_enemigo); refrescar(matriz, info, vidas, nivel, puntuacion); while(respuesta != 'q' && vidas > 0){ respuesta = movimiento(respuesta_anterior); respuesta_anterior = respuesta; mover_jugador(respuesta, info, pos_usuario, matriz); comprobar_asteriscos(&asteriscos, info, dibujo_enemigo, &turnos, &asterisco_comido); comprobacion(matriz, info, pos_usuario, pos_maquina, vidas, nivel, puntuacion, dibujo_enemigo, asterisco_comido, &vidas); recuento_puntuacion(info, &cocos_anterior, &puntuacion); mover_maquina(matriz, pos_maquina, pos_usuario, dibujo_enemigo, asterisco_comido); comprobacion(matriz, info, pos_usuario, pos_maquina, vidas, nivel, puntuacion, dibujo_enemigo, asterisco_comido, &vidas); /*----------------------------------------------------------------*/ /*Ponerlo como funcion*/ if(comprobar_fin_nivel(info) == 1){ cargar_mapa(matriz, info); inicializar_matriz(matriz, pos_usuario, pos_maquina, info, dibujo_enemigo); nivel ++; cocos_anterior = MCOCOS; asterisco_comido = false; turnos = 0; asteriscos = 4; } /*---------------------------------------------------------------*/ refrescar(matriz, info, vidas, nivel, puntuacion); if(turnos > 0 ) turnos --; else{ for(int i=0; i<ENEMIGOS; i++) dibujo_enemigo[i] = 'M'; asterisco_comido = false; } } if(vidas == 0){ guardar_puntuacion(puntuacion); printw("\n\t\t\tGame Over\n"); } printw("¿Quieres jugar de nuevo? s/n\n"); refresh(); scanf(" %c", &opcion); }while(opcion != 'n'); /*--------------------------------------------------------------------------------------------------------*/ //exit (EXIT_SUCCESS); }//fin partida