Исправьте задачу со строками - C#

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

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

нужно что бы выводил его два минимальных то сначала первое а потом последнее , и если два максимальных одинаковой длинны сначала первое длинное и последнее, а сейчас выводит просто минимальное и максимальное
            Console.Write("Введите строку: ");
            string input = Console.ReadLine();
            string[] str = input.Split(new Char[] { ' ', ',', '.', ':', '!', '?', ';' }, StringSplitOptions.RemoveEmptyEntries);
            int maxlen = 0, index = 0, minlen = 0, index2 = 0; ;
            for (int i = 0; i < str.Length; i++)
            {
                if (str[i].Length > maxlen)
                {
                    maxlen = str[i].Length;
                    index = i;
                }
                if (str.Length < minlen)
                {
                    minlen = str[i].Length;
                    index2 = i;
                }
            }
            Console.Write("Самое длинное слово: {0}", str[index]);
            Console.WriteLine();
            Console.Write("Самое короткое слово:{0}", str[index2]);
            Console.ReadLine();

Решение задачи: «Исправьте задачу со строками»

textual
Листинг программы
using System;
class Program
{
    static void Main()
    {
        int min = int.MaxValue, max = 0;
        Console.Write("Введите строку: ");
        string input = Console.ReadLine(), prev = "";
        string[] str = input.Split(new Char[] { ' ', ',', '.', ':', '!', '?', ';' }, StringSplitOptions.RemoveEmptyEntries);
        foreach (string s in str)
        {
            if (min > s.Length) min = s.Length;
            if (max < s.Length) max = s.Length;
        };
        Console.WriteLine("Самые длинные слова : ");
        foreach (string big in str)
            if (big.Length == max && big != prev)
            {
                prev = big;
                Console.WriteLine(big);
            }
                Console.WriteLine();
                Console.WriteLine("Самые короткие слова : ");
                foreach (string small in str) if (small.Length == min)
                    {
                        prev = small;
                        Console.WriteLine(small);
                    }
                Console.ReadKey(true);
    }
}

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


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

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

11   голосов , оценка 4.182 из 5
Похожие ответы