Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Taules strings

281 views

Published on

  • Be the first to comment

  • Be the first to like this

Taules strings

  1. 1. namespace TaulesStrings { class Program { static void Main(string[] args) { int opcio; do { Console.Clear(); MostrarOpcions(); opcio = LlegirOpcio(7); switch (opcio) { case 0: Console.WriteLine("Adeu!!"); break; case 1: DoEsNull(); Console.ReadKey(); break; case 2: DoAparicions(); Console.ReadKey(); break; case 3: DoOnApareix(); Console.ReadKey(); break; case 4: DoInversa(); Console.ReadKey(); break; case 5: DoEsPalindrom(); Console.ReadKey(); break; case 6: DoAMajuscules(); Console.ReadKey(); break; /*case 7: DoOrdenarTaula(t, nElem); Console.ReadKey(); break;*/ } } while (opcio != 0); } static void MostrarOpcions() { Console.WriteLine("Exercici 1: String null."); Console.WriteLine("Exercici 2: Aparicions."); Console.WriteLine("Exercici 3: On apareix."); Console.WriteLine("Exercici 4: Inversa."); Console.WriteLine("Exercici 5: Palindrom"); Console.WriteLine("Exercici 6: Majuscules."); Console.WriteLine("Exercici 7: No hi ha lletres."); Console.WriteLine("nSi vols sortir prem el número 0."); } static int LlegirOpcio(int opcioMaxima) {
  2. 2. int op; Console.WriteLine("nnTRIA UNA OPCIO DEL MENU ENTRE 0 I " + opcioMaxima + "-->"); op = Convert.ToInt32(Console.ReadLine()); while (op < 0 || op > opcioMaxima) { Console.WriteLine("OPCIO INCORRECTA, TORNA-HI"); Console.ReadKey(); Console.Clear(); MostrarOpcions(); Console.WriteLine("TRIA UNA OPCIO DEL MENU ENTRE 0 I " + opcioMaxima + "-->"); op = Convert.ToInt32(Console.ReadLine()); } return op; } static void DoEsNull() { string text; bool nul; text = Console.ReadLine(); nul = EsNull(text); if (nul) { Console.WriteLine("És una string nula."); } else { Console.WriteLine("És una string amb caràcters."); } } static bool EsNull(string s) { bool nul; if (s == "") { nul = true; } else { nul = false; } return nul; } static void DoAparicions() { int numero = 0; char valor ='A'; string s; Console.WriteLine("Escriu una seqüència de caràcters"); s = Console.ReadLine(); Console.WriteLine("Quin caràcter vols buscar? (diferencia entre majuscules i minuscules)"); valor = Convert.ToChar(Console.ReadLine()); numero = Aparicions(s, valor);
  3. 3. Console.WriteLine("El caracter {0} surt {1} vegades.",valor,numero); } static int Aparicions(string s, char valor) { int i, caracter=0, comptador=0; for (i = 0; i < s.Length; i++) { if ((s[i] == valor) || (s[i] == Convert.ToChar(caracter))) { comptador++; } } return comptador; } static void DoOnApareix() { int i = 0; char valor; string s; bool buida = true; Console.WriteLine("Escriu una seqüència de caràcters:"); s = Console.ReadLine(); Console.WriteLine("Quin caràcter vols buscar? (NO diferencia entre majuscules i minuscules)"); valor = Convert.ToChar(Console.ReadLine()); if (EsNull(s)) { Console.WriteLine("La seqüència de caràcters és buida."); } else { int[] t = new int[s.Length]; t = OnApareix(s, valor); while (i < s.Length && buida) { if (t[i] != 0) buida = false; i++; } if (buida) { Console.WriteLine("Aquest caràcter no apareix a la seqüència entrada: " + valor); } else { for (i = 0; i < t.Length; i++) { if (t[i] != 0) { Console.WriteLine("El caràcter {0} és a l'index {1}", valor, t[i] - 1); } static int[] OnApareix(string s, char valor) { int[] t=new int[s.Length]; int i, comptador, caracter;
  4. 4. comptador = 0; if (valor >= 'A' && valor <= 'Z') { caracter = valor + 32; } else { caracter = valor - 32; } for(i=0; i<s.Length;i++) { if ((s[i] == valor) || (s[i] == Convert.ToChar(caracter))) { t[comptador]=i+1; comptador++; } } return t; } static void DoInversa() { string s, invertir; Console.WriteLine("Escriu una seqüència de caràcters"); s = Console.ReadLine(); invertir = Inversa(s); Console.WriteLine("El text invertit és:n"+invertir); } static string Inversa(string s) { int i, maxim; maxim = s.Length - 1; string caracter=""; for (i = maxim; i >= 0; i--) { caracter = caracter + s[i]; } return caracter; } static void DoEsPalindrom() { bool esPalindrom = false; string s; Console.WriteLine("Escriu una seqüència de caràcters"); s = Console.ReadLine(); esPalindrom = EsPalindrom(s); if (esPalindrom) { Console.WriteLine("Es palindrom"); } else { Console.WriteLine("No ho és"); } }
  5. 5. static bool EsPalindrom(string s) { int i, maxim; string caracters = ""; bool esPalindrom = false; maxim= s.Length-1; for (i = s.Length - 1; i >= 0; i--) { caracters = caracters + s[i]; } if (s == caracters) { esPalindrom = true; } else { esPalindrom = false; } return esPalindrom; } static void DoAMajuscules() { string s, majuscules; Console.WriteLine("Escriu una seqüència de caràcters (només minúscules, no escriguis ni ñ ni ç"); s = Console.ReadLine(); majuscules = AMajuscules(s); Console.WriteLine(majuscules); } static string AMajuscules(string s) { string majuscules=""; char caracter; int i; int maxim= s.Length; for (i = 0; i < maxim; i++) { if ((s[i] >= 'a') && (s[i] <= 'z')) { caracter = Convert.ToChar(s[i] - 32); majuscules = majuscules + caracter; } else { majuscules = majuscules + s[i]; } } return majuscules;

×