Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Строки

Автор: Lyssa 19.12.2010 1:11

Помоги, пожалуста!!! Дан текстовый файл, нужно найти и вывести количество символов, включая пробелы, к введенному слову. Строки вводятся, а как посчитать символы я не представляю...

Автор: Lyssa 19.12.2010 3:47

Предложите, пожалуста, хоть какие то варианты, как делать...

Автор: Lapp 19.12.2010 4:05

Цитата(Lyssa @ 18.12.2010 21:11) *
найти и вывести количество символов, включая пробелы, к введенному слову.

blink.gif что это означает? можно по-русски?.. blink.gif

Цитата(Lyssa @ 18.12.2010 23:47) *
Предложите, пожалуста, хоть какие то варианты, как делать...
Да мы бы с радостью... но ты выразись попонятнее.
Лучше всего - приведи условие, как оно написано в задачнике или что там у тебя.

Автор: Lyssa 19.12.2010 4:16

Дан текст, который состоит из 8 строк. Обчислить количество символов до слова введеного з текста.

Автор: Lapp 19.12.2010 4:20

Цитата(Lyssa @ 19.12.2010 0:16) *
Дан текст, который состоит из 8 строк. Обчислить количество символов до слова введеного з текста.

Посчитать количество симвлов до данного слова?

Ты приведи пример. Не обязательно 8 строк, можно поменьше. Но только полностью, как это выглядит.

Автор: Lyssa 19.12.2010 4:24

Текст
Зима холодно снег
Весна тепло
Слово: холодно
Ответ:5


Автор: Lapp 19.12.2010 4:29

А если так?

Текст:

Зима - холодно, снег...
Весна - тепло!
А осенью мокро, блин ((

Слово: тепло

Ответ: ?

Автор: Lyssa 19.12.2010 4:46

Цитата(Lapp @ 19.12.2010 0:29) *

А если так?

Текст:

Зима - холодно, снег...
Весна - тепло!
А осенью мокро, блин ((

Слово: тепло

Ответ: ?

Если нет пробелов перед "-" то 27, а с пробелами 31

Автор: Lapp 19.12.2010 5:13

Цитата(Lyssa @ 19.12.2010 0:46) *
Если нет пробелов перед "-" то 27, а с пробелами 31

Конечно, с пробелами - это же тире, а не дефис! ))
Спасибо ).

Короче, все просто. Вводишь строки.. примерно так:
m:=0;
b:=false;
while not EoF(f) do begin
ReadLn(f,s);
if Pos(w,s)>0 then begin
m:=m+Pos(w,s)-1;
b:=true;
break
end
end;
if b then WriteLn(m,' characters before word ',w) else WriteLn('word ',w,' not found');


Добавлено через 6 мин.
Извини, ошибся. Вот так надо:
m:=0;
b:=false;
while not EoF(f) do begin
ReadLn(f,s);
if Pos(w,s)>0 then begin
m:=m+Pos(w,s)-1;
b:=true;
break
end
else Inc(m,Length(s))
end;
if b then WriteLn(m,' characters before word ',w) else WriteLn('word ',w,' not found');

Автор: Lyssa 19.12.2010 5:23

Спасибо БОЛЬШОЕ!!!!!