Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.04.2011, 12:32   #1
ДениC
Пользователь
 
Регистрация: 29.03.2011
Сообщений: 41
По умолчанию Invalid numeric input

Код:
Procedure GetLevel;
var
   i:integer;
   buf:string;
begin
     i:=1;
     repeat
         readln(f,buf);
         if buf[1] <> '.' then begin
            mes[i]:=buf;        
            readln(f,level[i]);       
            i:=i+1;
         end;
     until buf[1]='.';
end;
Что делать???
Изображения
Тип файла: jpg 03.04.jpg (11.0 Кб, 113 просмотров)

Последний раз редактировалось ДениC; 03.04.2011 в 12:48. Причина: ошибочка)
ДениC вне форума Ответить с цитированием
Старый 03.04.2011, 12:35   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

вам надо считать все строки до точки?(причем все что до точки числа)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 03.04.2011, 12:37   #3
ДениC
Пользователь
 
Регистрация: 29.03.2011
Сообщений: 41
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
вам надо считать все строки до точки?(причем все что до точки числа)
Да, именно так
ДениC вне форума Ответить с цитированием
Старый 03.04.2011, 12:47   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

тогда примерно так
Код:
i:=1;//у вас статический массив?
while true do
 begin
  readln(f,buf);
  if(buf='.')then break;
  mes[i]:=buf;//а если переполнение массива?
  level:=StrToInt(buf);//только level будет содержать последнюю строчку, зачем сие?
 end;
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 03.04.2011, 12:49   #5
ДениC
Пользователь
 
Регистрация: 29.03.2011
Сообщений: 41
По умолчанию

Может вам исходник дать?
ДениC вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Invalid numeric format _-Re@l-_ Общие вопросы Delphi 3 22.12.2010 15:49
Процедура выдает ошибку arithmetic exception numeric overflow or string truncation postaveche БД в Delphi 8 09.09.2010 13:20
Varchar и numeric АлёнаP SQL, базы данных 2 15.01.2010 08:58
Ошибка EInOutError: Invalid numeric input Croesus Общие вопросы Delphi 1 15.03.2009 08:36
Как поле FireBird.домен.Numeric(7,2) увидеть в DBGrid с добной частью? Vladimir Trufanov БД в Delphi 2 07.01.2009 10:00