Beispiel #1
0
int main()
{
    EMovie movies;

    char nombre[50];
    char seguir='s';
    char guardar= 's';

    if(cargarDesdeArchivo(&movies))
	{
		printf("No se pudo abrir el fichero");
	}
	else
	{
		printf("Se cargaron las estructuras con exito\n");
	}

	system("pause");

	system("cls");

    while(seguir=='s')
    {

        switch(menu())
        {
            case 1:
                agregarPelicula(&movies);
                break;
            case 2:
                borrarPelicula(&movies);
                break;
            case 3:
                modificarPelicula(&movies);
                break;
            case 4:
                generarPagina(&movies,nombre);
                break;
            case 5:
                printf("\nGuardar cambios S/N ?: ");
				guardar = tolower(getche());

				if(guardar == 's')
				{
					if(guardarEnArchivo(&movies))
					{
						printf("\nNo se pudo abrir el fichero\n");
					}
					else
					{
						printf("\nSe guardo la informacion con exito\n");
					}
				}
                seguir = 'n';
                break;
        }
    }

    return 0;
}
/** \brief Funcion para la salida del programa, pregunta si se quieren guardar los cambios realizados o no.
 *
 * \param peliculas (*sMovie) Array de peliculas.
 * \param largoArray (int) Largo del array.
 *
 */
