Files
Borland-C/CPP/super/VIDEOFI.CPP

1461 lines
46 KiB
C++
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <dos.h>
#include <time.h>
#include "a:\gui.h"
#include "a:\libre.h"
#include "a:\iconos.h"
char titulo[80]={"Programa Gesti¢n del VideoClub Alfa. PROSOFT, Software"};
char *hora=NULL;
int estoy_en=1;// Indica el men£ en el que me encuentro.
int select_actual=1; // Indica que opci¢n est  seleccionada actualmente.
int n_op_menu=5; // N£mero de opciones del menu. (default menu1=5)
int refresco=1; // Para el calor... Refresca la pantalla :-).
int codigo_maxp=0, codigo_maxa=0;
int *p_estoy_en=&estoy_en;// -- Punteros a sus respectivas variables. --
int *p_select_actual=&select_actual;
int *p_n_op_menu=&n_op_menu;
int *p_refresco=&refresco;
FILE *cliente,*clientaux,*fcodigo;
// -------- Definici¢n de los patrones o "templates" ---------------------
struct peliculas {
char titulo[20], tema[10], director[21], duracion[4];
int codigo, n_alquileres, alq;
};
struct clientes{
int codigo;
char nombre[11], apellidos[21], direccion[21], telefono[11];
};
struct alquileres {
int lista_pelis[5], socios, codigo;
float fecha_dev;
};
// ---------------- Fin de la definici¢n de los patrones. -----------------
struct peliculas pelis; // Declaraci¢n de arrays
struct clientes socios; // de estructuras.
struct alquileres presta; // A nivel global.
void modo_grafico();
void menu(int, int);
void miga(int*, int*);
void localizacion(int, int, int);
void reloj(int, int);
void altas_clientes();
void bajas_clientes();
void modificar_clientes();
void listar_clientes();
void altas_peliculas();
void bajas_peliculas();
void modificar_peliculas();
void listar_peliculas();
void altas_alquileres();
void modificar_alquileres();
//void listar_alquileres(int);
void bajas_alquileres();
void limpiar3();
// ***********************************************************************
// PROGRAMA PRINCIPAL
// ***********************************************************************
void main() {
modo_grafico();
//presentacion(); // Me pregunto si llegar a hacerla... ;-). Creo que no.
menu(estoy_en, select_actual);
int tecla1, tecla12, sw=1;
while(sw==1){
reloj(423,100);
//fflush(stdin);
tecla1=tecla12=9999;
if (kbhit())
tecla1=getch();
if(tecla1==0) // leemos tecla especial.
{
tecla12=getch();
switch(tecla12) {
case 72: // Flecha arriba
if (select_actual<=1)
select_actual=1;
else {
select_actual--;
menu(estoy_en, select_actual);
}
break;
case 80: // Flecha abajo
if (select_actual>=n_op_menu)
select_actual=n_op_menu;
else{
select_actual++;
menu(estoy_en, select_actual);
}
break;
} // fin del switch-case
}// fin del if
else
if (tecla1==13) // MIGA DEL ASUNTO
{
miga(p_estoy_en, p_select_actual);
menu(estoy_en, select_actual);
}
else
if (tecla1==27)
if (estoy_en==1) // Se acab¢ la funci¢n...
sw=0;
else // Navegaci¢n descendente por men£s.
{
*p_estoy_en/=10;
*p_n_op_menu=5;
*p_select_actual=1;
*p_refresco=1;
menu(estoy_en,select_actual);
}
} // fin del while
// getch();
closegraph();
}
// ***********************************************************************
// --- FUNCIONES DEL PROGRAMA ---
// ***********************************************************************
// ------------------------------------------------------------------------
// FUNCIàN MIGA (MIGA DEL ASUNTO)
// (con punteros!, como mola...)
// ------------------------------------------------------------------------
void miga(int *p_estoy_en,int *p_select_actual) {
*p_refresco=1; // antes de nada tomemos una coca-cola... ;-)
switch (*p_estoy_en) // veamos que hay que hacer:
{
case 1: // naveguemos por los men£s: ir a menu 1.x
switch (*p_select_actual)
{
case 1:
*p_estoy_en=11;
*p_select_actual=1;
*p_n_op_menu=5;
break;
case 2:
*p_estoy_en=12;
*p_select_actual=1;
*p_n_op_menu=5;
break;
case 3:
*p_estoy_en=13;
*p_select_actual=1;
*p_n_op_menu=4;
break;
case 4:
*p_estoy_en=14;
*p_select_actual=1;
*p_n_op_menu=3;
break;
case 5:
exit(1);
break;
} // fin del switch-case(select_actual) de navegaci¢n de men£s.
break;//fin del case 1 general.
case 11: // Estamos en las opciones del menu1.
switch (select_actual) // veamos que hay que hacer.
{
case 1: // ALTAS DE CLIENTES.
altas_clientes();
break;
case 2: //BAJAS DE CLIENTES.
bajas_clientes();
break;
case 3: //MODIFICAR CLIENTES.
modificar_clientes();
break;
case 4: // LISTAR CLIENTES.
//listar_clientes();
break;
case 5: // VOLVER AL MENU 1.
*p_estoy_en=1;
*p_select_actual=1;
*p_n_op_menu=5;
break;
}
break;
case 12:
switch (select_actual) // veamos que hay que hacer.
{
case 1: // ALTAS DE PELICULAS.
//altas_peliculas();
break;
case 2: //BAJAS DE PELICULAS.
//bajas_peliculas();
break;
case 3: //MODIFICAR PELICULAS.
//modificar_peliculas();
break;
case 4: // LISTAR PELICULAS.
//listar_peliculas();
break;
case 5: // VOLVER AL MENU 1.
*p_estoy_en=1;
*p_select_actual=1;
*p_n_op_menu=5;
break;
}
break;
case 13:
switch (select_actual) // veamos que hay que hacer.
{
case 1: // ALTAS DE ALQUILERES.
//altas_alquileres();
break;
case 2: //MODIFICAR ALQUILERES.
//modificar_alquileres(50);
break;
case 3: //LISTAR ALQUILERES.
//listar_alquileres(50);
break;
case 4: // VOLVER AL MENU 1.
*p_estoy_en=1;
*p_select_actual=1;
*p_n_op_menu=5;
break;
}
break;
case 14:
switch (select_actual) // veamos que hay que hacer.
{
case 1: // BAJAS DE ALQUILERES.
//bajas_alquileres(50);
break;
case 2: // VOLVER AL MENU 1.
*p_estoy_en=1;
*p_select_actual=1;
*p_n_op_menu=5;
break;
}
break;
} // fin del switch-case(estoy_en) general (TOCHO).
} // fin de la funci¢n miga
// -----------------------------------------------------------------------
// FUNCIàN QUE INICIA EL MODO GRµFICO
// -----------------------------------------------------------------------
void modo_grafico(){
int gdriver = DETECT, gmode, errorcode;
initgraph(&gdriver, &gmode, "c:\\tc\\bgi");
errorcode = graphresult();
if (errorcode != grOk){
printf("Error al iniciar el modo gr fico: %s\n",
grapherrormsg(errorcode));
printf("Pulse cualquier tecla para finalizar...");
getch();
exit(1);
}
}
// -----------------------------------------------------------------------
// FUNCION MENU
// -----------------------------------------------------------------------
void menu(int estoy_en, int select_actual) {
//-------------------- CABECERA DE LA PANTALLA -----------------------
if (*p_refresco) // tomamos otro refresco... (ahora una fanta lim¢n).
{
setviewport(0, 0, getmaxx(), getmaxy(), 0);
settextstyle(2, 0, 5);
ventana(1, 1, getmaxx(), getmaxy(),titulo,1,9);
boton(5, 30, getmaxx()-5, 80, 0, "", 9, 3);
boton (423,100,633,125,0,"",1,7);// para el reloj
setcolor(8); line(5, 90, getmaxx()-5, 90); // dibujamos una doble
setcolor(15); line(5, 91, getmaxx()-5, 91); // l¡nea.
settextstyle(7,0,6); setcolor (1); // caja central con nuestro
outtextxy(110,23,"Video Club ALFA"); // logo del videoclub.
setcolor(8); line(5, 134, getmaxx()-5, 134); // dibujamos otra doble
setcolor(15); line(5, 135, getmaxx()-5, 135); // l¡nea.
localizacion(estoy_en,125,105); // mostramos en una barra donde estamos
*p_refresco=0; // demasiadas burbujas...
}
//----------------- fin de la cabecera de la pantalla ------------------
setviewport(185, 180, 600, 300, 0); // zona de los botones.
switch (estoy_en) // Mostramos un men£ seg£n donde estemos.
{
case 1: // ------------- MENU PRINCIPAL ------------------------------
settextstyle(2,0,6);
boton(0, 5, 250, 30, 0, "1.- Gesti¢n de Clientes", 16,7);
boton(0, 45, 250, 70, 0, "2.- Gesti¢n de Pel¡culas", 16,7);
boton(0, 85, 250, 110, 0, "3.- Alquileres", 16,7);
boton(0, 125, 250, 150, 0, "4.- Devoluciones", 16,7);
boton(0, 165, 250, 190, 0, "5.- Salir", 16,7);
break;
case 11: // ---------------- MENU CLIENTES ---------------------------
settextstyle(2,0,6);
boton(0, 5, 250, 30, 0, "1.- Altas de Clientes", 16,7);
boton(0, 45, 250, 70, 0, "2.- Bajas de Clientes", 16,7);
boton(0, 85, 250, 110, 0, "3.- Modificaciones", 16,7);
boton(0, 125, 250, 150, 0, "4.- Listado de clientes", 16,7);
boton(0, 165, 250, 190, 0, "5.- Volver", 16,7);
break;
case 12: // ------------- MENU GESTION DE PEDIDOS ---------------------
settextstyle(2,0,6);
boton(0, 5, 250, 30, 0, "1.- Altas de Pel¡culas", 16,7);
boton(0, 45, 250, 70, 0, "2.- Bajas de Pel¡culas", 16,7);
boton(0, 85, 250, 110, 0, "3.- Modificaciones", 16,7);
boton(0, 125, 250, 150, 0, "4.- Listado de datos", 16,7);
boton(0, 165, 250, 190, 0, "5.- Volver", 16,7);
break;
case 13: //------------------ MENU 3: ALQUILERES --------------------
settextstyle(2,0,6);
boton(0, 5, 250, 30, 0, "1.- Altas de Alquiler", 16,7);
boton(0, 45, 250, 70, 0, "2.- Modificar", 16,7);
boton(0, 85, 250, 110, 0, "3.- Listar Alquileres", 16,7);
boton(0, 125, 250, 150, 0, "4.- Volver", 16,7);
break;
case 14:// ------------------- MENU 4: DEVOLUCIONES ------------------
settextstyle(2,0,6);
boton(0, 5, 250, 30, 0, "1.- Devoluciones", 16,7);
boton(0, 45, 250, 70, 0, "2.- Modificaciones", 16,7);
boton(0, 85, 250, 110, 0, "3.- Volver", 16,7);
break;
} //fin del switch-case(estoy_en).
setlinestyle(1,0,2);
switch (select_actual)// Ahora pintamos un recuadro al bot¢n seleccionado.
{
case 1:
rectangle(5,9,245,26);
setlinestyle(0,0,2);rectangle(0,5,250,30);
break;
case 2:
rectangle(5,49,245,66);
setlinestyle(0,0,2);rectangle(0,45,250,70);
break;
case 3:
rectangle(5, 89, 245, 106);
setlinestyle(0,0,2);rectangle(0,85,250,110);
break;
case 4:
rectangle(5, 129, 245, 146);
setlinestyle(0,0,2);rectangle(0,125,250,150);
break;
case 5:
rectangle(5,169, 245, 186);
setlinestyle(0,0,2);rectangle(0,165,250,190);
break;
} // fin del switch-case(select_actual).
setlinestyle(0,0,0); // volvemos a poner el estilo de l¡nea normal.
} // fin de la funci¢n men£.
// ------------------------------------------------------------------------
// FUNCIàN LOCALIZACIàN
// ------------------------------------------------------------------------
void localizacion(int estoy_en, int x, int y) {
settextstyle(2,0,5);
boton(5,100,getmaxx()-225,124,1,"Localizaci¢n:",8,7);
setcolor(1);
switch (estoy_en) {
case 1:
outtextxy(x,y,"Men£ General");
break;
case 11:
outtextxy(x,y, "Men£ General / Gesti¢n de Clientes");
break;
case 12:
outtextxy(x,y, "Men£ General / Gesti¢n de Pedidos");
break;
case 13:
outtextxy(x,y, "Men£ General / Alquileres");
break;
case 14:
outtextxy(x,y, "Men£ General / Devoluciones");
break;
} // fin del switch-case
} // fin de la funci¢n.
// ------------------------------------------------------------------------
// FUNCIàN RELOJ
// ------------------------------------------------------------------------
void reloj (int x, int y) {
setviewport(0,0,getmaxx(),getmaxy(),1);
time_t t;
time(&t);
settextstyle(2,0,5);
char *aux=NULL;
aux=ctime(&t);
if (strcmp (hora,aux) != 0){
setcolor(7);
outtextxy(x+6,y+6,hora);
strcpy (hora,ctime(&t));
setcolor(1);
outtextxy(x+6,y+6,ctime(&t));
}
}
// ------------------------------------------------------------------------
// FUNCIàN ALTAS DE CLIENTES
// ------------------------------------------------------------------------
void altas_clientes() {
int j=0;
socios.codigo=0;
for(int i=0;i<10;i++){
socios.nombre[i]=NULL;
socios.telefono[i]=NULL;
}
for (i=0;i<20;i++){
socios.apellidos[i]=NULL;
socios.direccion[i]=NULL;
}
if ((cliente=fopen("k:\\files\\clientes.dat","rb"))==NULL &&
(cliente=fopen("k:\\files\\clientes.mov","rb"))==NULL){
j=1;
fclose(cliente);
}
else{
fclose(cliente);
clientaux=fopen("k:\\files\\clientes.cdg","a+b");
fread(&j,2,1,clientaux);
fclose(clientaux);
j++;
}
if (j<32000){
setviewport(70,160,getmaxx(),getmaxy(),0);
ventana(0,0,500,250,"Alta de Clientes",0,0);
setcolor(4); outtextxy(20,30,"Introduzca los Datos del Cliente:");
setcolor(8); line (20,50,480,50);
setcolor(15); line (20,51,480,51);
setcolor(1); outtextxy(30,70,"Nombre:");
setcolor(16); boton(120,70,220,90,1,"",0,0);
setcolor(1); outtextxy(30,100,"Apellidos:");
setcolor(16); boton(120,100,295,120,1,"",0,0);
setcolor(1); outtextxy(30,130,"Direcci¢n:");
setcolor(16); boton(120,130,295,150,1,"",0,0);
setcolor(1); outtextxy(30,160,"Telefono:");
setcolor(16); boton(120,160,220,180,1,"",16,0);
setcolor(8); outtextxy(30,190,"C¢digo:");
char aux[11];
socios.codigo=j;sprintf(aux,"%d",socios.codigo);
setcolor(16); boton(120,190,220,210,1,"",16,0);
outtextxy(130,192,aux);
icon2(10,73);
introcad(130,72,socios.nombre,10,16,2,5,7);
icon8(10,73);icon2(10,103);
introcad(130,102,socios.apellidos,20,16,2,5,7);
icon8(10,103);icon2(10,133);
introcad(130,132,socios.direccion,20,16,2,5,7);
icon8(10,133);icon2(10,163);
introcad(130,162,socios.telefono,10,16,2,5,7);
icon8(10,163);
ventana(240,160,475,235,"Verificaci¢n de datos",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(270,200,"¨Datos Correctos? (s/n)");
char respuesta=getch();
while(respuesta!='n' && respuesta!='s')
respuesta=getch();
if (respuesta=='s'){
cliente=fopen("k:\\files\\clientes.mov","a+b");
fwrite("A",1,1,cliente);// Tipo de movimiento.
fwrite(&(socios.codigo),2,1,cliente);
fwrite(&(socios.nombre),10,1,cliente);
fwrite(&(socios.apellidos),20,1,cliente);
fwrite(&(socios.direccion),20,1,cliente);
fwrite(&(socios.telefono),10,1,cliente);
fclose(cliente);
clientaux=fopen("k:\\files\\clientes.cdg","w+b");
fwrite(&j,2,1,clientaux);
fclose(clientaux);
}
}
else{
// imprimir tabla llena
}
} // fin de la funci¢n altas_clientes
// ------------------------------------------------------------------------
// FUNCIàN BAJAS DE CLIENTES
// ------------------------------------------------------------------------
void bajas_clientes(){
int sw=1;
if ((cliente=fopen("k:\\files\\clientes.dat","r+b"))==NULL){
setviewport(180,220,getmaxx(),getmaxy(),0);
ventana(20,20,240,100,"Error",4,0);
setcolor(0);settextstyle(2,0,6);
icon10(30,60);outtextxy(60,60,"No hay clientes !!");
sound(500);delay(300);nosound();getch();
}
else{
char codigo[11]={NULL};
setviewport(70,160,getmaxx(),getmaxy(),0);
ventana(0,0,500,250,"Bajas de Clientes",0,0);
setcolor(4); outtextxy(20,30,"Introduzca el C¢digo del Cliente:");
setcolor(8); line (20,50,480,50);
setcolor(15); line (20,51,480,51);
setcolor(8); outtextxy(30,70,"Nombre:");
setcolor(16); boton(120,70,220,90,1,"",0,0);
setcolor(8); outtextxy(30,100,"Apellidos:");
setcolor(16); boton(120,100,295,120,1,"",0,0);
setcolor(8); outtextxy(30,130,"Direcci¢n:");
setcolor(16); boton(120,130,295,150,1,"",0,0);
setcolor(8); outtextxy(30,160,"Telefono:");
setcolor(16); boton(120,160,220,180,1,"",16,0);
setcolor(1); outtextxy(30,190,"C¢digo:");
setcolor(16); boton(120,190,220,210,1,"",16,0);
icon2(10,193);
limpiar3();
introcad(130,192,codigo,11,0,2,5,7);
fseek(cliente,0,0);
while(sw){
fread(&(socios.codigo),2,1,cliente);
if (socios.codigo==atoi(codigo))
sw=0;
else{
fseek(cliente,64,1);
}
if (feof(cliente))
break;
}
if (sw){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Error",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(12,40,"El cliente no es socio nuestro.");
sound(500);delay(300);nosound();
getch();
}
else{
icon8(10,193);
setcolor(0);
fread(&(socios.nombre),11,1,cliente);
fread(&(socios.apellidos),21,1,cliente);
fread(&(socios.direccion),21,1,cliente);
fread(&(socios.telefono),11,1,cliente);
fclose(cliente);
outtextxy(130,72,socios.nombre);
outtextxy(130,102,socios.apellidos);
outtextxy(130,132,socios.direccion);
outtextxy(130,162,socios.telefono);
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Confirmar eliminaci¢n",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(30,40,"¨Est  seguro? (s/n)");
char respuesta=getch();
while(respuesta!='n' && respuesta!='s')
respuesta=getch();
if (respuesta=='s'){
cliente=fopen("k:\\files\\clientes.mov","a+b");
fwrite("B",1,1,cliente);// Tipo de movimiento.
fwrite(&socios,sizeof(socios),1,cliente);
fclose(cliente);
}
}
}
}
// ------------------------------------------------------------------------
// FUNCIàN MODIFICAR CLIENTES
// ------------------------------------------------------------------------
void modificar_clientes(){
// int j=0;
if ((cliente=fopen("k:\\files\\clientes.dat","r+b"))==NULL){
setviewport(180,220,getmaxx(),getmaxy(),0);
ventana(20,20,240,100,"Error",4,0);
setcolor(0);settextstyle(2,0,6);
icon10(30,60);outtextxy(60,60,"No hay clientes !!");
sound(500);delay(300);nosound();getch();
}
else{
if ((fcodigo=fopen("k:\\files\\clientes.cdg","r+b"))==NULL){
setviewport(180,220,getmaxx(),getmaxy(),0);
ventana(20,20,240,100,"Error",4,0);
setcolor(0);settextstyle(2,0,6);
icon10(30,60);outtextxy(60,60,"Faltan Archivos !!");
sound(500);delay(300);nosound();getch();
}
else{
char codigo[11]={NULL};
char codigo_max[11]={NULL};
fread(codigo_max,2,1,fcodigo);
setviewport(70,160,getmaxx(),getmaxy(),0);
ventana(0,0,500,250,"Modificaci¢n de Clientes",0,0);
setcolor(4); outtextxy(20,30,"Introduzca el C¢digo del Cliente:");
setcolor(8); line (20,50,480,50);
setcolor(15); line (20,51,480,51);
setcolor(8); outtextxy(30,70,"Nombre:");
setcolor(16); boton(120,70,220,90,1,"",0,0);
setcolor(8); outtextxy(30,100,"Apellidos:");
setcolor(16); boton(120,100,295,120,1,"",0,0);
setcolor(8); outtextxy(30,130,"Direcci¢n:");
setcolor(16); boton(120,130,295,150,1,"",0,0);
setcolor(8); outtextxy(30,160,"Telefono:");
setcolor(16); boton(120,160,220,180,1,"",16,0);
setcolor(1); outtextxy(30,190,"C¢digo:");
setcolor(16); boton(120,190,220,210,1,"",16,0);
icon2(10,193);
introcad(130,192,codigo,11,0,2,5,7);
while(atoi(codigo)>atoi(codigo_max) || atoi(codigo)<=0
|| socios.codigo==-1){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Error",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(12,40,"El cliente no es socio nuestro.");
sound(500);delay(300);nosound();
getch();setviewport(0,0,getmaxx(),getmaxy(),0);
setcolor(7);setfillstyle(1,7);bar(305,318,560,400);
setviewport(70,160,getmaxx(),getmaxy(),0);
outtextxy(130,192,codigo);
introcad(130,192,codigo,12,0,2,5,7);
}
icon8(10,193);
setcolor(0);
outtextxy(130,72,socios.nombre);
outtextxy(130,102,socios.apellidos);
outtextxy(130,132,socios.direccion);
outtextxy(130,162,socios.telefono);
setcolor(8); outtextxy(30,190,"C¢digo:");
setcolor(7);outtextxy(20,30,"Introduzca el C¢digo del Cliente:");
setcolor(4);outtextxy(20,30,"Elija el Campo a Modificar:");
setcolor(1); outtextxy(30,70,"Nombre:");
setcolor(1); outtextxy(30,100,"Apellidos:");
setcolor(1); outtextxy(30,130,"Direcci¢n:");
setcolor(1); outtextxy(30,160,"Telefono:");
int tecla1, tecla12, sw=1,pos=1,y=73;// pos es el campo (1)
icon9(10,y,4);
while(sw==1){
tecla1=getch();
if(tecla1==0) // leemos tecla especial.
{
tecla12=getch();
switch(tecla12) {
case 72: // Flecha arriba
if (pos>1){
pos--;icon9(10,y,7);
y-=30;
icon9(10,y,4);
}
break;
case 80: // Flecha abajo
if (pos<4){
pos++;icon9(10,y,7);
y+=30;
icon9(10,y,4);
}
break;
} // fin del switch-case
}// fin del if
else
if (tecla1==13) // MIGA DEL ASUNTO
{
icon9(10,y,2);
switch(pos){
case 1:
setcolor(7);outtextxy(130,72,socios.nombre);
introcad(130,72,socios.nombre,11,16,2,5,7);
break;
case 2:
setcolor(7);outtextxy(130,102,socios.apellidos);
introcad(130,102,socios.apellidos,21,16,2,5,7);
break;
case 3:
setcolor(7);outtextxy(130,132,socios.direccion);
introcad(130,132,socios.direccion,21,16,2,5,7);
break;
case 4:
setcolor(7);outtextxy(130,162,socios.telefono);
introcad(130,162,socios.telefono,11,16,2,5,7);
break;
}
icon9(10,y,4);
}
else
if (tecla1==27)
sw=0;
} // fin del while
}
}
}
// ------------------------------------------------------------------------
// FUNCIàN LISTAR CLIENTES
// ------------------------------------------------------------------------
void listar_clientes(){
int j=0;
while (j<1 && socios.codigo==0 || socios.codigo==-1) j++;
if (j==1){
setviewport(180,220,getmaxx(),getmaxy(),0);
ventana(20,20,240,100,"Error",4,0);
setcolor(0);settextstyle(2,0,6);
icon10(30,60);outtextxy(60,60,"No hay clientes !!");
sound(500);delay(300);nosound();getch();
}
else{
setviewport(20,160,getmaxx(),getmaxy(),0);
ventana(0,0,600,250,"Listado de Clientes",0,0);
setcolor(4);
outtextxy(10,30,"COD Nombre Apellidos Direcci¢n Telfono");
setcolor(8); line (10,50,590,50);
setcolor(15); line (10,51,590,51);
setcolor(0);settextstyle(2,0,5);
j=0;int con=0;
for (int y=60;j<1;j++){
if(con==12){
getch();
con=0;y=60;setcolor(7);setfillstyle(1,7);bar(10,60,590,240);
setcolor(0);
}
if (socios.codigo>0){
char cod[6];
sprintf(cod,"%d",socios.codigo);
outtextxy(10,y,cod);
outtextxy(58,y,socios.nombre);
outtextxy(152,y,socios.apellidos);
outtextxy(332,y,socios.direccion);
outtextxy(512,y,socios.telefono);
y+=15;con++;
}
}
getch();
}
}
// ------------------------------------------------------------------------
// FUNCIàN ALTAS DE PELICULAS
// ------------------------------------------------------------------------
void altas_peliculas(){
int j=0;
while (j<1 && pelis.codigo>0) j++;
if (j<1){
int sw=0;
do{
setviewport(70,160,getmaxx(),getmaxy(),0);
ventana(0,0,500,250,"Alta de Pel¡culas",0,0);
setcolor(4); outtextxy(20,30,"Introduzca los Datos de la Pel¡cula:");
setcolor(8); line (20,50,480,50);
setcolor(15); line (20,51,480,51);
setcolor(1); outtextxy(30,70,"T¡tulo:");
setcolor(16); boton(120,70,290,90,1,"",0,0);
setcolor(1); outtextxy(30,100,"Director:");
setcolor(16); boton(120,100,290,120,1,"",0,0);
setcolor(1); outtextxy(30,130,"Duraci¢n:");
setcolor(16); boton(120,130,220,150,1,"",0,0);
setcolor(1);outtextxy(160,132,"minutos");
setcolor(1); outtextxy(30,160,"Tema:");
setcolor(16); boton(120,160,220,180,1,"",16,0);
settextstyle(2,0,4);
setcolor(8); outtextxy(30,195,"N§ alquileres:");
setcolor(16); boton(120,190,220,210,1,"",16,0);
settextstyle(2,0,5);
outtextxy(130,192,"0");
setcolor(8); outtextxy(30,220,"C¢digo:");
char aux[11];
pelis.codigo=j+1;sprintf(aux,"%d",pelis.codigo);
setcolor(16); boton(120,220,220,240,1,"",16,0);
outtextxy(130,222,aux);
icon2(10,73);
introcad(130,72,pelis.titulo,20,16,2,5,7);
icon8(10,73);icon2(10,103);
introcad(130,102,pelis.director,20,16,2,5,7);
icon8(10,103);icon2(10,133);
introcad(130,132,pelis.duracion,4,16,2,5,7);
icon8(10,133);icon2(10,163);
introcad(130,162,pelis.tema,11,16,2,5,7);
icon8(10,163);
ventana(240,160,475,235,"Verificaci¢n de datos",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(270,200,"¨Datos Correctos? (s/n)");
char respuesta=getch();
while(respuesta!='n' && respuesta!='s')
respuesta=getch();
if (respuesta=='n')
sw=1;
else{
sw=0;
codigo_maxp=j+1;
}
}while(sw);
}
else{
// imprimir tabla llena
}
}
// ------------------------------------------------------------------------
// FUNCIàN BAJAS DE PELICULAS
// ------------------------------------------------------------------------
void bajas_peliculas(){
int j=0;
while (j<1 && pelis.codigo==0 || pelis.codigo==-1) j++;
if (j==1){
setviewport(180,220,getmaxx(),getmaxy(),0);
ventana(20,20,240,100,"Error",4,0);
setcolor(0);settextstyle(2,0,6);
icon10(30,60);outtextxy(60,60,"No hay pel¡culas !!");
sound(500);delay(300);nosound();getch();
}
else{
char codigo[11]={NULL};
setviewport(70,160,getmaxx(),getmaxy(),0);
ventana(0,0,500,250,"Bajas de Pel¡culas",0,0);
setcolor(4); outtextxy(20,30,"Introduzca el C¢digo de la Pel¡cula:");
setcolor(8); line (20,50,480,50);
setcolor(15); line (20,51,480,51);
setcolor(8); outtextxy(30,70,"T¡tulo:");
setcolor(16); boton(120,70,290,90,1,"",0,0);
setcolor(8); outtextxy(30,100,"Director:");
setcolor(16); boton(120,100,290,120,1,"",0,0);
setcolor(8); outtextxy(30,130,"Duraci¢n:");
setcolor(16); boton(120,130,220,150,1,"",0,0);
setcolor(1);outtextxy(160,132,"minutos");
setcolor(8); outtextxy(30,160,"Tema:");
setcolor(16); boton(120,160,220,180,1,"",16,0);
settextstyle(2,0,4);
setcolor(8); outtextxy(30,195,"N§ alquileres:");
setcolor(16); boton(120,190,220,210,1,"",16,0);
settextstyle(2,0,5);
setcolor(1); outtextxy(30,220,"C¢digo:");
setcolor(16); boton(120,220,220,240,1,"",16,0);
icon2(10,223);
introcad(130,222,codigo,11,0,2,5,7);
while(atoi(codigo)>codigo_maxp){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Error",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(12,40,"La pel¡cula no es conocida.");
sound(500);delay(300);nosound();
getch();setviewport(0,0,getmaxx(),getmaxy(),0);
setcolor(7);setfillstyle(1,7);bar(305,318,560,400);
setviewport(70,160,getmaxx(),getmaxy(),0);
outtextxy(130,222,codigo);
introcad(130,222,codigo,12,0,2,5,7);
}
icon8(10,223);
setcolor(0);
outtextxy(130,72,pelis.titulo);
outtextxy(130,102,pelis.director);
outtextxy(130,132,pelis.duracion);
outtextxy(130,162,pelis.tema);
char na[6]={NULL};
sprintf(na,"%d",pelis.n_alquileres);
outtextxy(130,192,na);
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Confirmar eliminaci¢n",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(30,40,"¨Est  seguro? (s/n)");
char respuesta=getch();
while(respuesta!='n' && respuesta!='s')
respuesta=getch();
if (respuesta=='s')
pelis.codigo=-1;
}
}
// ------------------------------------------------------------------------
// FUNCIàN MODIFICAR PELICULAS
// ------------------------------------------------------------------------
void modificar_peliculas(){
int j=0;
while (j<1 && pelis.codigo==0 || pelis.codigo==-1) j++;
if (j==1){
setviewport(180,220,getmaxx(),getmaxy(),0);
ventana(20,20,240,100,"Error",4,0);
setcolor(0);settextstyle(2,0,6);
icon10(30,60);outtextxy(60,60,"No hay pel¡culas !!");
sound(500);delay(300);nosound();getch();
}
else{
char codigo[11]={NULL};
setviewport(70,160,getmaxx(),getmaxy(),0);
ventana(0,0,500,250,"Modificaci¢n de Pel¡culas",0,0);
setcolor(4); outtextxy(20,30,"Introduzca el C¢digo de la Pel¡cula:");
setcolor(8); line (20,50,480,50);
setcolor(15); line (20,51,480,51);
setcolor(1); outtextxy(30,70,"T¡tulo:");
setcolor(16); boton(120,70,290,90,1,"",0,0);
setcolor(1); outtextxy(30,100,"Director:");
setcolor(16); boton(120,100,290,120,1,"",0,0);
setcolor(1); outtextxy(30,130,"Duraci¢n:");
setcolor(16); boton(120,130,220,150,1,"",0,0);
setcolor(1);outtextxy(160,132,"minutos");
setcolor(1); outtextxy(30,160,"Tema:");
setcolor(16); boton(120,160,220,180,1,"",16,0);
settextstyle(2,0,4);
setcolor(8); outtextxy(30,195,"N§ alquileres:");
setcolor(16); boton(120,190,220,210,1,"",16,0);
settextstyle(2,0,5);
setcolor(1); outtextxy(30,220,"C¢digo:");
setcolor(16); boton(120,220,220,240,1,"",16,0);
icon2(10,223);
introcad(130,222,codigo,11,0,2,5,7);
while(atoi(codigo)>codigo_maxp || atoi(codigo)<=0
|| pelis.codigo==-1){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Error",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(12,40,"La pel¡cula no es conocida.");
sound(500);delay(300);nosound();
getch();setviewport(0,0,getmaxx(),getmaxy(),0);
setcolor(7);setfillstyle(1,7);bar(305,318,560,400);
setviewport(70,160,getmaxx(),getmaxy(),0);
outtextxy(130,222,codigo);
introcad(130,222,codigo,12,0,2,5,7);
}
icon8(10,223);
setcolor(0);
outtextxy(130,72,pelis.titulo);
outtextxy(130,102,pelis.director);
outtextxy(130,132,pelis.duracion);
outtextxy(130,162,pelis.tema);
char na[6]={NULL};
sprintf(na,"%d",pelis.n_alquileres);
outtextxy(130,192,na);
setcolor(8); outtextxy(30,220,"C¢digo:");
setcolor(7);outtextxy(20,30,"Introduzca el C¢digo de la Pel¡cula:");
setcolor(4);outtextxy(20,30,"Elija el Campo a Modificar:");
setcolor(1); outtextxy(30,70,"T¡tulo:");
setcolor(1); outtextxy(30,100,"Director:");
setcolor(1); outtextxy(30,130,"Duraci¢n:");
setcolor(1); outtextxy(30,160,"Tema:");
int tecla1, tecla12, sw=1,pos=1,y=73;// pos es el campo (1)
icon9(10,y,4);
while(sw==1){
tecla1=getch();
if(tecla1==0) // leemos tecla especial.
{
tecla12=getch();
switch(tecla12) {
case 72: // Flecha arriba
if (pos>1){
pos--;icon9(10,y,7);
y-=30;
icon9(10,y,4);
}
break;
case 80: // Flecha abajo
if (pos<4){
pos++;icon9(10,y,7);
y+=30;
icon9(10,y,4);
}
break;
} // fin del switch-case
}// fin del if
else
if (tecla1==13) // MIGA DEL ASUNTO
{
icon9(10,y,2);
switch(pos){
case 1:
setcolor(7);outtextxy(130,72,pelis.titulo);
introcad(130,72,pelis.titulo,20,16,2,5,7);
break;
case 2:
setcolor(7);outtextxy(130,102,pelis.director);
introcad(130,102,pelis.director,20,16,2,5,7);
break;
case 3:
setcolor(7);outtextxy(130,132,pelis.duracion);
introcad(130,132,pelis.duracion,4,16,2,5,7);
break;
case 4:
setcolor(7);outtextxy(130,162,pelis.tema);
introcad(130,162,pelis.tema,11,16,2,5,7);
break;
}
icon9(10,y,4);
}
else
if (tecla1==27)
sw=0;
} // fin del while
}
}
// ------------------------------------------------------------------------
// FUNCIàN LISTAR PELICULAS
// ------------------------------------------------------------------------
void listar_peliculas(){
int j=0;
while (j<1 && pelis.codigo==0 || pelis.codigo==-1) j++;
if (j==1){
setviewport(180,220,getmaxx(),getmaxy(),0);
ventana(20,20,240,100,"Error",4,0);
setcolor(0);settextstyle(2,0,6);
icon10(30,60);outtextxy(60,60,"No hay pel¡culas !!");
sound(500);delay(300);nosound();getch();
}
else{
setviewport(20,160,getmaxx(),getmaxy(),0);
ventana(0,0,600,250,"Listado de Pel¡culas",0,0);
setcolor(4);
outtextxy(10,30,"COD T¡tulo Director Min. Alquileres Tema");
setcolor(8); line (10,50,590,50);
setcolor(15); line (10,51,590,51);
setcolor(0);settextstyle(2,0,5);
j=0;int con=0;
for (int y=60;j<1;j++){
if(con==12){
getch();
con=0;y=60;setcolor(7);setfillstyle(1,7);bar(10,60,590,240);
setcolor(0);
}
if (pelis.codigo>0){
char cod[6];
sprintf(cod,"%d",pelis.codigo);
outtextxy(10,y,cod);
outtextxy(58,y,pelis.titulo);
outtextxy(220,y,pelis.director);
outtextxy(382,y,pelis.duracion);
char aux[6];
sprintf(aux,"%d",pelis.n_alquileres);
outtextxy(424,y,aux);
outtextxy(514,y,pelis.tema);
y+=15;con++;
}
}
getch();
}
}
// ------------------------------------------------------------------------
// FUNCIàN ALTAS DE ALQUILERES
// ------------------------------------------------------------------------
/*void altas_alquileres(){
int j=0;
while (j<1 && presta.codigo>0) j++;
if (j<1){
int sw=0;
do{
char codigo[6];
setviewport(70,160,getmaxx(),getmaxy(),0);
ventana(0,0,500,250,"Alta de Alquileres",0,0);
setcolor(4); outtextxy(20,30,"Introduzca los Datos del Alquiler:");
setcolor(8); line (20,50,480,50);
setcolor(15); line (20,51,480,51);
settextstyle(2,0,4);
setcolor(1); outtextxy(30,73,"Cod. Cliente:");
setcolor(16); boton(120,70,220,90,1,"",0,0);
setcolor(16); boton(230,70,480,90,1,"",0,0);
setcolor(1); outtextxy(30,103,"Cod. Pel¡cula:");
setcolor(16); boton(120,100,220,120,1,"",0,0);
setcolor(16); boton(230,100,400,120,1,"",16,0);
settextstyle(2,0,5);
setcolor(8); outtextxy(30,130,"Pel¡culas:");
setcolor(16); boton(120,130,380,150,1,"",0,0);
setcolor(8); outtextxy(30,160,"Fecha dev:");
setcolor(16); boton(120,160,220,180,1,"",0,0);
setcolor(0);outtextxy(130,162,"48 h.");
setcolor(8); outtextxy(30,190,"C¢digo:");
setcolor(16); boton(120,190,220,210,1,"",0,0);
char aux[11];
presta.codigo=j+1;sprintf(aux,"%d",presta.codigo);
setcolor(0);outtextxy(130,192,aux);
icon2(10,73);
introcad(130,72,codigo,6,0,2,5,7);
char a;int sw2=1;
while(atoi(codigo)>codigo_max || atoi(codigo)<=0
|| socios.codigo==-1){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Error",4,0);
setcolor(0);settextstyle(2,0,4);
outtextxy(30,40,"Cliente no v lido. ¨Repetir? (s/n)");
sound(500);delay(300);nosound();
a=getch();
while (a!='s' && a!='n')
a=getch();
if (a=='s'){
setviewport(0,0,getmaxx(),getmaxy(),0);
setcolor(7);setfillstyle(1,7);bar(305,318,560,400);
setviewport(70,160,getmaxx(),getmaxy(),0);
settextstyle(2,0,5);outtextxy(130,72,codigo);
introcad(130,72,codigo,6,0,2,5,7);
}
else{
sw2=0;
break;
}
}
presta.socios=socios.codigo;
if (sw2){
int con=0,x=130;
while(con<5){
icon8(10,73);
setcolor(0);
outtextxy(235,72,socios.nombre);
outtextxy(320,72,socios.apellidos);
icon2(10,103);
introcad(130,102,codigo,6,0,2,5,7);
while(atoi(codigo)>codigo_maxp || atoi(codigo)<=0
|| pelis.codigo==-1
|| pelis.alq==1){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Error",4,0);
setcolor(0);settextstyle(2,0,4);
outtextxy(20,40,"Pelicula no disponible. ¨Repetir? (s/n)");
sound(500);delay(300);nosound();
a=getch();
while (a!='s' && a!='n')
a=getch();
if (a=='s'){
setviewport(0,0,getmaxx(),getmaxy(),0);
setcolor(7);setfillstyle(1,7);bar(305,318,560,400);
setviewport(70,160,getmaxx(),getmaxy(),0);
settextstyle(2,0,5);outtextxy(130,102,codigo);
introcad(130,102,codigo,6,0,2,5,7);
}
else{
sw2=0;
break;
}
}
if (sw2){
icon8(10,103);
setcolor(0);
outtextxy(240,102,pelis.titulo);
pelis.alq=1;
presta.lista_pelis[con]=pelis.codigo;
(pelis.n_alquileres)++;
}
if (con<5){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Pel¡culas",1,0);
setcolor(0);settextstyle(2,0,4);
outtextxy(20,40,"¨Quiere introducir m s pel¡culas? (s/n)");
settextstyle(2,0,5);
a=getch();
while (a!='s' && a!='n')
a=getch();
if (a=='s'){
setviewport(0,0,getmaxx(),getmaxy(),0);
setcolor(7);setfillstyle(1,7);bar(305,318,560,400);
setviewport(70,160,getmaxx(),getmaxy(),0);
settextstyle(2,0,5);outtextxy(130,102,codigo);
if (sw2){
outtextxy(240,102,pelis.titulo);
setcolor(0);
outtextxy(x,132,codigo);
con++;x+=50;
}
sw2=1;
}
else{
if (presta.lista_pelis[0]==0)
presta.codigo=0;
else{
codigo_maxa=j+1;
}
break;
}
}
}
}
}while(sw);
}
else{
// imprimir tabla llena
}
}
// ------------------------------------------------------------------------
// FUNCIàN ALTAS DE ALQUILERES
// ------------------------------------------------------------------------
void modificar_alquileres(){
int j=0;
while (j<1 && presta.codigo==0 || presta.codigo==-1) j++;
if (j==1){
setviewport(180,220,getmaxx(),getmaxy(),0);
ventana(20,20,240,100,"Error",4,0);
setcolor(0);settextstyle(2,0,6);
icon10(30,60);outtextxy(60,60,"No hay alquileres!!");
sound(500);delay(300);nosound();getch();
}
else{
char codigo[11]={NULL};
setviewport(70,160,getmaxx(),getmaxy(),0);
ventana(0,0,500,250,"Modificaci¢n de Alquileres",0,0);
setcolor(4); outtextxy(20,30,"Introduzca el C¢digo del Alquiler:");
setcolor(8); line (20,50,480,50);
setcolor(15); line (20,51,480,51);
settextstyle(2,0,4);
setcolor(8); outtextxy(30,73,"Cod. Cliente:");
setcolor(16); boton(120,70,220,90,1,"",0,0);
setcolor(16); boton(230,70,480,90,1,"",0,0);
settextstyle(2,0,5);
setcolor(8); outtextxy(30,100,"Pel¡cula 1:");
setcolor(16); boton(120,100,220,120,1,"",0,0);
setcolor(1); outtextxy(250,100,"C¢digo:");
setcolor(16); boton(320,100,420,120,1,"",0,0);
setcolor(8); outtextxy(30,130,"Pel¡cula 2:");
setcolor(16); boton(120,130,220,150,1,"",0,0);
setcolor(8); outtextxy(30,160,"Pel¡cula 3:");
setcolor(16); boton(120,160,220,180,1,"",16,0);
setcolor(8); outtextxy(30,190,"Pel¡cula 4:");
setcolor(16); boton(120,190,220,210,1,"",16,0);
setcolor(8); outtextxy(30,220,"Pel¡cula 5:");
setcolor(16); boton(120,220,220,240,1,"",16,0);
icon2(230,103);
introcad(330,102,codigo,11,0,2,5,7);
while(atoi(codigo)>codigo_maxa || atoi(codigo)<=0
|| presta.codigo==-1){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Error",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(20,40,"El alquiler no existe.");
sound(500);delay(300);nosound();
getch();setviewport(0,0,getmaxx(),getmaxy(),0);
setcolor(7);setfillstyle(1,7);bar(305,318,560,400);
setviewport(70,160,getmaxx(),getmaxy(),0);
outtextxy(330,102,codigo);
introcad(330,102,codigo,12,0,2,5,7);
}
icon8(230,103);
setcolor(8); outtextxy(250,100,"C¢digo:");
setcolor(1); outtextxy(30,100,"Pel¡cula 1:");
setcolor(1); outtextxy(30,130,"Pel¡cula 2:");
setcolor(1); outtextxy(30,160,"Pel¡cula 3:");
setcolor(1); outtextxy(30,190,"Pel¡cula 4:");
setcolor(1); outtextxy(30,220,"Pel¡cula 5:");
char aux[6];
sprintf(aux,"%d",presta.lista_pelis[0]);
setcolor(0);outtextxy(130,102,aux);
sprintf(aux,"%d",presta.lista_pelis[1]);
outtextxy(130,132,aux);
sprintf(aux,"%d",presta.lista_pelis[2]);
outtextxy(130,162,aux);
sprintf(aux,"%d",presta.lista_pelis[3]);
outtextxy(130,192,aux);
sprintf(aux,"%d",presta.lista_pelis[4]);
outtextxy(130,222,aux);
sprintf(aux,"%d",presta.socios);
outtextxy(130,72,aux);
outtextxy(130,235,socios.nombre);
outtextxy(130,320,socios.apellidos);
int tecla1, tecla12, sw=1,pos=1,y=103;// pos es el campo (1)
icon9(10,y,4);
while(sw==1){
tecla1=getch();
if(tecla1==0) // leemos tecla especial.
{
tecla12=getch();
switch(tecla12) {
case 72: // Flecha arriba
if (pos>1){
pos--;icon9(10,y,7);
y-=30;
icon9(10,y,4);
}
break;
case 80: // Flecha abajo
if (pos<5){
pos++;icon9(10,y,7);
y+=30;
icon9(10,y,4);
}
break;
} // fin del switch-case
}// fin del if
else
if (tecla1==13) // MIGA DEL ASUNTO
{
icon9(10,y,2);
char aux[6];int sw2=1;
switch(pos){
case 1:
sprintf(aux,"%d",presta.lista_pelis[0]);
setcolor(7);outtextxy(130,102,aux);
introcad(130,102,aux,6,16,2,5,7);
while(atoi(codigo)>codigo_maxp || atoi(codigo)<=0
|| pelis.codigo==-1
|| pelis.alq==1){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Error",4,0);
setcolor(0);settextstyle(2,0,4);
outtextxy(20,40,"Pelicula no disponible. ¨Repetir? (s/n)");
sound(500);delay(300);nosound();
int a=getch();
while (a!='s' && a!='n')
a=getch();
if (a=='s'){
setviewport(0,0,getmaxx(),getmaxy(),0);
setcolor(7);setfillstyle(1,7);bar(305,318,560,400);
setviewport(70,160,getmaxx(),getmaxy(),0);
settextstyle(2,0,5);outtextxy(130,102,codigo);
introcad(130,102,codigo,6,0,2,5,7);
}
else{
sw2=0;
break;
}
}
if (sw2)
presta.lista_pelis[0]=atoi(aux);
else{
setcolor(0);outtextxy(130,102,aux);
}
break;
case 2:
sprintf(aux,"%d",presta.lista_pelis[1]);
setcolor(7);outtextxy(130,132,aux);
introcad(130,132,aux,6,16,2,5,7);
presta.lista_pelis[1]=atoi(aux);
break;
case 3:
sprintf(aux,"%d",presta.lista_pelis[2]);
setcolor(7);outtextxy(130,162,aux);
introcad(130,162,aux,4,16,2,5,7);
presta.lista_pelis[2]=atoi(aux);
break;
case 4:
sprintf(aux,"%d",presta.lista_pelis[3]);
setcolor(7);outtextxy(130,192,aux);
introcad(130,192,aux,11,16,2,5,7);
presta.lista_pelis[3]=atoi(aux);
break;
}
icon9(10,y,4);
}
else
if (tecla1==27)
sw=0;
} // fin del while
}
getch();
}
void bajas_alquileres(){
int j=0;
while (j<1 && presta.codigo==0 || presta.codigo==-1) j++;
if (j==1){
setviewport(180,220,getmaxx(),getmaxy(),0);
ventana(20,20,240,100,"Error",4,0);
setcolor(0);settextstyle(2,0,6);
icon10(30,60);outtextxy(60,60,"No hay alquileres!!");
sound(500);delay(300);nosound();getch();
}
else{
char codigo[11]={NULL};
setviewport(70,160,getmaxx(),getmaxy(),0);
ventana(0,0,500,250,"Bajas de Alquileres",0,0);
setcolor(4); outtextxy(20,30,"Introduzca el C¢digo del Alquiler:");
setcolor(8); line (20,50,480,50);
setcolor(15); line (20,51,480,51);
settextstyle(2,0,4);
setcolor(1); outtextxy(30,73,"Cod. Cliente:");
setcolor(16); boton(120,70,220,90,1,"",0,0);
setcolor(16); boton(230,70,480,90,1,"",0,0);
setcolor(1); outtextxy(30,103,"Cod. Pel¡cula:");
setcolor(16); boton(120,100,220,120,1,"",0,0);
setcolor(16); boton(230,100,400,120,1,"",16,0);
settextstyle(2,0,5);
setcolor(8); outtextxy(30,130,"Pel¡culas:");
setcolor(16); boton(120,130,380,150,1,"",0,0);
setcolor(8); outtextxy(30,160,"Fecha dev:");
setcolor(16); boton(120,160,220,180,1,"",0,0);
setcolor(0);outtextxy(130,162,"48 h.");
setcolor(8); outtextxy(30,190,"C¢digo:");
setcolor(16); boton(120,190,220,210,1,"",0,0);
icon2(10,193);
introcad(130,192,codigo,11,0,2,5,7);
while(atoi(codigo)>codigo_maxp){
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Error",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(12,40,"El alquiler no exuiste.");
sound(500);delay(300);nosound();
getch();setviewport(0,0,getmaxx(),getmaxy(),0);
setcolor(7);setfillstyle(1,7);bar(305,318,560,400);
setviewport(70,160,getmaxx(),getmaxy(),0);
outtextxy(130,192,codigo);
introcad(130,192,codigo,12,0,2,5,7);
}
icon8(10,223);
setcolor(0);
char na[6]={NULL};
sprintf(na,"%d",pelis.n_alquileres);
outtextxy(130,192,na);
setviewport(305,318,560,400,1);
ventana(1,1,250,75,"Confirmar eliminaci¢n",4,0);
setcolor(0);settextstyle(2,0,5);
outtextxy(30,40,"¨Est  seguro? (s/n)");
char respuesta=getch();
while(respuesta!='n' && respuesta!='s')
respuesta=getch();
if (respuesta=='s')
pelis.codigo=-1;
}
} */
void limpiar3(){
for (int n=0;n<21;n++){
socios.apellidos[n]=NULL;socios.direccion[n]=NULL;
}
for (n=0;n<11;n++){
socios.nombre[n]=NULL;socios.telefono[n]=NULL;
}
socios.codigo=0;
}