void alquilar(Producto miProducto[], int auxCodigo[]) { int dni; int a = 0; int i; int codigo; printf("\nIngrese el codigo del Libro a llevar: "); scanf("%d", &codigo); if(validar_existeCodigo(auxCodigo, codigo) != 0) { for(i = 0; i < TAMANIO; i++)//corregido (busco el codigo) { if(miProducto[i].codigo == codigo) break; } dni = pedirNumero("DNI"); do { a = 0; if(validar_cantidad(dni) != 0) { miProducto[i].DNI = dni; } else { printf("\nERROR, D.N.I incorrecto\n"); dni = pedirNumero("DNI");//corregido a = 1; } }while(a == 1); miProducto[i].alquilado = 1; printf("\nLibro prestado\n"); miProducto[i].prestados = miProducto[i].prestados + 1; } else printf("\nEl codigo del Libro no existe\n"); printf("\n\n"); }
//funcion para pop() void muestraElimina(ArrayList* self) { int i; char resp; do { resp = 'n'; i = pedirNumero("Ingrese la posicion de la lista que desea obtener: "); i--; if(!longitudLista(self, i)) resp = preguntarSiSeguir("\nLa posicion no existe\nDesea volver a intentarlo?s/n: "); else { printf("\nEl conenido de la posicion [%d] es: %d\n", i+1 , *(int*)(self->pop(self, i))); printf("\nHa sido eliminada\n"); } resp = tolower(resp); }while(resp != 'n'); system("PAUSE"); }
//funcion para REMOVE() void eliminarElemento(ArrayList* self) { int i; char resp; do { resp = 'n'; i = pedirNumero("Ingrese la posicion en la lista que desea borrar: "); i--; if(longitudLista(self, i) == 0) resp = preguntarSiSeguir("\nLa posicion no existe\nDesea volver a intentarlo?s/n: "); else { self -> remov(self, i); printf("\nPosicion borrada"); } resp = tolower(resp); }while(resp != 'n'); system("PAUSE"); }
//funcion para push() //inserta elemento en la lista void insertaElemento(ArrayList* self) { int i; char resp; int* numero; do { resp = 'n'; i = pedirNumero("Ingrese la posicion de la lista que desea insertar: "); i--; if(!longitudLista(self, i)) resp = preguntarSiSeguir("\nLa posicion no existe\nDesea volver a intentarlo?s/n: "); else { numero = (int*) malloc(sizeof(int)); *numero = pedirNumero("Ingrese un numero a la posicion: "); self->push(self, i, numero); printf("\nElemento agregado con exito\n"); } resp = tolower(resp); }while(resp != 'n'); system("PAUSE"); }
//funcion subList() void subConjunto(ArrayList* self) { int to, from; char resp; ArrayList* subLista; do { resp = 'n'; from = pedirNumero("Ingrese la posicion desde donde desea empezar a copiar: "); to = pedirNumero("Ingrese la posicion hasta donde desea terminar de copiar: "); from--; to--; if(from > to) resp = preguntarSiSeguir("\nLas posiciones ingresadas son incorrectas\nDesea volver a intentarlo?s/n: "); else if(!longitudLista(self, from)||!longitudLista(self, to)) resp = preguntarSiSeguir("\nLas posiciones ingresadas son incorrectas\nDesea volver a intentarlo?s/n: "); else { subLista = subList(self, from, to); printf("\nCONTENIDO DE LA SUBLISTA\n"); mostrar(subLista); } resp = tolower(resp); }while(resp != 'n'); free(subLista); }
void ingresarNumeros(ArrayList* self) { char resp = 's'; int* element; do { element = (int*) malloc(sizeof(int)); *element = pedirNumero("Ingrese un numero: "); self -> add(self, element); resp = preguntarSiSeguir("Desea continuar?s/n: "); resp = tolower(resp); // fwrite(self->pElements, sizeof(self), 1, datos); }while(resp != 'n'); }
//funcion containsAll() void compruebaLista(ArrayList* self) { int* aux; ArrayList* array; char resp = 's'; array = newArrayList(); do { aux = (int*) malloc(sizeof(int)); *aux = pedirNumero("Ingrese un numero: "); array -> add(array, aux); resp = preguntarSiSeguir("Desea continuar?s/n: "); resp = tolower(resp); }while(resp != 'n'); if(array->sizes(array) > self->sizes(self)) printf("\nLos elementos a analizar superan el tamanio de la lista a comparar\n"); else { if(!self->containsAll(self, array)) printf("\nLos elementos a analizar no coinciden\n"); else printf("\nLos elementos analizados coinciden\n"); } free(array); }
//funcion contains() void compruebaElemento(ArrayList* self) { int* numero; char resp; do { resp = 'n'; numero = (int*) malloc(sizeof(int)); *numero = pedirNumero("Ingrese un numero para buscar en la lista: "); if(!self->contains(self, numero)) { printf("\nEl numero ingresado no se encuentra en la lista\n"); resp = preguntarSiSeguir("\nDesea volver a intentarlo?s/n: "); } else { printf("\nEl valor ingresado se encuentra en la lista\n", self->contains(self, numero) + 1); } resp = tolower(resp); }while(resp != 'n'); system("PAUSE"); }
//funcion para indexof() void muestraIndice(ArrayList* self) { int* numero; char resp; do { resp = 'n'; numero = (int*) malloc(sizeof(int)); *numero = pedirNumero("Ingrese un numero para buscar en la lista: "); if(self->indexOf(self, numero) == -1) { printf("\nEl numero ingresado no se encuentra en la lista\n"); resp = preguntarSiSeguir("\nDesea volver a intentarlo?s/n: "); } else { printf("\nEl valor ingresado se encuentra primero en el indice [%d]\n", self->indexOf(self, numero) + 1); } resp = tolower(resp); }while(resp != 'n'); system("PAUSE"); }
int main() { float a=0,b=0,suma=0,resta=0,division=0, multiplicacion; char seguir='s'; int opcion=0,factorialUno =-1 , factorialDos; while(seguir=='s') { printf("1- Ingresar 1er operando (A=%.2f)\n",a); printf("2- Ingresar 2do operando (B=%.2f)\n",b); printf("3- Calcular todas las operaciones\n"); printf("4- Informar Resultados\n"); printf("5- Salir\n"); printf("\nOpcion: "); scanf("%d",&opcion); switch(opcion) { case 1: system("cls"); a = pedirNumero(); system("cls"); break; case 2: system("cls"); b = pedirNumero(); system("cls"); break; case 3: system("cls"); printf("Calculando...\n"); system("pause"); suma = sumaNumeros(a,b); resta = restaNumeros(a,b); division = divisionNumeros(a,b); multiplicacion = multiplicacionNumeros(a,b); factorialUno = factorialNumero(a); factorialDos = factorialNumero(b); system("cls"); break; case 4: system("cls"); informarResultados( a, b, suma, resta, multiplicacion, division,factorialUno,factorialDos); system("pause"); system("cls"); break; case 5: printf("\n\nOFF\n\n"); seguir = 'n'; break; default: printf("\nIngrese una opcion valida por favor.\n\n"); system("pause"); system("cls"); break; } } return 0; }
int main() { int opcion=0; int numero1=0; int numero2=0; do{ printf("1- Ingrese 1er operando(A=%d)\n",numero1); printf("2- Ingrese 2do operando(B=%d)\n",numero2); printf("3- Calcular la suma (A+B)\n"); printf("4- Calcular la resta (A-B)\n"); printf("5- Calcular la division (A/B)\n"); printf("6- Calcular la multiplicacion (A*B)\n"); printf("7- Calcular el factorial (A!)\n"); printf("8- Calcular todas las operaciones\n"); printf("9- Salir\n"); scanf("%d",&opcion); system("cls"); switch(opcion) { case 1: numero1=pedirNumero("Ingrese primer operando:\n"); system("cls"); break; case 2: numero2=pedirNumero("Ingrese segundo operando:\n"); system("cls"); break; case 3: printf("La suma resultante es: %.2f\n", sumar(numero1,numero2)); break; case 4: printf("La resta resultante es:%.2f\n",restar(numero1,numero2)); break; case 5: if(numero2==0) { printf("No se puede dividir por 0, Intente nuevamente:\n"); system("pause"); system("cls"); } else { printf("El resultado de la division es: %.2f\n",dividir(numero1,numero2)); system("pause"); system("cls"); } break; case 6: if(numero2==0) { printf("Todo numero multiplicado por 0 es 0. Intente nuevamente \n"); system("pause"); system("cls"); } else { printf("El resultado de la multiplicacion es: %.2f\n",multiplicar(numero1,numero2)); system("pause"); system("cls"); } break; case 7: printf("El factorial de %d es: %d\n",numero1,factorializar(numero1)); system("pause"); system("cls"); break; case 8: printf("La suma resultante es: %.2f\n", sumar(numero1,numero2)); printf("La resta resultante es:%.2f\n",restar(numero1,numero2)); if(numero2==0) { printf("No se puede dividir por 0, Intente nuevamente:\n"); } else { printf("El resultado de la division es: %.2f\n",dividir(numero1,numero2)); } if(numero2==0) { printf("Todo numero multiplicado por 0 es 0. Intente nuevamente \n"); } else { printf("El resultado de la multiplicacion es: %.2f\n",multiplicar(numero1,numero2)); } printf("El factorial de %d es: %d\n",numero1,factorializar(numero1)); system("pause"); break; case 9: break; } }while(opcion!=9); return 0; }
void altas(Producto miProducto[], int auxCodigo[]) { int posicion; char titulo[100]; char autor[100]; int i; int a = 0; posicion = pedirNumero("codigo"); pedirCadena("Titulo", titulo); pedirCadena("Autor", autor); for(i = 0; i < TAMANIO; i++)//corregido (busco la posicion ) { if(miProducto[i].codigo == -1) break; } do { a = 0; if(validar_codigo(posicion) != 0) { if(validar_cadena(titulo, 80) != 0) { if(validar_cadena(autor, 50) != 0) { if(validar_repeticion(auxCodigo, posicion) != 0)//corrregido (para que se guarde la posicion a lo ultimo) { miProducto[i].codigo = posicion; strcpy(miProducto[i].titulo, titulo); strcpy(miProducto[i].autor, autor); } else { printf("\nError, codigo ya ingresado\n"); printf("\nVuelva a seleccionar una opcion del menu\n"); a = 0; } } else { printf("\nERROR,supera los caracteres establecidos\n"); pedirCadena("autor", autor); a = 1; } } else { printf("\nERROR,supera los caracteres establecidos\n"); pedirCadena("titulo", titulo); a = 1; } } else { printf("\nERROR, codigo inexistente\n"); posicion = pedirNumero("codigo"); a = 1; } }while(a == 1); printf("\n"); }
int main() { system("color A"); ArrayList* listaEmpleados=al_newArrayList(); ArrayList* listaSectores=al_newArrayList(); int cargar=load(listaEmpleados,listaSectores); if(cargar==0) printf("Exito al cargar los sectores\n"); else if(cargar==1) printf("Exito al cargar sectores y empleados\n"); char seguir='s'; char guardar; system("pause"); do { system("cls"); int mainMenu=pedirNumero("1-ALTAS\n2-BAJAS\n3-MODIFICACIONES\n4-VER NOMINA\n5-GUARDAR\n6-SALIR\nIngrese una opcion:","Error al ingresar opcion\n"); switch(mainMenu) { case 1: system("cls"); altas(listaEmpleados,listaSectores); system("pause"); break; case 2: system("cls"); eliminar(listaEmpleados,listaSectores); system("pause"); break; case 3: system("cls"); modificar(listaEmpleados,listaSectores); system("pause"); break; case 4: system("cls"); mostrar(listaEmpleados,listaSectores); system("pause"); break; case 5: if(save(listaEmpleados,listaSectores)==0) printf("\nDatos guardados correctamente"); else printf("\nError al guardar!"); system("pause"); break; case 6: system("cls"); guardar=getChar("\nGuardar cambios?(s/n)"); if(guardar=='s') { if(save(listaEmpleados,listaSectores)==0) printf("\nDatos guardados correctamente"); else printf("\nError al guardar!"); } al_deleteArrayList(listaEmpleados); al_deleteArrayList(listaSectores); seguir='n'; system("pause"); break; default:printf("Ingrese una opcion valida...\n"); system("pause"); } }while(seguir=='s'); return 0; }