namespace ordini_ristorante; class Ristorante { Piatto[] menu = []; Ordine[] ordini = []; public Piatto[] GetMenu() { return this.menu; } public Ordine[] GetOrdini() { return this.ordini; } public void SetMenu(Piatto[] p_menu) { this.menu = p_menu; } public void SetOrdini(Ordine[] p_ordini) { this.ordini = p_ordini; } public void AggiungiPiatto(Piatto p_nuovoPiatto) { Piatto[] menuNuovo = new Piatto[this.menu.Length + 1]; this.menu.CopyTo(menuNuovo, 0); menuNuovo[menuNuovo.Length - 1] = p_nuovoPiatto; this.menu = menuNuovo; } public void AggiungiOrdine(Ordine p_nuovoOrdine) { Ordine[] ordiniNuovo = new Ordine[this.ordini.Length + 1]; this.ordini.CopyTo(ordiniNuovo, 0); ordiniNuovo[ordiniNuovo.Length - 1] = p_nuovoOrdine; this.ordini = ordiniNuovo; } public Ordine GetOrdinePerCodice(int p_codice) { Ordine? ritorno = null; foreach (Ordine o in this.ordini) { if (o.GetCodiceOrdine() == p_codice) { ritorno = o; } } return ritorno ?? throw new NullReferenceException("Ordine non trovato."); } }