Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Object Pascal: кроссплатформенные технологии > Найти наибольшее количество цифр


Автор: Dantrag 4.6.2006, 09:53
Помогите пожалуйста мало что смыслю в Pascale но очень надо
Задача:
Дан текст. Найти наибольшее количество цифр, идущих в нем подряд.
Вывесите пожалуйста текст программы, если нетрудно. 

Автор: skyboy 4.6.2006, 18:47
Код

var CountMax,CountCurrent,i,lng:byte;
      s:String;
begin
 writeln('Введи строку или умри!(Input string or Die!)')
 readln(S);
 if length(S)=0 
  then
   begin
    writeln('Пустая строка! Отказываюсь работать!');
    readln;
    exit;
   end;
lng:= length(S);
countmax:= 0;
CountCurrent:= 0;
for i:=1 to lng do
 if s[i] in ['0'..'9']
  then
   CountCurrent:= CountCurrent + 1
  else
   begin
    if CountCurrent> CountMax 
     then 
      CountMax:= CountCurrent;
    CountCurrent:= 0;
   end;
if CountCurrent> CountMax
 then 
  CountMax:= CountCurrent;
Writeln('Максимальное количество цифр, идущих подряд - ' + CounTMax); 
Readln;
end.
 

Автор: Dantrag 4.6.2006, 19:20
Спасибо большое.
А ты не мог бы сделать так чтобы он искал не в строке,  а в каком-то документе который в этой же программе создается и в него вводится текст в котором мы и ищем наибольшеее количество цифр идущих в нем подряд. 

Автор: skyboy 4.6.2006, 19:39
не мог бы. 
операция чтения строки из текстового файл - readln(<text - variable>,<string>); - чтение из файла - первого аргумента очередной строки. 
eof(<text - variable>)  - функция вернёт true, если достигнут конец файла. 
Флаг в руки и - вперёд!

Добавлено @ 19:47 
< text - variable> - переменная типа text.
надо работать так:
Код

var F:text;
     S:string;
...
begin
...
Assign(F,''c:\myfile.txt);
reset(F); // открываем для чтения
while not(eof(f)) do   // пока не дойдём до конца файла...
 begin
  readln(F,s);    // читаем строку
  .....                 // обрабатываем строку
 end;
...
 

Автор: Dantrag 5.6.2006, 14:22
Спасибо))) 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)