Apuntes, resúmenes, trabajos, exámenes y ejercicios de Informática de Universidad

Ejercicios Prácticos de SQL y JSP para el Desarrollo Web

Informática5,34 KB

Estructura de la Base de Datos

Alumnos

Notas

Ramo

ID

ID_Alumnos

ID

Rut

ID_Ramo

Nombre

Nombre

Nota

Pass

ID_Nota

Consultas y Operaciones SQL

Insertar un Ramo

Para insertar un ramo, en este caso compu3:

INSERT INTO Ramo(Nombre) VALUES("compu3");

Actualizar un Teléfono

UPDATE Alumnos SET fono=1234 WHERE Nombre="lili";

Contar Personas con Cierto Nombre

SELECT COUNT(Nombre) FROM Alumno WHERE Nombre="carito";

Contar Ramos Reprobados

SELECT COUNT(Nota) FROM Notas, Alumno WHERE Notas < 40 AND Nombre="dani";

Eliminar a un Alumno

DELETE FROM Alumnos WHERE Nombre="pancho";

Nota Más Baja y Ramos Asociados

¿Quién tiene la nota más baja y en qué ramos es?

SELECT Alumno.Nombre, Ramo.Nombre FROM Alumnos, Notas, Ramos WHERE (SELECT MIN(Nota) FROM Nota) AND ID_Alumnos = Alumnos.

...
Continuar leyendo "Ejercicios Prácticos de SQL y JSP para el Desarrollo Web" »

Tablespaces, Segmentos, Deshacer, Tablas e Índices en Oracle: Guía de Administración de Bases de Datos

Informática12,18 KB

Tablespace y Archivos de Datos

- Forma lógica: una BD a la vez; uno o más archivos de datos; subdividido en unidades lógicas de almacenamiento.

- Archivos de datos: forma física; pertenece a un tablespace y a una BD; repositorios de datos de objetos del esquema.

* TBS SYSTEM: se crea con la BD; contiene el diccionario de datos; contiene el segmento de deshacer SYSTEM.

* TBS no SYSTEM: segmentos separados; facilita la administración del espacio; controla el espacio del usuario.

TBS gestionados localmente

- Extensiones libres del tablespace registradas mediante bitmap.

- Cada bit corresponde a un bloque o grupo; valor del bit: libre o en uso.

- Reduce el contenido del diccionario; no necesita fusión; no genera deshacer al producirse una asignación...

Continuar leyendo "Tablespaces, Segmentos, Deshacer, Tablas e Índices en Oracle: Guía de Administración de Bases de Datos" »

Validación numérica y control de teclas en Visual Basic .NET: ejemplos prácticos

Informática6,71 KB

Validar numérico

Validar numérico:

