2010-10-06 10 views
0

que je dois résoudre la question suivante que je ne peux pas travailler par moi-même (débutant ^^) ..:.Central/lettre milieu d'une chaîne (méthodes)

Ok, la question: Créer une méthode qui imprimera la lettre centrale d'une chaîne (donnée en paramètre). J'ai besoin d'utiliser la longueur de la propriété pour déterminer la longueur. Par exemple, la chaîne: Books.

la lettre centrale/centrale est o. Espérons que c'est un peu clair ..

Merci d'avance.

Editer: Je sais comment déterminer la longueur de la corde. Maintenant, le problème est de diviser le mot et ensuite écrire la lettre suivante ou quelque chose.

+6

Nous ne ferons pas vos devoirs pour vous. Qu'avez-vous essayé jusqu'à présent? Montrez-nous du code et nous pouvons vous aider. –

+0

À quoi ressemble votre code jusqu'à maintenant? –

+2

Comment devrait-il gérer les chaînes de longueur égale? Par exemple. quelle serait la lettre centrale de "lettre"? – arootbeer

Répondre

2

Voici quelques conseils: 1.
de type chaîne a une propriété Length.
2 .Si vous connaissez l'index du caractère que vous voulez, vous pouvez le demander en utilisant: myString[index].
3. Savoir quoi faire avec une chaîne avec un nombre pair de caractères est nécessaire pour répondre à cette question.
4. Envisager la déviation d'entier.

Cela devrait vous aider à démarrer.

0
string middleLetter(string arg) 
{ 
    return arg[arg.Length >> 1]; 
} 
+2

1. Ceci est une question de devoirs - juste mettre du code ici n'aide pas. 2. Ce n'est pas C#. 3. Que se passe-t-il lorsque le mot a un nombre pair de caractères? Devrait être spécifié plus explicitement. 4. Pourquoi le déplacement? Pour confondre un débutant? – tanascius

+0

-1 pour la complexité –

+0

+1 pour être intelligent, -1 pour être inscriptible et non C# –

-1
public static string FindMiddleChar(string s) 
    { 
     int middleChar = s.Length/2; 

     if (s.Length > 2) 
     { 
      if (s.Length % 3 == 0) 
      { 
       if (s.Length <= 3) 
       { 
        return s[middleChar].ToString(); 
       } 
       return s[middleChar - 1] + s[middleChar].ToString(); 
      } 
      else if (s.Length % 3 != 0) 
      { 
       if (s.Length <= 4) 
       { 
        return s[middleChar - 1] + s[middleChar].ToString(); 
       } 
       return s[middleChar].ToString(); 
      } 
     } 
     return "Error, the input string must contain at least three characters."; 
    } 
Questions connexes