//bibliotecas empleadas #include #include #include #include //declaracion de funciones void inicio(); void recuadro(int x,int y,int x1,int y1); void principal(void); char menu(char o); char menu1(char peliculas[4][15],int sesiones[3],int salas[4]); char menu2(char peliculas[4][15],int sesiones[3],int cliente[100][3], int importe[50],int c[1]); char menu3(int cliente[100][3],int importe[50],int c[1]); void error(void); void final(void); //funcion principal void main(void) { clrscr(); principal(); } //funcion que llama a todas las funciones void principal() { char o=' '; char peliculas[4][15]={"0","0","0","0"}; int sesiones[3]={0,0,0}; int salas[4]={0,0,0,0}; int cliente[100][3]; int importe[50]; int i,i1; int c[1]={0}; //inicializa cliente for(i=0;i<3;i++) for(i1=0;i1<100;i1++) cliente[i1][i]=0; //inicializa importe for(i=0;i<50;i++) importe[i]=0; inicio(); while(o!='4') { o=menu(o); switch(o) { case '1': o=menu1(peliculas,sesiones,salas); break; case '2': o=menu2(peliculas,sesiones,cliente,importe,c); break; case '3': o=menu3(cliente,importe,c); break; case '4': final(); break; default : error(); } } } //funcion crea un recuadro en la coordenadas indicadas void recuadro(int x,int y,int x1,int y1) { int a,b; for(a=x;a!=x1+1;a++) for(b=y;b!=y1+1;b++) { gotoxy(a,b); cprintf("Û"); } } //funcion para el menu principal char menu(char o) { textbackground(0); clrscr(); textcolor(4); recuadro(26,8,56,18); textbackground(4); textcolor(15); gotoxy(28,10); cprintf("1.-Peliculas en proyeccion"); gotoxy(28,12); cprintf("2.-Ventas"); gotoxy(28,14); cprintf("3.-Resultados"); gotoxy(28,16); cprintf("4.-Finalizar el programa"); if(o==' ')o=getch(); return o; } //menu primero char menu1(char peliculas[4][15],int sesiones[3],int salas[4]) { char o='0'; int i,n; textbackground(0); textcolor(1); recuadro(1,1,31,10); textbackground(1); textcolor(15); gotoxy(2,2); cprintf("1.-Dar de alta a 4 peliculas"); gotoxy(2,4); cprintf("2.-Modificar una pelicula"); gotoxy(2,6); cprintf("3.-Precios para las sesiones"); gotoxy(2,8); cprintf("4.-Capacidad de las salas"); o=getch(); switch(o) { //Dar de alta a 4 peliculas case '1': clrscr(); for(i=0;i<4;i++) { gotoxy(30,12); cprintf("Introduzca Pelicula %i¦:",i+1); gotoxy(53,12); gets(peliculas[i]); gotoxy(53,12); printf(" "); } break; //modificar una pelicula case '2': clrscr(); for(i=0;i<4;i++) { gotoxy(30,12+i); cprintf("%i.-%s",i+1,peliculas[i]); } gotoxy(25,18); cprintf("Introduzca pelicula a cambiar:"); scanf("%d",&n); //se pone getchar porque sino no sale getchar(); gotoxy(25,20); cprintf("Introduzca nuevo nombre:"); gets(peliculas[n-1]); break; //poner los precios de las 3 sesiones case '3': clrscr(); for(i=0;i<3;i++) { gotoxy(30,12); cprintf("Precios de Sesiones %i¦:",i+1); gotoxy(53,12); scanf("%d",&sesiones[i]); gotoxy(53,12); printf(" "); } break; //capacidad de las 4 salas case '4': clrscr(); for(i=0;i<4;i++) { gotoxy(30,12); cprintf("Capacidad de sala %i¦:",i+1); gotoxy(51,12); scanf("%i",&salas[i]); gotoxy(51,12); printf(" "); } break; default : if(o!=' ') error(); } if(o==' ') return ' '; else return '1'; } //menu segundo char menu2(char peliculas[4][15],int sesiones[3],int cliente[100][3],int importe[50],int c[1]) { int i,n; textbackground(2); textcolor(15); clrscr(); printf("\t\t\t\tSELECCION DE PELICULA"); for(i=0;i<4;i++) { gotoxy(39,12+i); cprintf("%i.-%s",i+1,peliculas[i]); } gotoxy(34,22); cprintf("Elija pelicula:"); scanf("%i",&n); cliente[c[1]][0]=n; clrscr(); printf("\t\t\t\tSELECCION DE LA SESION"); gotoxy(28,14);for(i=0;i<3;i++) { gotoxy(39,12+i); cprintf("%i.-%d",i+1,sesiones[i]); } gotoxy(34,22); cprintf("Elija sesion:"); scanf("%i",&n); cliente[c[1]][1]=n; clrscr(); printf("\t\t\t\tSELECCION DE ENTRADAS"); gotoxy(34,12); cprintf("Numero de entradas:"); scanf("%i",&n); cliente[c[1]][2]=n; clrscr(); //calculo del importe importe[c[1]]=(cliente[c[1]][2])*(sesiones[cliente[c[1]][1]-1]); gotoxy(34,12); cprintf("IMPORTE TOTAL:%i",importe[c[1]]); c[1]++; getch(); return ' '; } //menu tercero char menu3(int cliente[100][3],int importe[50],int c[1]) { char o='0'; int i; int suma[4]={0,0,0,0}; textbackground(0); textcolor(3); recuadro(49,14,80,24); textbackground(3); textcolor(15); gotoxy(52,16); cprintf("1.-Localidades por sala"); gotoxy(52,19); cprintf("2.-Importe total de ventas"); gotoxy(52,22); cprintf("3.-Localidades por sesion"); o=getch(); switch(o) { case '1': clrscr(); for(i=0;i34;x--) { gotoxy(x,12); cprintf("%s ",texto); delay(25); } delay(1000); for(y=13;y!=24;y++) for(x=35;x<45;x=x+2) { gotoxy(x,y-1); cprintf(" "); gotoxy(x,y); cprintf("%c",texto[x-35]); gotoxy(x+1,25-y); cprintf(" "); gotoxy(x+1,24-y); cprintf("%c",texto[x-34]); delay(50); } } //final del programa void final() { int x,y; textbackground(0); for(y=8;y<19;y++) { for(x=26;x<57;x++) { gotoxy(x,y); cprintf(" "); delay(10); } } }