|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.05.2009, 09:38 | #1 |
Новичок
Джуниор
Регистрация: 29.05.2009
Сообщений: 1
|
Составить программу, которая создает и выводит на экран файл.
Помогите пожалуйста сделать задачу, которая заключается в следующем ->
Составить программу, которая создает и выводит на экран файл ZARPL.DAT, компоненты которого имеют следующую структуру -Табельный номер -ФИО -Сумма зарплаты Выход из ввода, табельный номер=999.Выведите на экран табельные номера, ФИО и зарплату только тех, у кого зарплата превышает 100000.00 руб. Используйте оператор with Вот код этой программы -> Код Delphi procedure TForm1.Button3Click(Sender: TObject); begin AssignFile(dat,DATNAME); {$I-} Append(dat); {$I+} if IOResult<>0 then begin buttonSelected := MessageDlg('Файл не был найден.'+#13+'Создать новый?',mtError, mbOKCancel, 0); if buttonSelected = mrOK then begin AssignFile(dat,DATNAME); {$I-} Rewrite(dat); {$I+} if IOResult<>0 then begin ShowMessage('Ошибка! Вот ее код: '+IntToStr(GetLastError)); button4.Enabled:=false; button5.Enabled:=false; exit; end; end; end; if StrToInt(edit3.text)<999 then if IOResult=0 then begin button4.Enabled:=True; button5.Enabled:=True; writeln(dat,edit3.text); writeln(dat,edit4.text); writeln(dat,edit5.text); end; if StrToInt(edit3.text)>=999 then begin ShowMessage('Такого табельного номера нет!'); end; CloseFile(dat); end; procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char); begin if not (Key in ['0'..'9',#46,#8]) then Key := #0; end; procedure TForm1.Edit4KeyPress(Sender: TObject; var Key: Char); begin if not (Key in ['а'..'я','А'..'Я',#46,#8,#32]) then Key := #0; end; procedure TForm1.Edit5KeyPress(Sender: TObject; var Key: Char); begin if not (Key in ['0'..'9',#46,#8]) then Key := #0; end; procedure TForm1.Button4Click(Sender: TObject); begin AssignFile(dat,DATNAME); {$I-} Reset(dat); {$I+} if IOResult<>0 then begin MessageDlg('Ошибка доступа к файлу',mtError,[mbOk],0); end; if IOResult=0 then begin while not EOF(dat) do begin for q:=0 to 999 do begin readln(dat,ch1[q]); end; end; end; if IOResult=0 then begin for m:=0 to 999 do begin f:=f+1; if f=3 then begin f:=0; if (StrToInt(ch1[m])>100000) and (ch1[m]<>'') then begin Memo1.Lines.Add(ch1[m-2]); Memo1.Lines.Add(ch1[m-1]); Memo1.Lines.Add(ch1[m]); end; end; end; end; CLoseFile(dat); end; procedure TForm1.Button5Click(Sender: TObject); begin if DeleteFile(DATNAME) then begin ShowMessage('Файл успешно удален!'); button4.Enabled:=false; button5.Enabled:=false; end; end; end. вроде как все считает и выводит в Memo1, но пишет ошибку is not valid integer value Заранее спасибо!! |
30.05.2009, 09:50 | #2 |
Форумчанин
Регистрация: 22.02.2009
Сообщений: 875
|
Скажите на какой строчке показывается ошибка, покажите список переменных.
И оформите код нормально(воспользуйтесь правкой). При создании сообщения есть тег CODE(самая правая кнопочка - "решетка")
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Последний раз редактировалось Neeter; 30.05.2009 в 10:14. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Составить программу, которая запрашивает пароль | Olesya2406 | Помощь студентам | 5 | 28.04.2015 17:20 |
Составить программу которая будет сортировать все положительные элементы | Wast | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 22.12.2008 15:56 |
Написать программу которая выводит таблицу значений функйии | akimbaev | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 01.10.2008 00:21 |
программа, которая выводит на экран одно из данных слов | vados | Паскаль, Turbo Pascal, PascalABC.NET | 11 | 26.10.2007 23:47 |