Private Sub TxtEdad_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TxtEdad.KeyPress
If e.KeyChar.IsNumber(e.KeyChar) Then
e.Handled = False 'El control lo tiene el usuario, el manejador sigue apagado
ElseIf e.KeyChar.IsControl(e.KeyChar) Then
e.Handled = False 'El control lo tiene el usuario, el manejador sigue apagado
If e.KeyChar = Chr(13) Then
TxtFono.Enabled = False 'Se deshabilita el mismo
ListBox1.Visible = True 'Deja visible el ListBox
BtnAgregarDatosListBox.Enabled = True 'Habilita el botón Listar
BtnGrabar.Enabled = True 'Habilita el botón Grabar
BtnGrabar.Enabled = True 'Habilita el botón Menú
End If
Else
MessageBox.Show("Error en ingreso", "ERROR", MessageBoxButtons.
...
Continuar leyendo "Validación numérica y control de teclas en Visual Basic .NET: ejemplos prácticos" »

Sistema de Estacionamiento en C# con Windows Forms: Código Completo Explicado

Informática5,56 KB

Sistema de Estacionamiento en C# con Windows Forms

A continuación se presenta el código de un formulario en C# para gestionar un control de estacionamiento, que permite registrar el ingreso de vehículos, buscar patentes, calcular el cobro por estadía y liberar espacios.

Declaración de la clase y variables

La clase frmEstacionamiento hereda de Form y utiliza dos arreglos de 100 posiciones para almacenar las patentes y las horas de entrada de los vehículos.

public partial class frmEstacionamiento : Form
{
    private string[] vPatente = new string[100];
    private int[] vHoraEntrada = new int[100];
    private int posicionActual = -1;

    public frmEstacionamiento()
    {
        InitializeComponent();
        InicializarDatos();
    }

Eventos

...
Continuar leyendo "Sistema de Estacionamiento en C# con Windows Forms: Código Completo Explicado" »

Implementación de Formulario en Java Swing con Conexión JDBC a Base de Datos

Informática3,96 KB

Implementación de Formulario en Java Swing con Conexión JDBC

El siguiente programa implementa una interfaz gráfica de usuario (GUI) interactiva con la biblioteca Java Swing y gestiona la persistencia de datos en una base de datos relacional mediante la API JDBC.

Código Fuente

package multiplespantallas;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;

public class Insertar extends JFrame {
    private JLabel lbl1, lbl2, lbl3;
    private JTextField txt1, txt2, txt3;
    private JPanel pnl1, pnl2;
    private JButton btninsertar, btncancelar;

    public Insertar() {
        lbl1 = new JLabel("Código");
        lbl2 = new JLabel("Nombre");
        lbl3 = new JLabel("N° horas");
        txt1 = new JTextField(
...
Continuar leyendo "Implementación de Formulario en Java Swing con Conexión JDBC a Base de Datos" »

Cálculo y Diseño de Elementos de Máquinas: Rodamientos, Embragues, Frenos y Lubricación

Informática7,96 KB

Cálculo de Rodamientos con Carga Radial y Axial

Planteamiento inicial:

  • $RQ_{a1} \ge F_{r1}/2y_1$
  • $RQ_{a2} \ge F_{r2}/2y_2$
  • $RQ_{a1} + A = RQ_{a2}$ (1)
  • $F_{r1}/2y_1 + A > F_{r2}/2y_2 \rightarrow RQ_{a1} = F_{r1}/2y_1$ (juego) y $RQ_{a2} = RQ_{a1} + A = F_{r1}/2y_1 + A > F_{r2}/2y_2$ (penetración)
  • (2) $F_{r1}/2y_1 + A < F_{r2}/2y_2 \rightarrow F_{r1}/2y_1 < F_{r2}/2y_2 - A$
  • $RQ_{a1} = RQ_{a2} - A = F_{r2}/2y_2 - A > F_{r1}/2y_1$ (penetración)
  • $RQ_{a2} = F_{r2}/2y_2$ (juego)

Montajes con Juego y Solo Cargas Radiales

Planteamiento:

  • $RQ_{ai} = RQ_{ad}$
  • $RQ_{ai} \ge F_{ri}/2y_i$
  • $RQ_{ad} \ge F_{rd}/2y_d$

Cálculo de reacciones:

  1. $F_{ri}/2y_i > F_{rd}/2y_d \rightarrow RQ_{ai} = RQ_{ad} = F_{ri}/2y_i$ (rodamiento izquierdo está en juego porque
...
Continuar leyendo "Cálculo y Diseño de Elementos de Máquinas: Rodamientos, Embragues, Frenos y Lubricación" »

Diccionario de Comandos y Sintaxis de VBA para Macros en Excel

Informática4,82 KB

Diccionario de Comandos VBA para Excel

A continuación, se presenta una lista detallada con la sintaxis de los comandos más utilizados en VBA para el desarrollo de macros en Excel, explicando la función de cada línea de código:

Manipulación de Celdas y Rangos

  • ActiveCell.FormulaR1C1 = "Recurso" : Escribe en la celda activa "Recurso"
  • ActiveCell.Offset(0, 1).Select : Muévete una columna a la derecha
  • ActiveCell.Offset(0, -1).Select : Muévete una columna a la izquierda
  • ActiveCell.Offset(1, 0).Select : Muévete 1 fila hacia abajo
  • ActiveCell.Offset(-1, 0).Select : Muévete 1 fila hacia arriba
  • Cells : Celda
  • Cells(7,2).Select : Selecciona la celda B7
  • Cells.Delete : Elimina todas las celdas
  • Cells.Select : Selecciona todas las celdas
  • Range : Rango
  • Range("A2:
...
Continuar leyendo "Diccionario de Comandos y Sintaxis de VBA para Macros en Excel" »

Codificación BCD de 2 dígitos en PLC: Display, lectura y contador con programación IEC 61131-3

Informática163,29 KB

Bloques funcionales BCD de 2 dígitos en programación de PLC

A continuación se presenta el código en lenguaje Structured Text (ST) de los bloques funcionales Display_BCD_2dig_FB y Lectura_BCD_2dig_FB, junto con los programas de ejemplo que los utilizan.

Bloque funcional Display_BCD_2dig_FB

Este bloque convierte un valor BCD de entrada (0 a 39) en las salidas necesarias para activar un display de dos dígitos, separando unidades y decenas.

FUNCTION_BLOCK Display_BCD_2dig_FB
VAR_INPUT
 i_usiEntrada_BCD: USINT;
END_VAR
VAR_OUTPUT
END_VAR
VAR
 unitats: USINT;
 desenes: USINT;
END_VAR

// IF i_usiEntrada_BCD >= 0 OR i_usiEntrada_BCD <= 39 THEN
 unitats:=i_usiEntrada_BCD MOD 10;
 desenes:=i_usiEntrada_BCD / 10;

 IF unitats=0 THEN
  q_xU1:= FALSE;
 ...

Continuar leyendo "Codificación BCD de 2 dígitos en PLC: Display, lectura y contador con programación IEC 61131-3" »

Problema de los filósofos comensales en C: implementación con hilos y mutex

Informática5,55 KB

Problema de los filósofos comensales

A continuación se presenta una implementación en lenguaje C del clásico problema de los filósofos comensales, utilizando hilos POSIX (pthreads) y mutex para controlar el acceso a los tenedores compartidos.

Variables globales

  • num_filosofos: número de filósofos de la simulación.
  • seed: semilla para la generación de números aleatorios.
  • tenedores: array dinámico de mutex, uno por cada tenedor.
  • timeIni: instante inicial de la simulación, en milisegundos.
int num_filosofos = 0;
int seed = 0;
int i, res; // variables de control
pthread_mutex_t *tenedores; // array de mutex
// struct timeval tiempo; // para la función "gettimeofday"
long timeIni; // indica el tiempo inicial

Función dameTiempo

Devuelve el tiempo

...
Continuar leyendo "Problema de los filósofos comensales en C: implementación con hilos y mutex" »

Código Java: Registro de Precios de Productos con Arrays, Consulta y Promedios

Informática3,62 KB

Programa en Java para la gestión de precios de productos

A continuación se presenta un programa en Java que permite registrar productos y sus precios diarios, consultar un producto, imprimir el promedio de precios y mostrar el producto con mayor precio promedio.

Código fuente

import java.io.*;
import disc.*;

class Prueba3e1 {

public static double[][] precio = new double[100][30];
public static double[] prom = new double[100];
public static String[] producto = new String[100];
public static int n = 0;

public static void main(String args[]) throws IOException {

int op;
do {
PantallaSalida.println("1) Registrar Productos y Precios");
PantallaSalida.println("2) Consultar Producto");
PantallaSalida.println("3) Imprimir Promedio de los precios");
PantallaSalida....

Continuar leyendo "Código Java: Registro de Precios de Productos con Arrays, Consulta y Promedios" »