Rubrica_Miglioria/Rubrica.cs
La Programmatrice Verde 1968a34a89 Miglioria nomi variabili
2025-09-23 23:07:11 +02:00

38 lines
1.4 KiB
C#

namespace Rubrica_Miglioria;
class Rubrica {
Voce[] voci;
public Rubrica(int p_dimensione) {
this.voci = new Voce[p_dimensione];
}
public Voce[] GetVociRubrica() {
return this.voci;
}
public void AddVociRubrica(Voce p_nuovaVoce, int p_contatore) {
this.voci[p_contatore] = p_nuovaVoce;
}
public string Ricerca(string p_ricerca, bool p_tipologia, int p_contatore) {
/*
p_tipologia=true -> ricerca esatta
p_tipologia=false -> ricerca non esatta
*/
bool notFound = true;
string message = "";
int i = 0;
for (; i < p_contatore && notFound; i++) {
notFound = !(p_tipologia ? p_ricerca == this.voci[i].GetNome() : this.voci[i].GetNome().StartsWith(p_ricerca));
message = !notFound ? $"Voce trovata:\nNome: {this.voci[i].GetNome()}\nNumero di telefono: {this.voci[i].GetNumeroDiTelefono()}" : $"Il nome {(p_tipologia ? "" : "contenente")} {p_ricerca} non è stato trovato nella rubrica.";
}
return message;
}
public void StampaRubricaCompleta(int p_contatore) {
for (int i = 0; i < p_contatore; i++) {
Console.WriteLine($"Nome: {this.voci[i].GetNome()}");
Console.WriteLine($"Numero di telefono: {this.voci[i].GetNumeroDiTelefono()}");
Console.WriteLine();
}
}
}