Помощь - Поиск - Пользователи - Календарь
Полная версия: Помогите с задачкой на файлы!
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Svechka
"В заданном тексте определить целое число, состоящее из наибольшего количества цифр."

то есть получается у меня текстовый файл будет состоять из чисел типа real ? и среди них надо будет искать например чсла 500.0 , 456.0 ... а как тогда для них считать количество цифр? Я сначала сделала вообще без количества цифр, типа у целого числа неважно какое наибольшее количество, надо лишь найти максимальное.. вот:
 Program Z1;
uses crt;
var
f:text;
name:string[20];
a,max:real;
i,k:integer;
begin
clrscr;
writeln ('Enter file name ');
readln (name);
max:=0;
assign(f,name);
{$I-}reset(f) {$I+};
If IOResult<>0 then begin
writeln ('Error');halt;end;
while not eof(f) do begin
read (f,a);
if frac(a)=0 then begin k:=k+1;
for i:=1 to k do
if a>max then max:=a;
end;
writeln(max:4:2);
close(f);
readln;
end.


но по-моему так неграмотно..

или все-таки файл будет из чисел типа integer ?

подскажите, пожалуйста!
мисс_граффити
123.0 - это не целое число с точки зрения ЭВМ.
Странно задача сформулирована.... В файле могут быть только числа? Или, например, такое тоже допустимо:
Цитата
fjklf 1246dkjd; 123
?
volvo
Ты сама себе противоречишь:
Цитата
"В заданном тексте определить целое число, состоящее из наибольшего количества цифр."
, при чем здесь Real?

Я бы разбивал текст на слова (можно прямо "на лету", хранить все слова совершенно необязательно), и КАЖДОЕ слово проверял, не является ли оно целым (через Val), и если является - то тогда уже проверять количество цифр, т запоминать то число, в котором цифр больше...

Прежде чем начать реализовывать - маленькое уточнение: что будет, если есть больше одного числа с одинаковым (и максимальным) количеством цифр? Какое из них будет ответом?

P.S. Кстати, "в заданном тексте" наводит на мысль, что файл все-же текстовый...
Svechka
ладно, я поняла вою ошибку, спасибо всем) переделаю заново все..
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.