From 371104953b7b7c89cc3ce105bb42a1abd2a722cf Mon Sep 17 00:00:00 2001 From: La Programmatrice Verde Date: Thu, 24 Jul 2025 15:51:33 +0200 Subject: [PATCH] Controllo voce preesistente --- Program.cs | 42 +++++++++++------- Voce.cs | 4 ++ .../vacanzeEstive_rubricaTelefonica.dll | Bin 10240 -> 10752 bytes .../vacanzeEstive_rubricaTelefonica.pdb | Bin 12904 -> 13104 bytes .../ref/vacanzeEstive_rubricaTelefonica.dll | Bin 6144 -> 6144 bytes .../vacanzeEstive_rubricaTelefonica.dll | Bin 6144 -> 6144 bytes ...zeEstive_rubricaTelefonica.AssemblyInfo.cs | 4 +- ...rubricaTelefonica.AssemblyInfoInputs.cache | 2 +- .../vacanzeEstive_rubricaTelefonica.dll | Bin 10240 -> 10752 bytes .../vacanzeEstive_rubricaTelefonica.pdb | Bin 12904 -> 13104 bytes 10 files changed, 32 insertions(+), 20 deletions(-) diff --git a/Program.cs b/Program.cs index e09ab7d..24f054f 100644 --- a/Program.cs +++ b/Program.cs @@ -6,6 +6,7 @@ class Program { Console.Clear(); int scelta = 0; Voce[] rubrica = new Voce[100]; //tetto massimo di voci possibili nella rubrica + int indice = 0; do { Console.WriteLine("Inserire un'opzione:"); @@ -23,7 +24,7 @@ class Program { case 0: break; case 1: - CreaVoce(rubrica); + CreaVoce(rubrica, indice++); Pausa(); break; case 2: @@ -55,10 +56,9 @@ class Program { Console.ReadKey(); } - static void CreaVoce(Voce[] p_rubrica) { + static void CreaVoce(Voce[] p_rubrica, int p_indice) { bool error; string scelta; - int indiceVoce = TrovaProssimaPosizioneDisponibile(p_rubrica); string nome; string cognome; string telefono; @@ -71,6 +71,7 @@ class Program { const string EMAIL = "^[\\w.-]+@([\\w-]+\\.)+[\\w-]{2,4}$"; const string CONFERMA = "[SsYy]"; const string NEGAZIONE = "[Nn]"; + string[] voce; do { Console.Write("Inserire il nome della persona: "); @@ -209,25 +210,19 @@ class Program { } while (error); - if (indiceVoce == -1) { + if (p_indice == p_rubrica.Length) { Console.WriteLine("Errore: la rubrica è piena."); } else { - p_rubrica[indiceVoce] = new Voce(nome, cognome, telefono, cellulare, email, indirizzo); - Console.WriteLine("Voce creata con successo."); - } - } - - static int TrovaProssimaPosizioneDisponibile(Voce[] p_rubrica) { - bool exit = false; - int i; - for (i = 0; i < p_rubrica.Length && exit; i++) { - if (p_rubrica[i] == null) { - exit = true; + voce = [nome, cognome, telefono, cellulare, email, indirizzo]; + if (!DoesVoceExist(p_rubrica, voce)) { + p_rubrica[p_indice] = new Voce(nome, cognome, telefono, cellulare, email, indirizzo); + Console.WriteLine("Voce creata con successo."); + } + else { + Console.WriteLine("Errore: la voce esiste già."); } } - - return !exit ? i : -1; } static void MostraRubrica(Voce[] p_rubrica) { @@ -241,4 +236,17 @@ class Program { } } } + + static bool DoesVoceExist(Voce[] p_rubrica, string[] p_voce) { + 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]) { + esiste = true; + } + } + } + + return esiste; + } } diff --git a/Voce.cs b/Voce.cs index 5d8b156..5ef7439 100644 --- a/Voce.cs +++ b/Voce.cs @@ -25,4 +25,8 @@ class Voce { Console.WriteLine($"\tEmail: {this.email}"); Console.WriteLine($"\tIndirizzo: {this.indirizzo}"); } + + public string[] GetVoceAsArray() { + return [this.nome, this.cognome, this.telefono, this.cellulare, this.email, this.indirizzo]; + } } \ No newline at end of file diff --git a/bin/Debug/net9.0/vacanzeEstive_rubricaTelefonica.dll b/bin/Debug/net9.0/vacanzeEstive_rubricaTelefonica.dll index f60129b110d1a141b95f898c902e84b3bae668db..a6435753c004f2cc335037e0a8271e3ff77c3ace 100644 GIT binary patch delta 2702 zcmZ8jYiv}<75?tryZ7E*uh+g_yf%I=c8wR?z{V@%N8%L6Hjh};1_L4mLN>b#+0?Pk zdY#%>u(UxW%}cnGR1JxgbpJSQqZDM?5|vh|+8|49)uvJ;M5TyU73x!zs!^+^f_`(? zxX@Y6H|KnF=FFKhXRdv6n(VBhPT2f*5I{CcTs)gnEv}P?LKh_$;BlMu!Hg*9I z-iiRHf`CSy-IQ8ww7xoO;C6v<5DBOtLcaRsOFGvSh5Yg=t<^GL6GP&XY@rp+N~n>F%R=0m#WShC#emlw<$f7l84 z9AJ35csVUkSfSh`YF;X5UYbI7zNx~SZ>n^ReA8;jlW(eW%zRU|W95UkaO?=vV1{mK z!3L+HtqqyYHe)YQu?yYyI)>wMOvjqCXqC_GTbV>_F)}ayPelt5jOxfSH_Ua30}(pA z>Xzm++e(o6sr1?PRex9JA?3PESQYysytGz|8N)04?XH}={wmiqqr5xbtZ!||7b@yn zPzkT}cb!sWnO@(#I>Mv*%JhuwUGb<}%l`CC+g+@^!tTC{71r4aFHdBjja0kw=#ffB z?kgNzx6j^XP(xl-Oq+oURq9RxK1%rE!?K2hUVw@d7p$ae3RyJnyaN zLC%{&s}+vb(jX!%avxf*E(^@`aSigTc8kh^z-e_()iMVdvzTL^j0hjpa(J0Bmu1o2 z!+zOinfrU#vo6bw-osvSS>F6T>}794ZD-y~yBBNVA;!Z6&PrVs;$m@$ITZ>kOw6g> zS!H5QZOBR!b7~J(TfuAI*UD$Q!`s|@fR>FXfF+LqQ1WOtlO8`ZrA~c`wRVlS)3|38 zZ}9!7_tv;|&-MY1?@+%Y&wFDz8n~Yi^`T+8s@U8w0iC%cFejKeHWP1aTXYjaq3{Y~ zdI=8G%tX0%pD^)nZIO7?#SJbFxwz!wEvVTuu7}^c_!rR62E3&&aN+}@(64XNeRu&% zULfzoM=n1^4B&_QF*)xG=H3)#=w)y!tWwONpjp)4#W~`)UA!)oyyVK$u6&a?5>`i< z$Gc*Yvtw%t+QVq#$LHj-md1P3?6rltcKnzx>6K;eJNiv!Z=S z?NUKQhM6hGi24+=6n~=shMLOhG;^k5Gi8CtTt>-vnB%UTCklL%sN?slEO42!2UC=D zCT<8X*6SLpNCmK(=)*cT?x4XF0#YbF>6E&oX;ulgHf3y@3~po;rWTY&rB`#sodLprSs(8IVFffst+B=a*4bG&eve=b6lA6KRR8~=aQ+=6Ce3oQ9Ih2~k#N?sD zqto%Rbaocor#?45Ha46Yd}=Z~yZFn}K08;@j|t{1$@Cv%AE%ZgBDR-Of^wLc;TT7j zU1`cbj44c0Ru)tIO)zul9HeE2va;`?&6vC5=@n1PHqD-O{T`vLU6cOR+jcb$ka?UQ zkGSh5afm*q$z*7gpqKqX^Fi*hm3CR&iLH;m`e>7(#Vr5EuTyr`LFGg4T77z7DqMdh z_3^nKuY7T|xwE=I~)C#VRFlyyHRo{=qlZj+kM=TlL)RBxH?ntF#u~@Vtk?QK~jwfUB$2TQ9 zJKDRuyW|ViwH3JVhrj*++Kv&vMyLln!~eZz>g12AL*^$GKdF;fs~bx9-#9<_wV%Dd z?cy)S8z25|%WmnfnQUJsFaB$pq^tX1E!{K!#LnM6d7{4ap99PPovE^XRLSA_H6bz5 zD=*h9Ee7hY>%(zYPlCM*9egWEM6rpI8V_?!@fUM{QEIAQy3mPk-dK`soOis5Y$xa1 X$#$b_vA^L1T}<{aI%{ue^HJ-+J=N3E delta 2073 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 diff --git a/obj/Debug/net9.0/ref/vacanzeEstive_rubricaTelefonica.dll b/obj/Debug/net9.0/ref/vacanzeEstive_rubricaTelefonica.dll index c0416daa4e9735c3ccdff8e85f7e0c254f1c95c2..fdad86ef8b761028473b716dc0be5047bd1491dd 100644 GIT binary patch delta 528 zcmZ9J!D|yi6vn^VZnu?eLo~;>&=Q4+5{FJU*+mM*h*1<$jJ1|}a67v#rBER$f(K$RR$@TRA>q6ZZ`dGy0bIt1mw^d0ZJjlXqAhNxJ7U2qd~v@${Q2j3`(^Uxu9~;bIWcUGoP*rl1t#$XyOuKhBafF(iwbh^Q9%(6a-0oRP{JB{1{a{drIhq^?AL=ZQsHt<*S(n_@XagtlzHzK z#>$-kzje|4aK}Z}92+}I^ZBns?GO<(j}MRSM3AV_Wx7I*xz%7xMw*e2Is#->id^Px Y&5VZ`W&`+X^Ths;b+bPBwZ0tr3kKhL%>V!Z delta 499 zcmZ9JK}Z`x7=_=gaSdb>)TB^Qq%js0C7s>bjT@>^NU2DX6oLfF#dQ-z3L@&cEbYaE z2ba0_E8ZC;PZfHz#}-1+bY$PLjbddS{ExL^l$AuH0 zvCnut94Bt&2y}KyaR^kWk)4%U8&ytbM zjWAHs!Yo=lCLq|!GTA8gD|33WWB`>ne4F|q^{xHgt?kV{-oxA=kfByqTafg_sb5-M zeolSHEcHk8iOA?H^OwFHdfS;2Rpg*hMG*_+7&>GHU2+y%q{1=z6c=Oz-^rKwO}6^` z9kPMfcqkg!!-NR?K1{t%veo2A_S7ix+xUM>eU?-DI`?T>)!oqTxzcvRnq60}7dmd> zE6?^l)eG#P>j$zM);9E4>#@GEM)KLE^u2#;Qs?tyqNHc?S6Uj6l0xCnKvSU(7a^<1 wlCa@0)u?q&E*q5C8xG diff --git a/obj/Debug/net9.0/refint/vacanzeEstive_rubricaTelefonica.dll b/obj/Debug/net9.0/refint/vacanzeEstive_rubricaTelefonica.dll index c0416daa4e9735c3ccdff8e85f7e0c254f1c95c2..fdad86ef8b761028473b716dc0be5047bd1491dd 100644 GIT binary patch delta 528 zcmZ9J!D|yi6vn^VZnu?eLo~;>&=Q4+5{FJU*+mM*h*1<$jJ1|}a67v#rBER$f(K$RR$@TRA>q6ZZ`dGy0bIt1mw^d0ZJjlXqAhNxJ7U2qd~v@${Q2j3`(^Uxu9~;bIWcUGoP*rl1t#$XyOuKhBafF(iwbh^Q9%(6a-0oRP{JB{1{a{drIhq^?AL=ZQsHt<*S(n_@XagtlzHzK z#>$-kzje|4aK}Z}92+}I^ZBns?GO<(j}MRSM3AV_Wx7I*xz%7xMw*e2Is#->id^Px Y&5VZ`W&`+X^Ths;b+bPBwZ0tr3kKhL%>V!Z delta 499 zcmZ9JK}Z`x7=_=gaSdb>)TB^Qq%js0C7s>bjT@>^NU2DX6oLfF#dQ-z3L@&cEbYaE z2ba0_E8ZC;PZfHz#}-1+bY$PLjbddS{ExL^l$AuH0 zvCnut94Bt&2y}KyaR^kWk)4%U8&ytbM zjWAHs!Yo=lCLq|!GTA8gD|33WWB`>ne4F|q^{xHgt?kV{-oxA=kfByqTafg_sb5-M zeolSHEcHk8iOA?H^OwFHdfS;2Rpg*hMG*_+7&>GHU2+y%q{1=z6c=Oz-^rKwO}6^` z9kPMfcqkg!!-NR?K1{t%veo2A_S7ix+xUM>eU?-DI`?T>)!oqTxzcvRnq60}7dmd> zE6?^l)eG#P>j$zM);9E4>#@GEM)KLE^u2#;Qs?tyqNHc?S6Uj6l0xCnKvSU(7a^<1 wlCa@0)u?q&E*q5C8xG diff --git a/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.AssemblyInfo.cs b/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.AssemblyInfo.cs index 1fb835c..7d9b09b 100644 --- a/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.AssemblyInfo.cs +++ b/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.AssemblyInfo.cs @@ -13,10 +13,10 @@ 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+394c4e4012c619345c24a8351853ea1ad8a0dc6b")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+adcd853d065d0f5ee33305ce879ad3ab6c752998")] [assembly: System.Reflection.AssemblyProductAttribute("vacanzeEstive_rubricaTelefonica")] [assembly: System.Reflection.AssemblyTitleAttribute("vacanzeEstive_rubricaTelefonica")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] -// Generated by the MSBuild WriteCodeFragment class. +// Generato dalla classe WriteCodeFragment di MSBuild. diff --git a/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.AssemblyInfoInputs.cache b/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.AssemblyInfoInputs.cache index c3cd307..7acb339 100644 --- a/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.AssemblyInfoInputs.cache +++ b/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.AssemblyInfoInputs.cache @@ -1 +1 @@ -fb0d1ec8b0274d7315e8b09e330ec685e30dd469f5d8fc537973ed9c1d3cad12 +81cb16105158fc67677a8f34f6d4634cc420d130cc85cba0f787d235cb911b77 diff --git a/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.dll b/obj/Debug/net9.0/vacanzeEstive_rubricaTelefonica.dll index f60129b110d1a141b95f898c902e84b3bae668db..a6435753c004f2cc335037e0a8271e3ff77c3ace 100644 GIT binary patch delta 2702 zcmZ8jYiv}<75?tryZ7E*uh+g_yf%I=c8wR?z{V@%N8%L6Hjh};1_L4mLN>b#+0?Pk zdY#%>u(UxW%}cnGR1JxgbpJSQqZDM?5|vh|+8|49)uvJ;M5TyU73x!zs!^+^f_`(? zxX@Y6H|KnF=FFKhXRdv6n(VBhPT2f*5I{CcTs)gnEv}P?LKh_$;BlMu!Hg*9I z-iiRHf`CSy-IQ8ww7xoO;C6v<5DBOtLcaRsOFGvSh5Yg=t<^GL6GP&XY@rp+N~n>F%R=0m#WShC#emlw<$f7l84 z9AJ35csVUkSfSh`YF;X5UYbI7zNx~SZ>n^ReA8;jlW(eW%zRU|W95UkaO?=vV1{mK z!3L+HtqqyYHe)YQu?yYyI)>wMOvjqCXqC_GTbV>_F)}ayPelt5jOxfSH_Ua30}(pA z>Xzm++e(o6sr1?PRex9JA?3PESQYysytGz|8N)04?XH}={wmiqqr5xbtZ!||7b@yn zPzkT}cb!sWnO@(#I>Mv*%JhuwUGb<}%l`CC+g+@^!tTC{71r4aFHdBjja0kw=#ffB z?kgNzx6j^XP(xl-Oq+oURq9RxK1%rE!?K2hUVw@d7p$ae3RyJnyaN zLC%{&s}+vb(jX!%avxf*E(^@`aSigTc8kh^z-e_()iMVdvzTL^j0hjpa(J0Bmu1o2 z!+zOinfrU#vo6bw-osvSS>F6T>}794ZD-y~yBBNVA;!Z6&PrVs;$m@$ITZ>kOw6g> zS!H5QZOBR!b7~J(TfuAI*UD$Q!`s|@fR>FXfF+LqQ1WOtlO8`ZrA~c`wRVlS)3|38 zZ}9!7_tv;|&-MY1?@+%Y&wFDz8n~Yi^`T+8s@U8w0iC%cFejKeHWP1aTXYjaq3{Y~ zdI=8G%tX0%pD^)nZIO7?#SJbFxwz!wEvVTuu7}^c_!rR62E3&&aN+}@(64XNeRu&% zULfzoM=n1^4B&_QF*)xG=H3)#=w)y!tWwONpjp)4#W~`)UA!)oyyVK$u6&a?5>`i< z$Gc*Yvtw%t+QVq#$LHj-md1P3?6rltcKnzx>6K;eJNiv!Z=S z?NUKQhM6hGi24+=6n~=shMLOhG;^k5Gi8CtTt>-vnB%UTCklL%sN?slEO42!2UC=D zCT<8X*6SLpNCmK(=)*cT?x4XF0#YbF>6E&oX;ulgHf3y@3~po;rWTY&rB`#sodLprSs(8IVFffst+B=a*4bG&eve=b6lA6KRR8~=aQ+=6Ce3oQ9Ih2~k#N?sD zqto%Rbaocor#?45Ha46Yd}=Z~yZFn}K08;@j|t{1$@Cv%AE%ZgBDR-Of^wLc;TT7j zU1`cbj44c0Ru)tIO)zul9HeE2va;`?&6vC5=@n1PHqD-O{T`vLU6cOR+jcb$ka?UQ zkGSh5afm*q$z*7gpqKqX^Fi*hm3CR&iLH;m`e>7(#Vr5EuTyr`LFGg4T77z7DqMdh z_3^nKuY7T|xwE=I~)C#VRFlyyHRo{=qlZj+kM=TlL)RBxH?ntF#u~@Vtk?QK~jwfUB$2TQ9 zJKDRuyW|ViwH3JVhrj*++Kv&vMyLln!~eZz>g12AL*^$GKdF;fs~bx9-#9<_wV%Dd z?cy)S8z25|%WmnfnQUJsFaB$pq^tX1E!{K!#LnM6d7{4ap99PPovE^XRLSA_H6bz5 zD=*h9Ee7hY>%(zYPlCM*9egWEM6rpI8V_?!@fUM{QEIAQy3mPk-dK`soOis5Y$xa1 X$#$b_vA^L1T}<{aI%{ue^HJ-+J=N3E delta 2073 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