void doExit( sMovie *peliculas, int largoArray )
{
    short int respuesta;
    int error;

    system(CLEAR_SCREEN);

    respuesta = preguntarPorSiOPorNo( "\nDesea guardar los cambios realizados? (S/N) ", "\nError en la respuesta", 3 );

    system(CLEAR_SCREEN);

    if( respuesta == 1 )
    {
        error = guardarEnArchivo( peliculas, largoArray );
        if( error == 0 )
        {
            printf("\nSe guardo la informacion con exito.\n\n");
        }
        else
        {
            printf("\nNo se pudo guardar en el fichero.\n\n");
        }
    }
    else
    {
        printf("\nNo se guardaron los cambios.\n\n");
    }
}
//MAIN//
void main()
{
    t_alumno alumno;
    FILE *pf;
    t_alumno vec[TAM];
    int opc,cont=1,i=1;
    float prom,promgral=0;
    abrirArchivo(&pf,"C:\\ArchProII\\12Alu.txt","wt");
    estiloArchivo(pf);
    while(cont==1)
    {
        fflush(stdin);
        prom=cargarDatos(&alumno);
        guardarEnArchivo(pf,&alumno,prom,i);
        i++;
        promgral+=prom;
        printf("\nDesea cargar otro? (1:SI - 0:NO): ");
        scanf("%d",&cont);
        fflush(stdin);
    }
    promgral=promgral/(i-1);
    estiloFinal(pf,promgral);
    fclose(pf);
}
Beispiel #4
0
int main(int argc, char *argv[]) {
	system("clear");
	int fd_socket_servidor, fd_comunicacion;
	struct sockaddr_in dir_servidor;
	struct sockaddr_in dir_cliente;
	int sin_size;
	int clienteNum = 0;
	int contador;

	if ((fd_socket_servidor = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
		fprintf(stderr, "Error en socket\n");
		exit(-1);
	}

	dir_servidor.sin_family = AF_INET;
	dir_servidor.sin_addr.s_addr = INADDR_ANY;
	dir_servidor.sin_port = htons(PORT);
	bzero(&(dir_servidor.sin_zero), 8);

	if (bind(fd_socket_servidor, (struct sockaddr*) &dir_servidor, sizeof(struct sockaddr)) == -1) {
		fprintf(stderr, "Error en bind\n");
		exit(-1);
	}

	if (listen(fd_socket_servidor, BACKLOG) == -1) {
		fprintf(stderr, "Error en listen\n");
		exit(-1);
	}

	contador = 0;
	while (1) {
		trama = (char *)malloc(sizeof(char) *250);
		printf("Server esperando...\n");
		sin_size = sizeof(dir_cliente);
		
		if ((fd_comunicacion = accept(fd_socket_servidor, (struct sockaddr*) &dir_cliente, &sin_size)) == -1) {
			fprintf(stderr, "Error en accept\n");
			exit(-1);
		}
		
		// Empezamos el proceso del cliente que llega, para no tener un solo proceso para todos los clientes, creamos mas procesos.
		if (fork() == 0) {
			
			// 1. Server recibe es el numero de cuenta
			if ((inf_tam_byte = recv(fd_comunicacion, recepNoCta, TAMANIO_MAX, 0)) == -1) {
				fprintf(stderr, "Error en recibir\n");
				exit(1);
			}
			//Verificamos que exista y devolvemos una cadena con los datos de la cuenta.
			recepNoCta[inf_tam_byte] = '\0'; //Asignamos a la posicion final el fin de cadena '\0'
			printf("Cta Recibida: %s\n", recepNoCta);
			
			sleep(1);
			//de aqui se manda a imprimir o algo
			trama = verificarCtaBase(recepNoCta);
			
			if (trama == NULL) {
				printf("Dentro de trama=NULL: %s\n", contador);
				//cuenta incorrecta, se aniade
				//fprintf(stderr, "Cuenta incorrecta\n");
				//printf("Se aniadira a la base de datos\n");
				sprintf(trama, "%s + 10.00 %s",recepNoCta, recepNoCta);
				printf("Trama transacc %s\n", trama);
				guardarEnArchivo(ARCHIVO_TRANSACCIONES, trama);

				sprintf(trama, "%s 10.00",recepNoCta); //la trama se queda al final lista para enviarla
				guardarEnArchivo(ARCHIVO_CUENTAS, trama);
				printf("Trama transacc%s\n", trama);
			}

			if (send(fd_comunicacion, trama, strlen(trama)+1, 0) == -1) {
				perror("send");
				fprintf(stderr, "No se pudo enviar trama\n");
				//close(fd_comunicacion);
				exit(0);
			}
			
			sleep(1);

			if ((inf_tam_byte = recv(fd_comunicacion, recepTransaccion, TAMANIO_MAX, 0)) == -1) {
				perror("recv");
				exit(1);
			}
			
			recepTransaccion[inf_tam_byte] = '\0'; //Asignamos a la posicion final el fin de cadena '\0'
			printf("Transaccion Recibida: %s\n", recepTransaccion);

			sleep(1);
			if(strcmp(actualizar(recepTransaccion), "correcto")==0){
				printf("Datos actualizados");
			}
			guardarEnArchivo(ARCHIVO_TRANSACCIONES, recepTransaccion);

		} else {
			close(fd_comunicacion);
			/* Se suspende la ejecucion del proceso padre hasta que finalice el proceso hijo */
			while (waitpid(-1, NULL, WNOHANG) > 0);
		}
		
		//printf("Cliente %d: Desde %s \n", clienteNum, inet_ntoa(dir_cliente.sin_addr));
		//send(fd_comunicacion, "Bienvenido a mi servidor!!!\n", 30, 0);
		//close(fd_comunicacion);
		clienteNum++;

	}
	printf("Error en listen\n");
	exit(-1);
}
Beispiel #5
0
int main()
{
    char seguir='s';
    int opcion=0;
    int moviesFlag=0;
    int auxAlta;
    int auxBaja;
    int auxMod;
    char save;
    EMovie movies[CANT];
    initMovies(movies,CANT);
	if(cargarDesdeArchivo(movies,CANT))
	{
		printf("No se pudo abrir el fichero");
        system("pause");
		system("cls");
	}
	else
	{
		printf("Se cargaron las estructuras con exito\n");
		system("pause");
		system("cls");
	}
	//hardcodePeliculas(movies,CANT);
    while(seguir=='s')
    {
        showMessage("1- Agregar pelicula");
        showMessage("2- Borrar pelicula");
        showMessage("3- Modificar");
        showMessage("4- Generar pagina web");
        showMessage("5- Salir");

        scanf("%d",&opcion);

        switch(opcion)
        {
            case 1:
                auxAlta=alta(movies,CANT);
                if(auxAlta==-1)
                {
                    showMessage("ERROR,ALTA INCORRECTA O NO HAY ESPACIOS DISPONIBLES");
                }
                else
                {
                    moviesFlag=1;
                }
                break;
            case 2:
                if(moviesFlag==1)
                {
                    auxBaja=baja(movies,CANT);
                    if(auxBaja==-1)
                    {
                        showMessage("ERROR, BAJA INCORRECTA");
                    }
                }
                else
                {
                    showMessage("ERROR, INGRESE UNA PELICULA PRIMERO");
                }
                break;
            case 3:
                if(moviesFlag==1)
                {
                    auxMod=modificar(movies,CANT);
                    if(auxMod==-1)
                    {
                        showMessage("ERROR EN LA MODIFICACION");
                    }
                }
                else
                {
                    showMessage("ERROR, INGRESE UNA PELICULA PRIMERO");
                }
               break;
            case 4:
                generarPagina(movies,"Listado Peliculas.html",CANT);
                break;
            case 5:
                showMessage("Guardar cambios S/N ?");
                fflush(stdin);
				scanf("%c",&save);
				save=tolower(save);
				if(save == 's')
				{
					if(guardarEnArchivo(movies,CANT))
					{
						showMessage("No se pudo abrir el fichero");
						system("pause");
                        system("cls");
					}
					else
					{
						showMessage("Se guardo la informacion con exito");
						system("pause");
                        system("cls");
					}
				}
                seguir = 'n';
                break;
        }
    }

    return 0;
}
Beispiel #6
0
int main()
{
    EMovie peliculas[MAX];

    char seguir='s';
    int opcion=0;
    int resp;
    int i;

    InicializarArrayPeliculas(peliculas,MAX);

    if(cargarDesdeArchivo(peliculas)==1)
	{
		printf("No se pudo abrir el fichero\n");
		exit(1);
	}
	else
	{
		printf("Se cargaron las estructuras con exito\n");
        system("pause");
        system("cls");
	}


            while(seguir=='s')
       {
        printf("***ADMINISTRACION DE PELICULAS***\n\n");
        printf("1- Agregar pelicula\n");
        printf("2- Borrar pelicula\n");
        printf("3- Modificar pelicula\n");
        printf("4- Generar pagina web\n");

        printf("5- Salir\n\n");

        opcion=TomarValidarCadSoloNumerica("ingrese una opcion :\n");

                if (opcion==0)
                    {
                        system("cls");
                        //continue;
                    }


                   switch(opcion)
                  {
                   case 1:
                   agregarPelicula(peliculas,MAX,"ingrese el titulo de la pelicula :","ingrese el genero :","ingrese la duracion ( 00:00 ) :","ingrese la descripcion :","ingrese puntaje ( 1 / 10 ) :","ingrese el link de imagen, puede copiar una url de cualquier imagen en la web y pegarla aqui :","titulo invalido ,solo letras,numeros y 50 caracteres como maximo ,reingrese :","genero invalido,reingrese :","duracion invalida reingrese :","descripcion invalida solo numeros,reingrese :","puntaje invalido solo numero 1/10 reingrese","link incorrecto reingrese :");

                   break;
                   case 2:
                         for(i=0; i<MAX; i++) //solo ingresa a este caso si hay alguna pelicula registrada
                                {
                                    if(peliculas[i].estado!=0)
                                    {
                                        borrarPelicula(peliculas,MAX);
                                        break;
                                    }
                                    else
                                        {
                                         printf("--Primero ingrese algun dato--\n");
                                         getch();
                                         system("cls");
                                         break;
                                        }
                                }

                   break;
                   case 3:
                           for(i=0; i<MAX; i++) //solo ingresa a este caso si hay alguna pelicula registrada
                                {
                                    if(peliculas[i].estado!=0)
                                    {
                                        ModificarDatosPeliculas(peliculas,MAX);
                                        break;
                                    }
                                    else
                                        {
                                         printf("--Primero ingrese algun dato--\n");
                                         getch();
                                         system("cls");
                                         break;
                                        }
                                }
                   break;
                   case 4:
                       for(i=0; i<MAX; i++) //solo ingresa a este caso si hay alguna pelicula registrada
                                {
                                    if(peliculas[i].estado!=0)
                                    {
                                        generarPaginaWeb(peliculas,MAX);
                                        break;
                                    }
                                    else
                                        {
                                         printf("--Primero ingrese algun dato--\n");
                                         getch();
                                         system("cls");
                                         break;
                                        }
                                }

                   break;
                   case 5:
                       printf("\nGuardar cambios S/N ?: ");
				       seguir = tolower(getche());
                    if(seguir == 's')
			     	{
                        if(guardarEnArchivo(peliculas)==1)
                        {
						printf("\nNo se pudo abrir el fichero\n");
                        }
					    else
					    {
						printf("\nSe guardo la informacion con exito\n");
                        }
				    }

                   seguir = 'n';
                   break;
                   default:
                       system("cls");
                   break;
                  }
         }


    return 0;
}
Beispiel #7
0
int main()
{
    char seguir='s';
    char save;
    int opcion;
    int flagPelicula=0;
    int flagDirector=0;
    int aux,aux2,aux3;
    int auxIsEmptyD,auxIsEmptyP;
    ArrayList* peliculas=al_newArrayList();
    ArrayList* directores=al_newArrayList();
    aux=cargarDesdeArchivoDirectores(directores);
    if(aux==0)
    {
        showMessage("LOS DIRECTORES SE CARGARON CON EXITO");
        system("pause");
        system("cls");
        auxIsEmptyD=al_isEmpty(directores);
        if(auxIsEmptyD==0)
        {
            flagDirector=1;
        }
    }
    aux2=cargarDesdeArchivoPeliculas(peliculas);
    if(aux2==0)
    {
        showMessage("LAS PELICULAS SE CARGARON CON EXITO");
        system("pause");
        system("cls");
        auxIsEmptyP=al_isEmpty(peliculas);
        if(auxIsEmptyP==0)
        {
            flagPelicula=1;
        }

    }
    printf("D=%d\nP=%d\n%d\n%d\n",flagDirector,flagPelicula,peliculas->size,directores->size);
    system("pause");
    system("cls");
    while(seguir=='s')
    {
        showMessage("1- ALTAS PELICULAS");
        showMessage("2- MODIFICAR DATOS DE UNA PELICULA");
        showMessage("3- BAJA DE PELICULA");
        showMessage("4- NUEVO DIRECTOR");
        showMessage("5- ELIMINAR DIRECTOR");
        showMessage("6- INFORMAR");
        showMessage("7- LISTAR");
        showMessage("8- BORRAR TODO");
        showMessage("9- SALIR");
        scanf("%d",&opcion);

        switch(opcion)
        {
            case 1:
                if(flagDirector==0)
                {
                    showMessage("PRIMERO INGRESE UN DIRECTOR");
                    system("pause");
                    system("cls");
                }
                else
                {
                    system("cls");
                    alta(peliculas,directores);
                    flagPelicula=1;
                }

                break;
            case 2:
                system("cls");
                if (flagPelicula==1)
                {
                    modificar(peliculas,directores);
                }
                else
                {
                    showMessage("ERROR, NO HAY PELICULAS REGISTRADAS");
                    system("pause");
                }
                break;
            case 3:
                system("cls");
                if (flagPelicula==1)
                {
                    baja(peliculas);
                }
                else
                {
                    showMessage("ERROR, NO HAY PELICULAS REGISTRADAS");
                    system("pause");
                    system("cls");
                }
                break;
            case 4:
                system("cls");
                nuevoDirector(directores);
                flagDirector=1;
                system("cls");
                break;
            case 5:
                system("cls");
                if (flagDirector==1)
                {
                    eliminarDirector(directores);
                }
                else
                {
                    showMessage("ERROR,NO HAY DIRECTORES REGISTRADOS");
                    system("pause");
                    system("cls");
                }
                break;
            case 6:
                system("cls");
                if (flagPelicula==1&&flagDirector==1)
                {
                    informar(peliculas,directores);
                    system("pause");
                    system("cls");
                }
                else
                {
                    showMessage("ERROR, NO HAY PELICULAS REGISTRADAS O NO HAY DIRECTORES REGISTRADOS");
                    system("pause");
                    system("cls");
                }
                break;
            case 7:
                system("cls");
                if (flagPelicula==1&&flagDirector==1)
                {
                    listar(peliculas,directores);
                    system("pause");
                    system("cls");
                }
                else
                {
                    showMessage("ERROR, NO HAY PELICULAS REGISTRADAS O NO HAY DIRECTORES REGISTRADOS");
                    system("pause");
                    system("cls");
                }
                break;
            case 8:
                system("cls");
                if (flagPelicula==1&&flagDirector==1)
                {
                    borrarTodo(peliculas,directores);
                }
                else
                {
                    showMessage("ERROR, NO HAY PELICULAS REGISTRADAS O NO HAY DIRECTORES REGISTRADOS");
                    system("pause");
                    system("cls");
                }
                break;
            case 9:
                showMessage("Guardar cambios S/N ?");
                fflush(stdin);
				scanf("%c",&save);
				save=tolower(save);
				if(save == 's')
				{
				    aux3=guardarEnArchivo(peliculas,directores);
					if(aux3==-1)
					{
						showMessage("No se pudo abrir el fichero");
						system("pause");
                        system("cls");
					}
					else
					{
						showMessage("Se guardo la informacion con exito");
						system("pause");
                        system("cls");
					}
				}
                al_deleteArrayList(peliculas);
                al_deleteArrayList(directores);
                seguir = 'n';
                break;
        }
    }

    return 0;
}