Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

krum_43 avatar krum_43 750 Точки

Проблем при една задача от тех-модула-Shurt Words Sorted.

Moже ли някой да ми каже защо като пусна като тест по голям текст ми излиза една запетая пред пьрвата дума?

Условието на задчата е да се изведат всички думи под 5 букви в даден текст,разделени със запетая и сортирани по азбучен ред.

Ето го моят опит за решение:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Shurt_Words_Sorted
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] input = Console.ReadLine().Split(' ',',',':',';','(','[','"','!','?','/','\\');
            string[] input1 = new string[input.Length];
            List<string> output = new List<string>();            
            List<string> wordslessfife= new List<string>();
            for (int i = 0; i <input.Length; i++)
            {
                input1[i] = input[i].ToLower();
                if (input1[i].Length<5)
                {
                    wordslessfife.Add(input1[i]);
                }
            }
            wordslessfife.Sort();
            var output1=wordslessfife.Distinct();
            Console.WriteLine(string.Join(", ",output1));
        }
    }
}
 

Тагове:
1
Module: C# Advanced
misho_dobrev avatar misho_dobrev 116 Точки
Best Answer

Запетайката в началото на отпечатания резултат от output1 идва от това, че съединяваш всички думи под 5 символа, в които има празно разстояние, но не се вижда. Трябва да пуснеш дебъгера и ще го видиш. Тъй като това празно разстояние не ти трябва можеш да замениш първия ред от кода ти със следното:

string[] input = Console.ReadLine().Split(new char[] { ' ', ',', ':', ';', '(', '[', '"', '!', '?', '/', '\\' },StringSplitOptions.RemoveEmptyEntries);

С "StringSplitOptions.RemoveEmptyEntries" махаш такива празни разстояния. Дано съм ти бил полезен.

Лек ден.

0
26/09/2018 12:25:51
krum_43 avatar krum_43 750 Точки

Мерси за коментара.Точно това ми трябваше.

Лек ден .

1
ReapeR_MaxPayne avatar ReapeR_MaxPayne 16 Точки

И това .Split(new char[] { ' ', ',', ':', ';', '(', '[', '"', '!', '?', '/', '\\' },StringSplitOptions.RemoveEmptyEntries);

със : .Split(@" ,:;([""!?/\".ToCharArray(),StringSplitOptions.RemoveEmptyEntries)

или просто си изнеси символите в отделна променлива:

string separators = @" ,:;([""!?/\";

input.Split(separators.ToCharArray(),,StringSplitOptions.RemoveEmptyEntries)

;)

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.