Определение типа грамматик по регистру букв - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Проблема кода в том, что введенный

заглавными

буквами текст должен определяться как

контекстно-свободный тип

, а текст в котором есть как

прописные так и заглавные

, должен определяться как

контекстно-зависимый тип

Листинг программы
  1. for (i = 0; i < str1.Length; i++)
  2. {
  3. if (str1[i] >= 'A' && str1[i] <= 'z')
  4. {
  5. MessageBox.Show("Контекстно-зависимый тип");
  6. break;
  7. }
  8. else
  9. if (str1[i] >= 'A' && str1[i] <= 'Z')
  10. {
  11. MessageBox.Show("Контекстно-свободный тип");
  12. break;
  13. }
При компиляции, программа принимает текст "aA" и выводит что это и Контекстно-зависимый тип и Контекстно-свободный тип. Нужно, чтобы при вводе АА он выводил "Контекстно-свободный тип", а если введено Аа, то "Контекстно-зависимый тип"

Решение задачи: «Определение типа грамматик по регистру букв»

textual
Листинг программы
  1. using System;
  2. using System.Linq;
  3.  
  4. namespace ConsoleApplication1
  5. {
  6.     class Program
  7.     {
  8.         static void Main(string[] args)
  9.         {
  10.             string t1 = "dfgdgfSDFSdfdf";
  11.             string t2 = "SDFSFSDFSFSFDD";
  12.  
  13.             Console.WriteLine(@"Type of t1(""{0}""): {1}", t1, t1.GetContextType());
  14.             Console.WriteLine(@"Type of t2(""{0}""): {1}", t2, t2.GetContextType());
  15.  
  16.             Console.ReadKey();
  17.         }
  18.     }
  19.  
  20.     static class StringExtentions {//методы расширения для строк
  21.  
  22.         public enum ContextType
  23.         {
  24.             Dependent,
  25.             Independent
  26.         };
  27.  
  28.         public static ContextType GetContextType(this string input) {
  29.        
  30.             return input.All(char.IsUpper) ? ContextType.Independent : ContextType.Dependent;
  31.        
  32.         }  
  33.    
  34.     }
  35. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.429 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы