p align="left">2.4 Запуск приложения Выполняется нажатием клавиши F9. После компиляции запускается программа на выполнение. Окно программы с результатами работы представлены на рис.2-5. Рис.2 - Окно открытия файла
Рис.3 - Проверка файла
Рис.4 - Проверка файла
Рис.5 - Проверка файла ПЕРЕЧЕНЬ ССЫЛОК1. Абрамов В.Г., Трифонов Н.П., Трифонова Г.Н. Введение в язык Паскаль. - М.: Наука, 1988. 2. Довгаль С.И., Литвинов Б.Ю., Сбитнев А..И. Персональные ЭВМ : Турбо Паскаль V7.0, объектное программирование, локальные сети. - Киев: Информсиситема сервис, 1993. 3. Епанешников А.М., Епанешникова В.А. Программирование в среде Turbo Pascal 7.0.-М.: Диалог -МИФИ,1999. 4. Зуев Е.А. Программирование на языке Turbo Pascal 6.0,7.0. - М.: Радио и связь, Веста,1993. 5. Кандзюба С.П., Громов В.Н. Delphi 7.Базы данных и приложения. Лекции и упражнения. - К.: Издательство "ДиаСофт", 2001. 6. Климова Л.М. Pascal 7.0. Практическое программирование. Решение типовых задач. -М.:КУДИУ ОБРАЗ, 2000. 7. Марченко А. И., Марченко Л.А.. Программирование в среде Turbo Pascal 7.0.-К.: Век+,1999. 8. Фаронов В.В. Turbo Pascal 7.0. Начальный курс. - М.: Нолидж, 2000. ПРИЛОЖЕНИЯ Приложение А int i, j; for(i = 0; i < 10; i++) { // ... if(condition1) { j = 4; goto label1; } // ... for(j = 0; j < 10; j++) { // ... label1: // ... if(condition2) { i = 6; goto label2; } } Приложение Б -$A8 -$B- -$C+ -$D+ -$E- -$F- -$G+ -$H+ -$I+ -$J- -$K- -$L+ -$M- -$N+ -$O+ -$P+ -$Q- -$R- -$S- -$T- -$U- -$V+ -$W- -$X+ -$YD -$Z1 -cg -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; -H+ -W+ -M -$M16384,1048576 -K$00400000 -LE"c:\program files\borland\delphi7\Projects\Bpl" -LN"c:\program files\borland\delphi7\Projects\Bpl" -w-UNSAFE_TYPE -w-UNSAFE_CODE -w-UNSAFE_CAST Приложение В [FileVersion] Version=7.0 [Compiler] A=8 B=0 C=1 D=1 E=0 F=0 G=1 H=1 I=1 J=0 K=0 L=1 M=0 N=1 O=1 P=1 Q=0 R=0 S=0 T=0 U=0 V=1 W=0 X=1 Y=1 Z=1 ShowHints=1 ShowWarnings=1 UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; NamespacePrefix= SymbolDeprecated=1 SymbolLibrary=1 SymbolPlatform=1 UnitLibrary=1 UnitPlatform=1 UnitDeprecated=1 HResultCompat=1 HidingMember=1 HiddenVirtual=1 Garbage=1 BoundsError=1 ZeroNilCompat=1 StringConstTruncated=1 ForLoopVarVarPar=1 TypedConstVarPar=1 AsgToTypedConst=1 CaseLabelRange=1 ForVariable=1 ConstructingAbstract=1 ComparisonFalse=1 ComparisonTrue=1 ComparingSignedUnsigned=1 CombiningSignedUnsigned=1 UnsupportedConstruct=1 FileOpen=1 FileOpenUnitSrc=1 BadGlobalSymbol=1 DuplicateConstructorDestructor=1 InvalidDirective=1 PackageNoLink=1 PackageThreadVar=1 ImplicitImport=1 HPPEMITIgnored=1 NoRetVal=1 UseBeforeDef=1 ForLoopVarUndef=1 UnitNameMismatch=1 NoCFGFileFound=1 MessageDirective=1 ImplicitVariants=1 UnicodeToLocale=1 LocaleToUnicode=1 ImagebaseMultiple=1 SuspiciousTypecast=1 PrivatePropAccessor=1 UnsafeType=0 UnsafeCode=0 UnsafeCast=0 [Linker] MapFile=0 OutputObjs=0 ConsoleApp=1 DebugInfo=0 RemoteSymbols=0 MinStackSize=16384 MaxStackSize=1048576 ImageBase=4194304 ExeDescription= [Directories] OutputDir= UnitOutputDir= PackageDLLOutputDir= PackageDCPOutputDir= SearchPath= Packages= Conditionals= DebugSourceDirs= UsePackages=0 [Parameters] RunParams= HostApplication= Launcher= UseLauncher=0 DebugCWD= [Language] ActiveLang= ProjectLang= RootDir= [Version Info] IncludeVerInfo=0 AutoIncBuild=0 MajorVer=1 MinorVer=0 Release=0 Build=0 Debug=0 PreRelease=0 Special=0 Private=0 DLL=0 Locale=1049 CodePage=1251 [Version Info Keys] CompanyName= FileDescription= FileVersion=1.0.0.0 InternalName= LegalCopyright= LegalTrademarks= OriginalFilename= ProductName= ProductVersion=1.0.0.0 Comments= Приложение Г program proverka; uses Forms, Unit1 in 'Unit1.pas' {Form1}; {$R *.res} begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end. Приложение Д [Closed Files] File_0=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\UData.pas',0,1,545,15,558,1,0 File_1=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\UTablNU.pas',0,1,681,50,698,1,0 File_2=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\UMain.pas',0,1,148,31,155,1,0 File_3=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\UPerson.pas',0,1,99,34,116,1,0 File_4=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\UFunction.pas',0,1,479,1,492,0,0 File_5=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\UEtalon.pas',0,1,800,40,825,0,0 File_6=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\UCreateAllReport.pas',0,1,406,51,407,0,0 File_7=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\USprNa.pas',0,1,1,17,9,1,0 File_8=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\USprUd.pas',0,1,305,1,308,1,0 File_9=SourceModule,'D:\Projects\Delphi Studio\SKSMiK\ZarPlata\units\USprOtdel.pas',0,1,1,1,1,1,0 [Modules] Module0=D:\Projects\Delphi\sti\check_goto\Unit1.pas Count=1 EditWindowCount=1 [D:\Projects\Delphi\sti\check_goto\Unit1.pas] ModuleType=SourceModule FormState=1 FormOnTop=0 [C:\Program Files\Borland\Delphi7\Projects\ProjectGroup1.bpg] FormState=0 FormOnTop=0 [D:\Projects\Delphi\sti\check_goto\proverka.dpr] FormState=0 FormOnTop=0 [EditWindow0] ViewCount=1 CurrentView=0 View0=0 CodeExplorer=CodeExplorer@EditWindow0 MessageView=MessageView@EditWindow0 Create=1 Visible=1 State=2 Left=294 Top=140 Width=868 Height=505 MaxLeft=-4 MaxTop=108 MaxWidth=1288 MaxHeight=666 ClientWidth=1280 ClientHeight=632 LeftPanelSize=0 LeftPanelClients=CodeExplorer@EditWindow0 LeftPanelData=00000400010000000C000000436F64654578706C6F72657200000000000000000000000000000000000100000000000000000C000000436F64654578706C6F726572FFFFFFFF RightPanelSize=0 BottomPanelSize=0 BottomPanelClients=MessageView@EditWindow0 BottomPanelData=00000400010000000B0000004D657373616765566965770000000000000000000000000000000000FFFFFFFF [View0] Module=D:\Projects\Delphi\sti\check_goto\Unit1.pas CursorX=13 CursorY=57 TopLine=64 LeftCol=1 [Watches] Count=0 [WatchWindow] WatchColumnWidth=100 WatchShowColumnHeaders=1 Create=1 Visible=0 State=0 Left=0 Top=138 Width=265 Height=638 MaxLeft=-1 MaxTop=-1 ClientWidth=257 ClientHeight=612 TBDockHeight=612 LRDockWidth=257 Dockable=1 [Breakpoints] Count=0 [AddressBreakpoints] Count=0 [Main Window] Create=1 Visible=1 State=0 Left=0 Top=0 Width=1280 Height=112 MaxLeft=-1 MaxTop=-1 ClientWidth=1272 ClientHeight=78 [ProjectManager] Create=1 Visible=0 State=0 Left=369 Top=372 Width=438 Height=303 MaxLeft=-1 MaxTop=-1 ClientWidth=430 ClientHeight=277 TBDockHeight=303 LRDockWidth=438 Dockable=1 [CPUWindow] Create=1 Visible=0 State=0 Left=96 Top=114 Width=959 Height=635 MaxLeft=-1 MaxTop=-1 ClientWidth=951 ClientHeight=601 DumpPane=79 DisassemblyPane=187 RegisterPane=231 FlagPane=64 [AlignmentPalette] Create=1 Visible=0 State=0 Left=200 Top=107 Width=156 Height=84 MaxLeft=-1 MaxTop=-1 ClientWidth=150 ClientHeight=60 [PropertyInspector] Create=1 Visible=1 State=0 Left=9 Top=203 Width=274 Height=559 MaxLeft=-1 MaxTop=-1 ClientWidth=266 ClientHeight=533 TBDockHeight=429 LRDockWidth=190 Dockable=1 SplitPos=144 ArrangeBy=Name SelectedItem=Name ExpandedItems= HiddenCategories= [ObjectTree] Create=1 Visible=0 State=0 Left=958 Top=125 Width=190 Height=669 MaxLeft=-1 MaxTop=-1 ClientWidth=182 ClientHeight=643 TBDockHeight=290 LRDockWidth=190 Dockable=1 [CodeExplorer@EditWindow0] Create=1 Visible=0 State=0 Left=0 Top=12 Width=140 Height=459 MaxLeft=-1 MaxTop=-1 ClientWidth=140 ClientHeight=459 TBDockHeight=305 LRDockWidth=140 Dockable=1 [MessageView@EditWindow0] Create=1 Visible=0 State=0 Left=-100 Top=-534 Width=443 Height=85 MaxLeft=-1 MaxTop=-1 ClientWidth=443 ClientHeight=85 TBDockHeight=85 LRDockWidth=443 Dockable=1 [DockHosts] DockHostCount=0 Приложение К object Form1: TForm1 Left = 320 Top = 139 Width = 520 Height = 500 Caption = #1055#1088#1086#1074#1077#1088#1082#1072' Goto' Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] OldCreateOrder = False PixelsPerInch = 96 TextHeight = 13 object lbRezultat: TLabel Left = 210 Top = 424 Width = 52 Height = 13 Caption = #1056#1077#1079#1091#1083#1100#1090#1072#1090 end object Memo1: TMemo Left = 8 Top = 48 Width = 497 Height = 353 ScrollBars = ssBoth TabOrder = 0 end object buOpen: TButton Left = 16 Top = 8 Width = 169 Height = 33 Caption = #1054#1090#1082#1088#1099#1090#1100' '#1092#1072#1081#1083 TabOrder = 1 OnClick = buOpenClick end object buProverka: TButton Left = 16 Top = 416 Width = 185 Height = 33 Caption = #1055#1088#1086#1074#1077#1088#1082#1072' Goto' TabOrder = 2 OnClick = buProverkaClick end object buClose: TButton Left = 365 Top = 8 Width = 137 Height = 33 Caption = #1042#1099#1093#1086#1076 TabOrder = 3 OnClick = buCloseClick end object odFile: TOpenDialog Filter = 'C++ '#1092#1072#1081#1083'|*.cpp' Left = 208 Top = 16 end end Приложение Л unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Memo1: TMemo; buOpen: TButton; buProverka: TButton; lbRezultat: TLabel; odFile: TOpenDialog; buClose: TButton; procedure buOpenClick(Sender: TObject); procedure buProverkaClick(Sender: TObject); procedure buCloseClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.buOpenClick(Sender: TObject); begin if odFile.Execute then begin Memo1.Lines.Clear; Memo1.Lines.LoadFromFile(odFile.FileName); lbRezultat.Caption:= ''; end; end; procedure TForm1.buProverkaClick(Sender: TObject); var sFile, sLabelName: string; i, iKol, j: integer; begin sFile:= Memo1.Lines.Text; if sFile<>'' then begin iKol:= 0; i:= pos('goto ', sFile); while i<>0 do begin delete(sFile, 1, i+4); i:= pos(';', sFile); j:= pos(#13, sFile); if ((j<>0)and(j<i))or(i=0) then begin lbRezultat.Caption:= 'Ошибка: Отсутсвует ;'; lbRezultat.Font.Color:= clRed; Exit; end; sLabelName:= copy(sFile, 1, i-1); if not (sLabelName[1] in ['A'..'Z', 'a'..'z'])then begin lbRezultat.Caption:= 'Ошибка: Неверное имя метки '+ sLabelName; lbRezultat.Font.Color:= clRed; Exit; end; for i:= 2 to length(sLabelName) do if not(sLabelName[i] in ['0'..'9', 'A'..'Z', 'a'..'z']) then begin lbRezultat.Caption:= 'Ошибка: Неверное имя метки '+ sLabelName; lbRezultat.Font.Color:= clRed; Exit; end; i:= pos(sLabelName+':' ,sFile); if i=0 then begin lbRezultat.Caption:= 'Ошибка: Отсутствует переход на метку '+ sLabelName; lbRezultat.Font.Color:= clRed; Exit; end; inc(iKol); i:= pos('goto ', sFile); end; if lbRezultat.Caption='' then begin lbRezultat.Caption:= 'Правильное задание '+ IntToStr(iKol)+ ' инструкций безусловного перехода'; lbRezultat.Font.Color:= clNavy; end; end; end; procedure TForm1.buCloseClick(Sender: TObject); begin Close; end; end.
Страницы: 1, 2
|