Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Текст программы. {4}Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,




 

{1}unit Unit1;

 

{2}interface

 

{3}uses

{4}Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

{5}Dialogs, StdCtrls, ExtCtrls, Printers, Menus;

 

{6}type

{7}TForm1 = class(TForm)

{8}Enter_edit: TEdit;

{9}Enter_button: TButton;

{10} Output_memo: TMemo;

{11} MainMenu1: TMainMenu;

{12} Mfile: TMenuItem;

{13} Msave: TMenuItem;

{14} Mprint: TMenuItem;

{15} Mexit: TMenuItem;

{16} N1: TMenuItem;

{17} N2: TMenuItem;

{18} N3: TMenuItem;

{19} procedure Enter_buttonClick(Sender: TObject);

{20} procedure Enter_editKeyPress(Sender: TObject; var Key: Char);

{21} procedure MsaveClick(Sender: TObject);

{22} procedure MprintClick(Sender: TObject);

{23} procedure MexitClick(Sender: TObject);

{24} procedure N2Click(Sender: TObject);

{25} procedure N3Click(Sender: TObject);

{26} private

{27} { Private declarations }

{28} public

{29} { Public declarations }

{30} end;

 

{31} var

{32} Form1: TForm1;

 

{33} implementation

 

{34} uses Unit2;

 

{35} {$R *.dfm}

 

{36} //Поиск делителей+

{37} procedure searchingDividers(chislo:integer; Memo:TMemo);

{38} var

{39} i:longint;

{40} ts:TStringList;

{41} d:byte;

{42} begin

{43} ts:= TStringList.Create;

{44} ts.Add('Поиск делителей числа ' + inttostr(chislo) + ': ');

{45} ts.Add('1');

{46} if (chislo=1) then

{47} begin

{48} Memo.Lines.AddStrings(ts);

{49} exit;

{50} end;

 

{51} if (chislo mod 2=0) then d:=2 else d:=3;

 

{52} for i:=2 to (chislo div d) do

{53} if (chislo mod i =0) then ts.Add(IntToStr(i));

{54} ts.Add(IntToStr(chislo));

{55} Memo.Lines.AddStrings(ts);

{56} end;

 

{57} //Вывод в файл+

{58} procedure OutToFile(m:TMemo);

{59} var

{60} path:string;

{61} SaveDialog:TSaveDialog;

{62} begin

{63} SaveDialog:= TSaveDialog.Create(form1);

{64} SaveDialog.InitialDir:=GetCurrentDir;

{65} SaveDialog.Filter:='Text Files|*.txt';

{66} if (SaveDialog.Execute)

{67} then path:=SaveDialog.FileName

{68} else exit;

{69} m.Lines.SaveToFile(path);

{70} end;

 

{71} //Вывод на печать+

{72} procedure OutToPrint(m:TMemo);

{73} var

{74} Prn: TextFile;

{75} i:integer;

{76} begin

{77} try

{78} AssignPrn(Prn);

{79} Rewrite(Prn);

{80} for i:=0 to (m.Lines.Count-1) do

{81} begin

{82} Write(Prn, m.Lines[i],' ');

{83} end;

{84} CloseFile(Prn);

{85} except

{86} ShowMessage('Вывод на печать невозможен.'+#13#10+'Проверьте подключен ли принтер.');

{87} end;

{88} end;

 

{89} //Обработчик события нажатия на кнопку 'Найти'+

{90} procedure TForm1.Enter_buttonClick(Sender: TObject);

{91} var

{92} chislo:longint;

{93} begin

 

{94} chislo:=1;

 

{95} try

{96} chislo:=StrToInt(Enter_edit.Text);

{97} except

{98} ShowMessage('Некорректно введено число.'+#13#10+'Введите число от 1 до 1млрд.');

{99} end;

 

{100} if (chislo<=0) or (chislo>10000) then

{101} begin

{102} ShowMessage('Некорректно введено число.'+#13#10+'Введите число от 1 до 1млрд.');

{103} exit;

{104} end;

 

{105} Output_memo.Clear;

{106} searchingDividers(chislo, Output_memo);

{107} end;

 

 

{108} //Контроль введеных символов в поле ввода+

{109} procedure TForm1.Enter_editKeyPress(Sender: TObject; var Key: Char);

{110} begin

{111} case Key of

{112} '0'..'9',#8:;

{113} #13:Enter_button.Click;

{114} else key:=Chr(0);

{115} end;

{116} if (Length(Enter_edit.Text)>4) and (key<>#8)

{117} then key:=Chr(0);

{118} end;

 

{119} //Пункт 'Файл/Сохранить' горизонтального меню+

{120} procedure TForm1.MsaveClick(Sender: TObject);

{121} begin

{122} OutToFile(Output_memo);

{123} end;

 

{124} //Пункт 'Файл/Печать' горизонтального меню+

{125} procedure TForm1.MprintClick(Sender: TObject);

{126} begin

{127} OutToPrint(Output_memo);

{128} end;

 

{129} //Пункт 'Файл/Выход' горизонтального меню+

{130} procedure TForm1.MexitClick(Sender: TObject);

{131} begin

{132} Application.Terminate;

{133} end;

 

 

{134} //Пункт 'Спрака/О программе' горизонтального меню+

{135} procedure TForm1.N2Click(Sender: TObject);

{136} var path:string;

{137} begin

{138} path:=GetCurrentDir;

{139} Form2.Memo1.Lines.LoadFromFile(path+'/info/spravka.txt');

{140} Form2.ShowModal;

{141} end;

 

{142} //Пункт 'Спрака/Об авторе' горизонтального меню

{143} procedure TForm1.N3Click(Sender: TObject);

{144} var path:string;

{145} begin

{146} path:=GetCurrentDir;

{147} Form2.Memo1.Lines.LoadFromFile(path+'/info/author.txt');

{148} Form2.ShowModal;

{149} end;

 

{150} end.

 


Приложение 4




Поделиться с друзьями:


Дата добавления: 2014-12-16; Просмотров: 383; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.