UN AYUNTAMIENTO QUE NO NECESITA OSCURIDAD.
martes, 16 de junio de 2009
LE DIGO POR QUE NO INVENTAMOS EN LA ADMINISTRACION? POR NOS CAPACITAMOS PARA HACERLO MEJOR
lunes, 24 de noviembre de 2008
Segundo Parcial
Hacer un programa que Maneje lo Siguiente:
1. Un Menu dinamico que permita escoger para dar alta, baja, modiicar, eliminar, buscar cualquier estudiante del curso.
1. que me permita introducir las calificaciones, y pueda modificar, eliminar.
que me permita una consulta por estudiante, ademas de un reporte de todos los estudiantes de la materia
que me permita imprimir el record de cada estudiante.
1. Un Menu dinamico que permita escoger para dar alta, baja, modiicar, eliminar, buscar cualquier estudiante del curso.
1. que me permita introducir las calificaciones, y pueda modificar, eliminar.
que me permita una consulta por estudiante, ademas de un reporte de todos los estudiantes de la materia
que me permita imprimir el record de cada estudiante.
sábado, 22 de noviembre de 2008
Empleado.bas
' Section 1
CLS
TYPE employeeType
firstname AS STRING * 30
lastname AS STRING * 30
age AS INTEGER
wage AS SINGLE
END TYPE
DIM employee AS employeeType
' Section 2
PRINT "1.) Create new recordset"
PRINT "2.) View existing recordset"
INPUT "Which option? ", selection%
' Section 3
IF selection% = 1 THEN
INPUT "How many employees are in the company? ", numRecords%
recordLen# = LEN(employee)
OPEN "database.dat" FOR RANDOM AS #1 LEN = recordLen#
FOR i% = 1 TO numRecords%
CLS
INPUT "First name: ", employee.firstname
INPUT "Last name: ", employee.lastname
INPUT "Age: ", employee.age
INPUT "Wage: ", employee.wage
PUT #1, , employee
NEXT i%
CLS
CLOSE #1
PRINT "Recordset creation complete"
END
END IF
' Section 4
IF selection% = 2 THEN
recordLen# = LEN(employee)
OPEN "database.dat" FOR RANDOM AS #1 LEN = recordLen#
format$ = "\ \,\ \ ### $$##.##"
PRINT "Last name First name Age Wage "
PRINT "------------------ ------------------ --- -------"
DO WHILE NOT EOF(1)
GET #1, , employee 'Sorry about the length of this line!!!
PRINT USING format$; employee.lastname; employee.firstname; employee.age; employee.wage
LOOP
CLOSE #1
END
END IF
CLS
TYPE employeeType
firstname AS STRING * 30
lastname AS STRING * 30
age AS INTEGER
wage AS SINGLE
END TYPE
DIM employee AS employeeType
' Section 2
PRINT "1.) Create new recordset"
PRINT "2.) View existing recordset"
INPUT "Which option? ", selection%
' Section 3
IF selection% = 1 THEN
INPUT "How many employees are in the company? ", numRecords%
recordLen# = LEN(employee)
OPEN "database.dat" FOR RANDOM AS #1 LEN = recordLen#
FOR i% = 1 TO numRecords%
CLS
INPUT "First name: ", employee.firstname
INPUT "Last name: ", employee.lastname
INPUT "Age: ", employee.age
INPUT "Wage: ", employee.wage
PUT #1, , employee
NEXT i%
CLS
CLOSE #1
PRINT "Recordset creation complete"
END
END IF
' Section 4
IF selection% = 2 THEN
recordLen# = LEN(employee)
OPEN "database.dat" FOR RANDOM AS #1 LEN = recordLen#
format$ = "\ \,\ \ ### $$##.##"
PRINT "Last name First name Age Wage "
PRINT "------------------ ------------------ --- -------"
DO WHILE NOT EOF(1)
GET #1, , employee 'Sorry about the length of this line!!!
PRINT USING format$; employee.lastname; employee.firstname; employee.age; employee.wage
LOOP
CLOSE #1
END
END IF
sábado, 8 de noviembre de 2008
pantalla.bas
PALETTE 0, 32
PALETTE 3, 11
PALETTE 4, 8
PALETTE 5, 17
PALETTE 7, 63
PALETTE 10, 4
PALETTE 11, 52
PALETTE 12, 36
PALETTE 13, 38
PALETTE 14, 54
COLOR 15, 3
CLS
COLOR 15, 4
LOCATE 2, 11: PRINT "É"; STRING$(57, "Í"); "»"
LOCATE 3, 11: PRINT "º"; SPACE$(57); "º"
LOCATE 4, 11: PRINT "È"; STRING$(57, "Í"); "¼"
COLOR 14, 4: LOCATE 3, 14
PRINT "A G E N D A S U P E R B A R A T A"
COLOR 1, 7
LOCATE 7, 20: PRINT "ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿"
LOCATE 8, 20: PRINT "³ A ... A¤adir nueva persona ³"
LOCATE 9, 20: PRINT "³ B ... Borrar persona ³"
LOCATE 10, 20: PRINT "³ M ... Modificar persona ³"
LOCATE 11, 20: PRINT "ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´"
LOCATE 12, 20: PRINT "³ N ... Buscar persona por nombre ³"
LOCATE 13, 20: PRINT "³ D ... Buscar persona por direcci¢n ³"
LOCATE 14, 20: PRINT "³ T ... Buscar persona por tel‚fono ³"
LOCATE 15, 20: PRINT "³ E ... Buscar persona por edad ³"
LOCATE 16, 20: PRINT "ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´"
LOCATE 17, 20: PRINT "³ L ... Ver listado de personas ³"
LOCATE 18, 20: PRINT "ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´"
LOCATE 19, 20: PRINT "³ C ... Compactar base de datos ³"
LOCATE 20, 20: PRINT "ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´"
LOCATE 21, 20: PRINT "³ S ... Salir ³"
LOCATE 22, 20: PRINT "ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"
COLOR 0, 7
LOCATE 8, 29: PRINT "A¤adir nueva persona"
LOCATE 9, 29: PRINT "Borrar persona"
LOCATE 10, 29: PRINT "Modificar persona"
COLOR 10
LOCATE 12, 29: PRINT "Buscar persona por nombre"
LOCATE 13, 29: PRINT "Buscar persona por direcci¢n"
LOCATE 14, 29: PRINT "Buscar persona por tel‚fono"
LOCATE 15, 29: PRINT "Buscar persona por edad"
COLOR 12: LOCATE 17, 29: PRINT "Ver listado de personas"
COLOR 11: LOCATE 19, 29: PRINT "Compactar base de datos"
COLOR 13: LOCATE 21, 29: PRINT "Salir"
COLOR 14, 5: LOCATE 25, 1: PRINT SPACE$(80);
LOCATE 25, 10: PRINT "Curso de Programaci¢n";
COLOR 13: LOCATE 25, 46: PRINT "J.M.G.B. HECHO EN RONDA";
SLEEP
sábado, 25 de octubre de 2008
abrearchivo
'Abre el archivo que le pasamos como par metro y le asigna un descriptor
'usado FREEFILE que devuelve el pr¢ximo disponible.
'
SUB AbreArchivo (archivo$)
DIM registro AS tipopersona
OPEN archivo$ FOR RANDOM AS FREEFILE LEN = LEN(registro)
END SUB
Compacta.bas
'
' © JM. :: Hecho en Ronda
'
'
' Procedente de...
'
'______________________________________________________________________
'
SUB Compacta
DIM registro AS tipopersona
numregS = (LOF(1) / LEN(registro)) 'Calculamos cuantos registros hay
AbreArchivo "Agenda.tmp" 'Creamos archivo temporal para ir copiando
'registros si no est n borrados y quedarnos
'solo con los que sirven.
CLS
PRINT , "COMPACTAR BASE DE DATOS"
PRINT
PRINT "Compactando..."
PRINT
n1 = 1 'Contador para recorrer archivo original
n2 = 1 'Contador para recorrer archivo nuevo
WHILE n1 <= numregS
GET #1, n1, registro
IF registro.nombre <> SPACE$(LEN(registro.nombre)) OR registro.direccion <> SPACE$(LEN(registro.direccion)) OR registro.telefono <> SPACE$(LEN(registro.telefono)) OR registro.edad <> -1 THEN
'Si el registro no est vac¡o lo copiamos al nuevo fichero
PUT #2, n2, registro
n2 = n2 + 1 'Y aumentamos su contador
END IF
n1 = n1 + 1 'aumentamos el contador del fichero original siempre
WEND
CLOSE 'Cerramos LOS DOS archivos
KILL "Agenda.dat" 'Borramos el archivo viejo
NAME "Agenda.tmp" AS "Agenda.dat"'Renombramos el temporal como "Agenda.dat"
AbreArchivo "Agenda.dat" 'Abrimos para seguir normalmente con el programa
'ahora sacamos un mensaje para terminar
PRINT
PRINT "La base de datos ha sido compactada"
SLEEP
END SUB
Suscribirse a:
Entradas (Atom)
