//Cuando el barco llega al fin de la vida public void salida_via_rapida() { Barcos bviar = via_rapida[0]; via_rapida.RemoveAt(0); Fase4.cola_salida.Add(bviar); }
public void salida_via_lenta() { Barcos bvial = via_lenta[0]; via_lenta.RemoveAt(0); Fase4.cola_salida.Add(bvial); }
public void establecer_prioridad() { if (cola_salida.Count() == 2) { Barcos b1 = cola_salida[0]; Barcos b2 = cola_salida[1]; if (b1.Prioridad == b2.Prioridad) { if (b1.Via == "Rapida") { cola_salida[0] = b1; cola_salida[1] = b2; } else { cola_salida[0] = b2; cola_salida[1] = b2; } } else //Ordenamos los barcos por prioridad. { cola_salida = cola_salida.OrderByDescending(barco1 => barco1.Prioridad).ToList(); } } }
//Cuando el barco llega al fin de la vida public void salida_via_rapida() { Barcos bviar = lista_vuelta_rapido[0]; lista_vuelta_rapido.RemoveAt(0); Fase4.cola_salida.Add(bviar); }
public bool llevar_a_via_lenta() { Barcos barco = cola_inicial[0]; if (barco.Metros > 250) { if (Fase3.via_lenta.Count() < 3) { Fase3.via_lenta.Add(barco); cola_inicial.RemoveAt(0); return(true); } } return(false); }
public bool llevar_a_colaB() { // Devuelve verdadero si la lista no está vacía y si no hay barcos en la cola. if (lista_barcosB.Count() != 0) { Barcos barco_B = Fase1.lista_barcosB[0]; if (Fase2.cola_inicial.Count() == 0) { Fase1.lista_barcosB.RemoveAt(0); Fase2.cola_inicial.Add(barco_B); return(true); } } return(false); }
//Las funciones llevar a cola devuelven false si no hay barcos que mandar. public bool llevar_a_colaA() { // Devuelve verdadero si la lista no está vacía. if (lista_barcosA.Count() != 0) { Barcos barco_A = Fase1.lista_barcosA[0]; if (Fase2.cola_inicial.Count() == 0) { Fase1.lista_barcosA.RemoveAt(0); Fase2.cola_inicial.Add(barco_A); return(true); } } return(false); }
private void button1_Click(object sender, EventArgs e) { string nombre, tipo; int prioridad; int metros; bool completo = true; nombre = textBox1.Text; metros = int.Parse(label_metros.Text); if (textBox1.Text.Trim() == "") { completo = false; } if (radio_comerciante.Checked) { if (metros < 306) { tipo = "Buque mercante pequeño"; } else { tipo = "Buque mercante gigante"; } } else if (radio_pasajeros.Checked) { if (metros < 135) { tipo = "Embarcacion ligera"; } else { tipo = "Crucero"; } } else { tipo = null; completo = false; } prioridad = int.Parse(combo_prioridad.SelectedItem.ToString()); if (completo) { Fase1 fase1_add = new Fase1(); Barcos barco = new Barcos(nombre, tipo, prioridad, metros); if (tipo == "Embarcacion ligera") { Fase1.lista_barcosA.Add(barco); fase1_add.ordenar_listaA(); } else if (tipo == "Crucero") { Fase1.lista_barcosB.Add(barco); fase1_add.ordenar_listaB(); } else if (tipo == "Buque mercante pequeño") { Fase1.lista_barcosC.Add(barco); fase1_add.ordenar_listaC(); } else { Fase1.lista_barcosD.Add(barco); fase1_add.ordenar_listaD(); } ///Limpiar la pantalla textBox1.Clear(); radio_comerciante.Checked = false; radio_pasajeros.Checked = false; label_metros.Text = "0"; combo_prioridad.SelectedItem = "1"; img_barco_elegido.BackgroundImage = null; } else { MessageBox.Show("Rellene todos los campos", "ERROR"); } }