Opzioni 2 e 3

This commit is contained in:
La Programmatrice Verde 2025-07-24 16:07:54 +02:00
parent 371104953b
commit 997d114446
10 changed files with 70 additions and 14 deletions

View File

@ -28,13 +28,30 @@ class Program {
Pausa();
break;
case 2:
if (rubrica[0] == null) {
Console.WriteLine("Errore: rubrica vuota.");
}
else {
RicercaEsatta(rubrica);
}
Pausa();
break;
case 3:
if (rubrica[0] == null) {
Console.WriteLine("Errore: rubrica vuota.");
}
else {
Ricerca(rubrica);
}
Pausa();
break;
case 4:
MostraRubrica(rubrica);
if (rubrica[0] == null) {
Console.WriteLine("Errore: rubrica vuota.");
}
else {
MostraRubrica(rubrica);
}
Pausa();
break;
default:
@ -69,8 +86,8 @@ class Program {
const int LUNGHEZZA_TELEFONO = 20;
const string TELEFONO = "^(?:\\(?\\+?\\d{1,3}\\)?|\\(?00\\d{1,3}\\)?)?[\\s-]?\\d{3}[\\s-]\\d{3}[\\s-]\\d{4}$";
const string EMAIL = "^[\\w.-]+@([\\w-]+\\.)+[\\w-]{2,4}$";
const string CONFERMA = "[SsYy]";
const string NEGAZIONE = "[Nn]";
const string CONFERMA = "[SsYy]{1}";
const string NEGAZIONE = "[Nn]{1}";
string[] voce;
do {
@ -226,14 +243,9 @@ class Program {
}
static void MostraRubrica(Voce[] p_rubrica) {
if (p_rubrica[0] == null) {
Console.WriteLine("Errore: rubrica vuota.");
}
else {
for (int i = 0; i < p_rubrica.Length && p_rubrica[i] != null; i++) {
Console.WriteLine($"Voce n. {i + 1}:");
p_rubrica[i].MostraVoce();
}
for (int i = 0; i < p_rubrica.Length && p_rubrica[i] != null; i++) {
Console.WriteLine($"Voce n. {i + 1}:");
p_rubrica[i].MostraVoce();
}
}
@ -241,7 +253,7 @@ class Program {
bool esiste = false;
for (int i = 0; i < p_rubrica.Length && p_rubrica[i] != null && !esiste; i++) {
for (int j = 2; j < p_voce.Length && !esiste; j++) {
if (p_voce[j] == p_rubrica[i].GetVoceAsArray()[j]) {
if (p_voce[j] == p_rubrica[i].GetVoceAsArray()[j] && p_voce[j] != "") {
esiste = true;
}
}
@ -249,4 +261,44 @@ class Program {
return esiste;
}
static void RicercaEsatta(Voce[] p_rubrica) {
string ricerca;
do {
Console.Write("Inserire il nome da cercare: ");
ricerca = Console.ReadLine();
if (string.IsNullOrEmpty(ricerca)) {
Console.WriteLine("Errore: nome vuoto.");
Pausa();
}
}
while (string.IsNullOrEmpty(ricerca));
for (int i = 0; i < p_rubrica.Length && p_rubrica[i] != null; i++) {
if (p_rubrica[i].GetNome() == ricerca) {
Console.WriteLine("Corrispondenza trovata:");
p_rubrica[i].MostraVoce();
}
}
}
static void Ricerca(Voce[] p_rubrica) {
string ricerca;
do {
Console.Write("Inserire il termine da cercare: ");
ricerca = Console.ReadLine();
if (string.IsNullOrEmpty(ricerca)) {
Console.WriteLine("Errore: nome vuoto.");
Pausa();
}
}
while (string.IsNullOrEmpty(ricerca));
for (int i = 0; i < p_rubrica.Length && p_rubrica[i] != null; i++) {
if (p_rubrica[i].GetNome().Contains(ricerca)) {
Console.WriteLine("Corrispondenza trovata:");
p_rubrica[i].MostraVoce();
}
}
}
}

View File

@ -29,4 +29,8 @@ class Voce {
public string[] GetVoceAsArray() {
return [this.nome, this.cognome, this.telefono, this.cellulare, this.email, this.indirizzo];
}
public string GetNome() {
return this.nome;
}
}

View File

@ -13,7 +13,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("vacanzeEstive_rubricaTelefonica")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+adcd853d065d0f5ee33305ce879ad3ab6c752998")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+371104953b7b7c89cc3ce105bb42a1abd2a722cf")]
[assembly: System.Reflection.AssemblyProductAttribute("vacanzeEstive_rubricaTelefonica")]
[assembly: System.Reflection.AssemblyTitleAttribute("vacanzeEstive_rubricaTelefonica")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
81cb16105158fc67677a8f34f6d4634cc420d130cc85cba0f787d235cb911b77
a78438f378acb1585c80b4cdf5f2a5fa8a6c9e2fb3f6656cf473d5dafa412453