Перейти к содержимому

Фото
- - - - -

консольная программа на Visual c# express edition


  • Вы не можете создать новую тему
  • Please log in to reply
2 ответов в этой теме

#1 POPEYE

POPEYE

    Стебно таблетку оторвал... :-) | ptrd.narod.ru

  • Постоялец
  • 4 848 сообщений

Отправлено 14 ноября 2007 - 09:05

Надо, чтобы пользователь вводил какую то фразу из нескольких слов, а в ответ программа выдавала самое длинное из слов, которое есть в этой фразе... (при этом надо использовать команды обработки текста)

Вот, что я сделал:

using System;
class Tekst3{
public static void Main(string[] arg){
string s=Console.ReadLine();
string[] lause=s.Split(new char[]{' '});


}
}


Это позволяет разбить фразу на составные слова (отслеживая пробелы), а вот как выбрать самое длинное??? Надо как-то отсортировать их по кол-ву символов, тогда было бы все просто, но как это сделать? Команда Array.Sort(lause); сортирует только во алфавиту...

Может кто знает какой командой отсортировать по параметру Lause.Length?

Или тут вообще совсем по другому надо делать? :unsure:
  • 0
I'm POPEYE The Sailor man

#2 SmokEr

SmokEr
  • Пользователь
  • 119 сообщений

Отправлено 14 ноября 2007 - 09:17

Я думаю должно быть примерно так:
using System;
class MainClass
{
	static void Main()
	{
		string s = Console.ReadLine();
		string[] lause = s.Split(new char[]{' '});
		string max = lause[0];
		foreach (string r in lause) 
			if (r.Length > max.Length) max = r;
		Console.WriteLine(max);
	}
}

  • 0

#3 POPEYE

POPEYE

    Стебно таблетку оторвал... :-) | ptrd.narod.ru

  • Постоялец
  • 4 848 сообщений

Отправлено 14 ноября 2007 - 11:35

SmokEr,
Спасибо, а то я уже голову сломал - заклинило... Размещенное изображение
  • 0
I'm POPEYE The Sailor man