Исправьте задачу со строками - 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);
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д