Migliorie generali
This commit is contained in:
parent
c3221a26e7
commit
f14e6ba36e
48
Program.cs
48
Program.cs
@ -111,30 +111,29 @@ class Program {
|
|||||||
|
|
||||||
//converto la stringa inserita da codifica Unicode a codifica ASCII
|
//converto la stringa inserita da codifica Unicode a codifica ASCII
|
||||||
//******************************************************************************************************************************************************************************//
|
//******************************************************************************************************************************************************************************//
|
||||||
|
{
|
||||||
|
Encoding ascii = Encoding.ASCII;
|
||||||
|
Encoding unicode = Encoding.Unicode;
|
||||||
|
char[] chars = stringa.ToCharArray();
|
||||||
|
byte[] bytes = new byte[chars.Length];
|
||||||
|
|
||||||
Encoding ascii = Encoding.ASCII;
|
for (int i = 0; i < chars.Length; i++) {
|
||||||
Encoding unicode = Encoding.Unicode;
|
bytes[i] = Convert.ToByte(chars[i]);
|
||||||
char[] chars = stringa.ToCharArray();
|
}
|
||||||
byte[] bytes = new byte[chars.Length];
|
|
||||||
|
|
||||||
for (int i = 0; i < chars.Length; i++) {
|
Encoding.Convert(unicode, ascii, bytes);
|
||||||
bytes[i] = Convert.ToByte(chars[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
Encoding.Convert(unicode, ascii, bytes);
|
for (int i = 0; i < chars.Length; i++) {
|
||||||
|
chars[i] = Convert.ToChar(bytes[i]);
|
||||||
for (int i = 0; i < chars.Length; i++) {
|
}
|
||||||
chars[i] = Convert.ToChar(bytes[i]);
|
stringa = string.Join("", chars);
|
||||||
}
|
}
|
||||||
//******************************************************************************************************************************************************************************//
|
//******************************************************************************************************************************************************************************//
|
||||||
|
|
||||||
|
|
||||||
//i numeri nei seguenti cicli for sono caratteri non lettere in codifica ASCII. I cicli separano i vari blocchi di questi caratteri da quelli con le lettere
|
//i numeri nei seguenti cicli for sono caratteri non lettere in codifica ASCII. I cicli separano i vari blocchi di questi caratteri da quelli con le lettere
|
||||||
//******************************************************************************************************************************************************************************//
|
//******************************************************************************************************************************************************************************//
|
||||||
for (int i = 0; i <= 47; i++) {
|
for (int i = 0; i <= 96; i++) {
|
||||||
stringa = stringa.Replace(Convert.ToString(Convert.ToChar(i)), "");
|
|
||||||
}
|
|
||||||
for (int i = 58; i <= 96; i++) {
|
|
||||||
stringa = stringa.Replace(Convert.ToString(Convert.ToChar(i)), "");
|
stringa = stringa.Replace(Convert.ToString(Convert.ToChar(i)), "");
|
||||||
}
|
}
|
||||||
for (int i = 123; i <= 127; i++) {
|
for (int i = 123; i <= 127; i++) {
|
||||||
@ -150,7 +149,7 @@ class Program {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
metà1 = stringa.Substring(0, stringa.Length / 2).ToCharArray(); //divido la stringa a metà, prendo la prima e la converto in array di char per riordinarne le lettere
|
metà1 = stringa.Substring(0, stringa.Length / 2).ToCharArray(); //divido la stringa a metà, prendo la prima e la converto in array di char per riordinarne le lettere
|
||||||
metà2 = stringa.Substring((stringa.Length / 2) + 1, stringa.Length / 2).ToCharArray(); //divido la stringa a metà, prendo la seconda e la converto in array di char per riordinarne le lettere
|
metà2 = stringa.Substring((stringa.Length / 2) + 1, stringa.Length / 2).ToCharArray(); //divido la stringa a metà, prendo la seconda e la converto in array di char per riordinarne le lettere, salto una lettera perché quella centrale non mi interessa
|
||||||
}
|
}
|
||||||
|
|
||||||
string metàOrdinata1 = string.Join("", InsertionSort(metà1));//ordino la prima metà della stringa e la riconverto da array di char in stringa
|
string metàOrdinata1 = string.Join("", InsertionSort(metà1));//ordino la prima metà della stringa e la riconverto da array di char in stringa
|
||||||
@ -175,7 +174,7 @@ class Program {
|
|||||||
Console.Write("Inserire la frase da cercare: ");
|
Console.Write("Inserire la frase da cercare: ");
|
||||||
stringa = Console.ReadLine();
|
stringa = Console.ReadLine();
|
||||||
|
|
||||||
if (daEsserCercato.Length < stringa.Length) {
|
if (stringa.Length > daEsserCercato.Length) {
|
||||||
Console.WriteLine("Errore: non è possibile cercare una frase più lunga in una più corta.");
|
Console.WriteLine("Errore: non è possibile cercare una frase più lunga in una più corta.");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -188,19 +187,12 @@ class Program {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int CercaStringa(string p_stringa1, string p_stringa2) {
|
static int CercaStringa(string p_stringa1, string p_stringa2) {
|
||||||
int i = 0, ritorno = 0;
|
int ritorno = 0, temp;
|
||||||
|
|
||||||
//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_stringa1.Length];
|
|
||||||
for (int j = 0; j < indiciOccorrenze.Length; j++) {
|
|
||||||
indiciOccorrenze[j] = -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
while (p_stringa1.Contains(p_stringa2)) {//finché c'è un'occorrenza
|
while (p_stringa1.Contains(p_stringa2)) {//finché c'è un'occorrenza
|
||||||
ritorno++;//conta quante occorrenze ci sono state
|
ritorno++;//conta quante occorrenze ci sono state
|
||||||
indiciOccorrenze[i] = p_stringa1.IndexOf(p_stringa2);//salva l'indice iniziale dell'occorrenza
|
temp = p_stringa1.IndexOf(p_stringa2);//salva l'indice iniziale dell'occorrenza
|
||||||
p_stringa1 = p_stringa1.Substring(indiciOccorrenze[i] + 1);//accorcia il testo per cercare oltre l'occorrenza appena trovata (1 serve per accorciare oltre la lettera)
|
p_stringa1 = p_stringa1.Substring(temp + 1);//accorcia il testo per cercare oltre l'occorrenza appena trovata (1 serve per accorciare oltre la lettera)
|
||||||
i++;
|
|
||||||
}
|
}
|
||||||
return ritorno;
|
return ritorno;
|
||||||
}
|
}
|
||||||
@ -223,7 +215,7 @@ class Program {
|
|||||||
static string Sostituisci(string p_stringa1, char p_lettera1, char p_lettera2) {
|
static string Sostituisci(string p_stringa1, char p_lettera1, char p_lettera2) {
|
||||||
char[] lettere = p_stringa1.ToCharArray();
|
char[] lettere = p_stringa1.ToCharArray();
|
||||||
|
|
||||||
for (int j = 0; j < lettere.Length; j++) {
|
for (int j = 0; j < p_stringa1.Length; j++) {
|
||||||
if (lettere[j] == p_lettera1) {
|
if (lettere[j] == p_lettera1) {
|
||||||
lettere[j] = p_lettera2;
|
lettere[j] = p_lettera2;
|
||||||
}
|
}
|
||||||
|
|||||||
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_2")]
|
[assembly: System.Reflection.AssemblyCompanyAttribute("strings_2")]
|
||||||
[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+7a6ed48375e0f3e665e5c7af97c52dac8a74c24c")]
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+c3221a26e7024becb1a0bc5ca23f9d5951939a0e")]
|
||||||
[assembly: System.Reflection.AssemblyProductAttribute("strings_2")]
|
[assembly: System.Reflection.AssemblyProductAttribute("strings_2")]
|
||||||
[assembly: System.Reflection.AssemblyTitleAttribute("strings_2")]
|
[assembly: System.Reflection.AssemblyTitleAttribute("strings_2")]
|
||||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
5e3e4d696866e2b6908bc95830c3ffc558c82def5605b2b1f9029c1933ca644a
|
286555a28e2b9519ad213c06727318c7aaa3c8f73011ee3c1eb75939a096b603
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user