|
Mostrar Mensajes
|
Páginas: [1] 2
|
1
|
Programación / Ejercicios / Consulta base de datos biblioteca pequeña
|
en: 4 Agosto 2016, 20:56 pm
|
Hola a todos, estoy haciendo un proyecto para el instituto en Java. Elegí diseñar un pequeño modelo para una biblioteca chica y debo mostrarlo usando jtables. La idea es mostrar en el primer jtable los clientes, en el segundo jtable los libros y en el tercer jtable los préstamos. Y en el otro tabs usando jtextfields, manejo lo que son las altas y modificaciones. Adjunto imagen y a continuación les dejo las tablas. https://i.imgur.com/gsjQUmG.jpgLIBROS isbn nombre editorial estado CLIENTES id_cli nombre ciudad estado PRESTAMO id_prestamo id_lib (FK isbn) id_cliente (FK id_cli) fecha_salida fecha_max_dev fecha_devolucion El problema que tengo es que asi como esta planteado, puedo prestar solo un libro por prestamo, cuando el cliente podria llevarse mas de un libro por prestamo. Tambien tenia "cantidad" en libros porque por ejemplo tenia 5 libros de El Principito pero al hacer el prestamo (cantidad quedaba en 4), no sabia que ejemplar estaba prestando. Espero puedan ayudarme en dejar el modelo de base de datos lo mejor posible. Muchas gracias, saludos a todos.
|
|
|
2
|
Programación / Programación C/C++ / Re: Problema en C [Ayuda]
|
en: 30 Abril 2014, 05:12 am
|
Muchas gracias, me olvidé de ese ";" del último for y lo inicializar suma, ya lo había corregido, lo inicialicé a 0 porque sino puede tomar basura de la memoria. Así quedó el código (apliqué todo lo sugerido): #include <stdio.h> #include <stdlib.h> #include <time.h> void menmay (int vector[10], double promedio); int main(int argc, char **argv) { int vector[10]; int i; double suma=0.0, promedio=0.0; for (i=0; i<10; i++) { vector [i ] = rand() % 100; suma += vector[i]; } promedio = suma/10; printf("\n Suma de los valores del vector: %.0lf", suma ); printf("\n Promedio de los valores del vector: %.0lf", promedio ); menmay(vector,promedio); return 0; } void menmay (int vector[10], double promedio) { int* menores; int* mayores; int i,j=0,k=0, cant=0, cant2=0; menores = (int*)malloc (10*sizeof(int)); mayores = (int*)malloc (10*sizeof(int)); for (i=0; i<10; i++) { if (vector[i] < promedio) { menores[j] = vector[i]; cant++; j++; } else { mayores[k] = vector[i]; cant2++; k++; } } printf("Valores menores al promedio \n"); for (j=0;j<cant;j++) printf("\nValores mayores al promedio \n"); for (k=0;k<cant2;k++) }
P.D: Había pasado 'i' como parámetro para no volverlo a declarar de nuevo en la función. Pensé que no tenía nada de malo. Muchas gracias por la ayuda, saludos !
|
|
|
3
|
Programación / Programación C/C++ / Problema en C [Ayuda]
|
en: 28 Abril 2014, 15:33 pm
|
/* * Dado vector de números enteros, obtener el promedio del mismo. * Luego partir el vector en 2 vectores, * donde los menores al promedio estén en un vector y los mayores en otro vector. */ #include <stdio.h> #include <stdlib.h> #include <time.h> void menmay (int vector[10], int i, double promedio); int main(int argc, char **argv) { int vector[10]; int i; double suma, promedio=0; for (i=0; i<10; i++) { vector [i ] = rand() % 100; suma += vector[i]; } promedio = suma/10; printf("\n Suma de los valores del vector: %.0lf", suma ); printf("\n Promedio de los valores del vector: %.0lf", promedio ); menmay(vector,i,promedio); return 0; } void menmay (int vector[10], int i, double promedio) { int* menores; int* mayores; int j=0,k=0; menores = (int*)malloc (10*sizeof(int)); mayores = (int*)malloc (10*sizeof(int)); for (i=0; i<10; i++) { if (vector[i] < promedio) { menores[j] = vector[i]; j++; } else { mayores[k] = vector[i]; k++; } } printf("Valores menores al promedio \n"); for (j=0;j<10;j++) if (menores[j] != 0) printf("\nValores mayores al promedio \n"); for (k=0;k<10;k++); }
Los números menores funcionan correctamente, pero los números mayores al promedio siempre quedan en 0, por qué? Muchas gracias. Saludos
|
|
|
4
|
Programación / Ejercicios / Ejercicio con bits
|
en: 17 Octubre 2012, 05:17 am
|
Hola muchachos, necesito por favor que alguien me explique como debo resolver esto:
Dado un byte X = x7x6x5x4x3x2x1x0 (indeterminado). ¿Qué operación y qué máscara debería utilizar para lograr cada uno de los siguientes resultados?
a) Poner en 1 los bits 0,2 y 5 b) Poner en 0 los bits 4 y 6 c) Invertir (cambiar 0 por 1 y viceversa) los bits 1, 3 y 7 d) Cambiar los bits de X de modo que el 2 bit quede en 1, el bit 7 en 0, y el bit 1 invierta su valor original.
En todos los casos, los bits no nombrados deben mantener su valor original. Considere cada inciso independientemente (no son operaciones secuenciales, siempre parte del mismo byte original.
Muchas gracias, saludos a todos
|
|
|
5
|
Programación / Ejercicios / Duda con "Corte Control" Pascal
|
en: 27 Noviembre 2011, 07:20 am
|
Hola, leí varios ejemplos pero ninguno termino de entender. Ya que todos leen datos de archivos, actualizan en otro. Los ejemplos que ví, ninguno está completo.
Alguno me podría dar un buen ejemplo, y si me pueden guiar con alguna guía o libro mejor.
Muchas gracias. Saludos
|
|
|
6
|
Programación / Programación General / Pascal (Matriz 30x2)
|
en: 4 Noviembre 2011, 01:11 am
|
Hola, tengo un pequeño problemita. Este es mi código: program tp6_4; uses crt,dos; type wtf=array [1..30,1..2] of integer; var matriz:wtf;
procedure fill (var matriz:wtf); var i:integer; begin randomize; for i:=1 to 30 do begin matriz [i,1]:=random(10)-4; matriz [i,2]:=random(35)+1; end; end;
procedure show (var matriz:wtf); var i:integer; begin for i:=1 to 30 do begin writeln;
write (' Dia :',(i):5,' Minima :', matriz [i,1]:5,' Maxima: ', matriz [i,2]:5);
end; end;
procedure calculations (matriz:wtf); var i,j,minima,maxima,temptotal:integer; promedio:real;
begin minima:=0; maxima:=0; temptotal:=matriz[i,1]+matriz[i,2]; promedio:=temptotal/30;
for i:=1 to 30 do begin if matriz[i,1] < minima then minima:=matriz[i,1]; if matriz[i,2] > maxima then maxima:=matriz[i,2]; end;
writeln; writeln; writeln; writeln ('Temperatura minima del mes: ',minima); writeln ('Temperatura maxima del mes: ',maxima); writeln ('Temperatura promedio del mes: ',promedio:8:2); end;
//begin program begin delay(30); clrscr; writeln; writeln (' --------------------------------------------------------------------------------------- '); writeln ('| MEDICIONES DE TEMPERATURAS MAXIMAS Y MINIMAS CORRESPONDIENTES A LOS 30 DIAS DE UN MES |'); writeln (' --------------------------------------------------------------------------------------- '); writeln; fill (matriz); show (matriz); calculations (matriz); readkey; end.
El problema que tengo, es que al ejecutarlo con Windows, no se ve el programa completo. Me muestra "i" de 12 para abajo, lo que va haciendo lo borra... Cómo hago para que eso no pase? Gracias P.D: Tengo Win 7 x86 Lo probé con Linux y se ve completo, en windows no.
|
|
|
7
|
Programación / Ejercicios / Mostrar Matriz
|
en: 21 Octubre 2011, 16:13 pm
|
Hola, estoy haciendo ejercicios con matriz pero aún hay cosas que no tengo claro. Dejo un ejemplo simple para que me entiendan: "Sumatoria de todos los elementos de una matriz de 3x4". program tp6_1; uses crt, dos; const datos:array [1..4,1..3] of integer =( (1,2,3), (4,5,6), (7,8,9), (10,11,12) );
var suma,i,j:integer;
begin clrscr; for i:= 1 to 4 do begin for j:=1 to 3 do suma:= datos[i,j] + suma; write (datos [j,i]); end; writeln; write ('La sumatoria de todos los elementos de la matriz es:', suma); readkey; end. Como verán escribí pero me muestra solo la columna 3 con todos los números juntos. Gracias,
|
|
|
9
|
Foros Generales / Dudas Generales / Re: Problema informático
|
en: 22 Julio 2011, 02:26 am
|
De nada una cosa podrías cambiar el título para que sea más accesible cuando se utilice un buscador tanto interno como externo (google,yahoo,etc)
Saludos
Perdón por molestarte, pero tenés idea de que es (Herrarum equinum est)? Gracias por todo
|
|
|
10
|
Foros Generales / Dudas Generales / Re: Estancado. ¿Qué me recomendais? [Agradecería respuestas]
|
en: 22 Julio 2011, 02:15 am
|
no sirve pasarte por todas esas cosas, digo, ver algo de vb .net despues de C++ , de java, de php, de pascal, de brainfuck, de esto lo otro, eso no sirve, enfocate y dedicate a saber algo especifico, sino vas a saber "cositas" de muchas cosas y al final no vas a saber nada.
Perdón que me meta, pregunto porque yo también me inicié al mundo de la informática. Quería saber por qué dices que no sirve. Gracias
|
|
|
|
|
|
|