Professional Documents
Culture Documents
Sistemas de Informacin
Ing. Freddy Alarcn
Quinto A
namespace Observador.Observador { public class datosclima:iSujeto { List<iobservador> observadores; float temperatura, humedad, presion; public datosclima() { observadores = new List<iobservador>(); } private void cambiarmedidas() { notificar(); } public void registrar(iobservador observador) { if(!observadores.Contains(observador)) { observadores.Add(observador); } } public void remover(iobservador observador) { observadores.Remove(observador); } public void notificar() { foreach (var item in observadores) { item.actualizar(temperatura, humedad, presion); } } public void simulacion(float temperatura, float humedad, float presion) { this.temperatura = temperatura; this.humedad = humedad; this.presion = presion; cambiarmedidas(); } } }
namespace Observador.Observador { public interface iSujeto { void registrar(iobservador observador) ; void remover(iobservador observador); void notificar(); } }
using using using using using using using using using using
System; System.Collections.Generic; System.ComponentModel; System.Data; System.Drawing; System.Linq; System.Text; System.Threading.Tasks; System.Windows.Forms; Observador.Observador;
namespace Observador { public partial class Condiciones_Actuales : Form, iobservador { iSujeto sujeto;
public void actualizar(float temperatura, float presion, float humedad) { labeltemp.Text = temperatura.ToString(); labelhumd.Text = humedad.ToString(); labelpresion.Text = presion.ToString(); } } }
using using using using using using using using using using
System; System.Collections.Generic; System.ComponentModel; System.Data; System.Drawing; System.Linq; System.Text; System.Threading.Tasks; System.Windows.Forms; Observador.Observador;
namespace Observador { public partial class Estadisticas : Form,iobservador { iSujeto sujeto; float tempmax=0.0f; float tempmin=200; float sumatemperatura=0.0f; int numerolectura;
public Estadisticas(iSujeto sujeto=null) { InitializeComponent(); if(sujeto!=null) { this.sujeto = sujeto; this.sujeto.registrar(this); } } private void label1_Click(object sender, EventArgs e) {
using using using using using using using using using using
System; System.Collections.Generic; System.ComponentModel; System.Data; System.Drawing; System.Linq; System.Text; System.Threading.Tasks; System.Windows.Forms; Observador.Observador;
namespace Observador { public partial class Hardware : Form { iSujeto sujeto; public Hardware() { InitializeComponent(); sujeto = new datosclima(); } private void Hardware_Load(object sender, EventArgs e) { Condiciones_Actuales formul = new Condiciones_Actuales(sujeto); formul.Show(); Estadisticas f1 = new Estadisticas(sujeto); f1.Show(); } private void label1_Click(object sender, EventArgs e) {