Opzione 2
This commit is contained in:
parent
9a6a7d033d
commit
fc5e00d760
41
Program.cs
41
Program.cs
@ -24,12 +24,12 @@ class Program {
|
|||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
Console.Clear();
|
Console.Clear();
|
||||||
|
ContaLettere();
|
||||||
Pausa();
|
Pausa();
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
Console.Clear();
|
Console.Clear();
|
||||||
|
|
||||||
Pausa();
|
Pausa();
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
@ -65,10 +65,45 @@ class Program {
|
|||||||
if (daEsserCercato.Contains(trova)) {
|
if (daEsserCercato.Contains(trova)) {
|
||||||
ritorno = daEsserCercato.Replace(trova, sostituisci);
|
ritorno = daEsserCercato.Replace(trova, sostituisci);
|
||||||
}
|
}
|
||||||
else{
|
else {
|
||||||
ritorno = $"Nessuna occorrenza di {trova} trovata in {daEsserCercato}";
|
ritorno = $"Nessuna occorrenza di {trova} trovata in {daEsserCercato}";
|
||||||
}
|
}
|
||||||
|
|
||||||
return ritorno;
|
return ritorno;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void ContaLettere() {
|
||||||
|
string daEsserCercato, stringa;
|
||||||
|
int vocali, consonanti;
|
||||||
|
|
||||||
|
Console.Write("Inserire il testo in cui contare le lettere: ");
|
||||||
|
daEsserCercato = Console.ReadLine();
|
||||||
|
|
||||||
|
stringa = daEsserCercato.ToLower();//converto la stringa in caratteri minuscoli per semplificare la ricerca delle lettere dopo
|
||||||
|
|
||||||
|
//Queste sono due addizioni lunghissime perché ho voluto cercare di usare solo i metodi delle stringhe e non convertire la stringa in array per la ricerca
|
||||||
|
vocali = CercaLettera(stringa, 'a') + CercaLettera(stringa, 'e') + CercaLettera(stringa, 'i') + CercaLettera(stringa, 'o') + CercaLettera(stringa, 'u');
|
||||||
|
consonanti = CercaLettera(stringa, 'b') + CercaLettera(stringa, 'c') + CercaLettera(stringa, 'd') + CercaLettera(stringa, 'f') + CercaLettera(stringa, 'g') + CercaLettera(stringa, 'h') + CercaLettera(stringa, 'j') + CercaLettera(stringa, 'k') + CercaLettera(stringa, 'l') + CercaLettera(stringa, 'm') + CercaLettera(stringa, 'n') + CercaLettera(stringa, 'p') + CercaLettera(stringa, 'q') + CercaLettera(stringa, 'r') + CercaLettera(stringa, 's') + CercaLettera(stringa, 't') + CercaLettera(stringa, 'v') + CercaLettera(stringa, 'w') + CercaLettera(stringa, 'x') + CercaLettera(stringa, 'y') + CercaLettera(stringa, 'z');
|
||||||
|
|
||||||
|
Console.WriteLine($"La stringa {daEsserCercato} contiene {vocali} vocali e {consonanti} consonanti");
|
||||||
|
}
|
||||||
|
|
||||||
|
static int CercaLettera(string p_stringa, char p_lettera) {
|
||||||
|
int i = 0, ritorno = 0;
|
||||||
|
//creo un array per avere l'indice iniziale di ogni occorrenza del testo da trovare e lo riempio di -1 visto che sono indici non validi
|
||||||
|
int[] indiciOccorrenze = new int[p_stringa.Length];
|
||||||
|
for (int j = 0; j < indiciOccorrenze.Length; j++) {
|
||||||
|
indiciOccorrenze[j] = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (p_stringa.Contains(p_lettera)) {//finché c'è un'occorrenza
|
||||||
|
ritorno++;//conta quante occorrenze ci sono state
|
||||||
|
indiciOccorrenze[i] = p_stringa.IndexOf(p_lettera);//salva l'indice iniziale dell'occorrenza
|
||||||
|
p_stringa = p_stringa.Substring(indiciOccorrenze[i] + 1);//accorcia il testo per cercare oltre l'occorrenza appena trovata (1 serve per accorciare oltre la lettera)
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
return ritorno;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -13,7 +13,7 @@ using System.Reflection;
|
|||||||
[assembly: System.Reflection.AssemblyCompanyAttribute("strings_1")]
|
[assembly: System.Reflection.AssemblyCompanyAttribute("strings_1")]
|
||||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+0c0dba09f56a880aa213506f9e689c9f02f72bc4")]
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+9a6a7d033df24618f23d8c678ad89ad9da11fd5f")]
|
||||||
[assembly: System.Reflection.AssemblyProductAttribute("strings_1")]
|
[assembly: System.Reflection.AssemblyProductAttribute("strings_1")]
|
||||||
[assembly: System.Reflection.AssemblyTitleAttribute("strings_1")]
|
[assembly: System.Reflection.AssemblyTitleAttribute("strings_1")]
|
||||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
04a8bffd0985b606c02f47e14af099392fb8a67f7a6b726a8ce22dfe96827131
|
026fc32c5f2b08f1f28bf8d9d499576953af691b4c04f7de6e6d7956b19089a8
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user