Найти порядковый номер самого длинного слова среди введенных литерных величин - C#
Формулировка задачи:
УСЛОВИЕ:
Дан текстовый файл Inlet.in, содержащий строко-
вые величины S.
Найти порядковый номер самого длинного слова сре-
ди введенных литерных величин. Если этого сделать
нельзя, значением результата положить –1.
Определение. Слово - это последовательность
символов литерной величины, не содержащая в
себе символ пробела.
Ввод (файл Inlet.in):
Строковая величина
Строковая величина
. . .
Строковая величина
Вывод (файл Outlet.out):
Порядковый номер длинного
слова текста или -1
ВОТ ПРИМЕРНЫЙ КОД В ДЕЛФИ,НО ОН НЕ СОВСЕМ ПРАВИЛЬНЫЙ ,КАК СКАЗАЛ ПРЕПОДАВАТЕЛЬ
program Project2; {$APPTYPE CONSOLE} uses SysUtils; var s,maxslovo, slovo:string; first, second: text; n,i,k:integer; Procedure PassWhiteSpace(var i:integer); begin while (i<=Length(s)) and (s[i]=' ') do begin inc(i); end; end; Procedure getword(var i,n: integer; out slovo:string); begin while (i<=Length(s)) and (s[i]<>' ') do begin slovo:=slovo+s[i]; inc(i); end; inc(n); end; begin { TODO -oUser -cConsole Main : Insert code here } assign(first,'Inlet.in'); assign(second,'Outlet.out'); reset(first); rewrite(second); maxslovo:=''; n:=0; while not eof(first) do begin readln(first,s); i:=1; while i<=length(s) do begin passwhitespace(i); getword(i,n,slovo); if length(maxslovo)<length(slovo) then begin maxslovo:=slovo; k:=n; end; end; end; write(second,k); close(first); close(second); end.
Решение задачи: «Найти порядковый номер самого длинного слова среди введенных литерных величин»
textual
Листинг программы
static void Main() { //адрес файлов естественно на свой string[] s = File.ReadAllText(@"E:\Inlet.in").Split(' ','\n').ToArray(); //пишем слова в массив int s1; if (s.GroupBy(v => v.Length).Count() <= 2) s1 = -2; //если длина всех слов одинакова else s1 = s.Aggregate(0, (x, v) => v != s.Where(b => b.Length == s.Select(c => c.Length).Max()).First() ? x + 1 : x); //вычисляем индекс File.WriteAllText(@"E:\Outlet.out", String.Format("{0}", s1 + 1)); //пишем файл }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д