Компьютеры, программирование

  • 7741. Разработка программы обновления программного обеспечения
    Дипломная работа пополнение в коллекции 29.06.2011

    Посимвольное описание управляющей программыСимвол 1:НачалоСимвол 2:Множественный выбор: - если выбрано ввести, то переход к символу 3; - если выбрано добавить, то переход к символу 4; - если выбрано удалить, то переход к символу 5; - если изменить, то переход к символу 6; - если выбран учет входящих электронных писем, то переход к символу 7; - если выбрано сохранить, то переход к символу 8; - если выбрано отменить, то переход к символу 9; - если выбрано вывести, то переход к символу 10; - если выбрано печатать, то переход к символу 11. Символ 3:Вызов функции «Ввод»Символ 4:Вызов функции «Добавление»Символ 5:Вызов функции «Удаление»Символ 6:Вызов функции «Изменение»Символ 7:Вызов функции «Учет входящих электронных писем»Символ 8:Вызов функции «Сохранение»Символ 9:Вызов функции «Отмена»Символ 10:Вызов функции «Вывод»Символ 11:Вызов функции «Печать»Символ 12:Конец Посимвольное описание функции «Ввод»Символ 1:ВызовСимвол 2:Вызов функции «Загрузка данных из файла»Символ 3:Множественный выбор: - если выбрано добавить, то переход к символу 4; - если выбрано удалить, то переход к символу 5; - если изменить, то переход к символу 6; Символ 4: Вызов функции «Добавление»Символ 5:Вызов функции «Удаление»Символ 6:Вызов функции «Изменение»Символ 7:Возврат Посимвольное описание функции «Добавление»Символ 1:ВызовСимвол 2:Выбор: если введены все значения, то переход к символу 4, иначе к символу 3Символ 3:Вывод сообщения пользователю «Введены не все значения»Символ 4:Добавление строки в файлСимвол 5:ВозвратПосимвольное описание функции «Удаление» Символ 1: Вызов Символ 2: Вывод пользователю сообщения «Вы действительно хотите удалить файл?» Символ 3: Выбор: если выбрано «Ок», то переход к символу 4; если «Cancel», то переход к символу 8 Символ 4: Организация цикла. Параметр цикла i, диапазон от 1 до m (где m - количество введенных подключений), шаг 1 Символ 5: Выбор: если строка та, которую надо удалить, то переход к символу 6, иначе переход к символу 4 Символ 6: Вызов функции «Удаление» выбранной строки Символ 7: Сохранение изменений в файл Символ 8: Возврат Посимвольное описание функции «Изменение» Символ 1: Вызов Символ 2: Организация цакла. Параметр цикла i, диапазон от i до m (где m - количество записей о подключении), шаг 1 Символ 3: Выбор: если i-ая запись та, которую надо удалить, то переход к символу 4, иначе к символу 2 Символ 4: Выбор: если введены все значения для добавления новой записи, то осуществляется переход к символу 6, иначе к символу 5 Символ 5: Вывод пользователю сообщения «Введены не все значения» Символ 6: Вызов функции «Изменение данных в выбранной строке» Символ 7: Вызов функции «Сохрание в файл» Символ 8: Возврат Посимвольное описание функции «Учет входящих электронных писем» Символ 1: Вызов Символ 2: Организация цикла. Параметр цикла i, диапазон от 1 до m (m - количество строк подключений), шаг 1 Символ 3: Выбор: если установлена связь по i-ой строке, то осуществляется переход к символу 5, иначе к символу 4. Символ 4: Вывод пользователю сообщения «По i-ому адресу не установлена связь с сервером» Символ 5: Выбор: если количество сообщеиий не равно 0, то осуществляется переход к символу 7, иначе к символу 6 Символ 6: Вывод пользователю сообщения «В папке 0 сообщений» Символ 7: Организация цикла. Параметр цикла i, диапазон от 1 до n (где n - количество сообщений), шаг 1 Символ 8: Выбор: если дата, указанная в письме, удовлетворяет критериям фильтрации, то переход к символу 9, иначе к симолу 7 Символ 9: Вывод информации о входящем письме Символ 10: Возврат Посимвольное описание функции «Сохранение» Символ 1: Вызов Символ 2: Передача параметров - данных о письме Символ 3: Организация цикла. Выполнять, пока не закончились письма. Открытие цикла. Символ 4: Вывод данных о письме в программе Символ 5: Увеличить i на 1 (шаг 1) Символ 6: Параметр цикла i. Закрытие цикла Символ 7: Возврат Посимвольное описание функции «Вывод»Символ 1:ВходСимвол 2:Организация цикла. Параметр цикла i, диапазон от 1 до m (где m - количество писем), шаг 1Символ 3:Вывод данных о письмеСимвол 4:Возврат Посимвольное описание функции «Печать»Символ 1:ВходСимвол 2:Организация цикла. Параметр цикла i, диапазон от 1 до m (где m - количество писем), шаг 1Символ 3:Запись данных о письме в файлСимвол 4:Возврат 2. РАЗРАБОТКА ПРОГРАММЫ

  • 7742. Разработка программы обработки экономической информации
    Курсовой проект пополнение в коллекции 31.12.2010

    В данном документе описывается программа, написанная в соответствии с постановкой задачи на курсовое проектирование по теме "Обработка экономической информации" по дисциплине "Основы программирования и алгоритмические языки". Данная программа предназначена для удобной обработки информации, содержащей сведения о студентах, код группы, фамилия студента, количество пропущенных занятий и число оправданных пропусков, составления и вывода на экран и(или) в файл отчётных таблиц. Входными данными является таблица, записью которой являются код группы, фамилия студента, количество пропущенных занятий, количество оправданных пропусков, количество не оправданных пропусков, сумма не оправданных пропусков и процентное соотношение пропусков. Для проверки работы программы разработан тестовый пример. Результаты тестирования доказывают, что программа правильно выполняет все операции по обработке входных данных и формирования выходных данных.

  • 7743. Разработка программы определительных испытаний
    Курсовой проект пополнение в коллекции 27.03.2010

    АBСDE33Левая границаПравая границаЧастотаВероятности?²34Экспоненциальное распределение35808450,017616,329336849280,033120,294537929690,0156275,4446389610070,0150145,12293910010470,0144247,466340104108100,01385109,61664110811650,026118,55894211612050,0122927,001443Сумма349,834445Нормальное распределение46808450,03175,820147849280,15560,059048929690,13170,3576499610070,15460,31755010010470,15510,328051104108100,13310,86985210811650,15881,70575311612050,032815,441954Сумма14,899555Гамма-распределение56808450,03106,124357849280,16520,169758929690,13880,1927599610070,15760,37886010010470,15220,272961104108100,12651,19696210811650,14971,36856311612050,032815,442164Сумма15,145965 Равномерное распределение66808450,037274,071967849280,23001,852268929690,11501,0151699610070,11500,04827010010470,11500,048271104108100,11501,96437210811650,23004,82547311612050,04232,907074Сумма16,732475Критическое значение критерия16,74960237

  • 7744. Разработка программы поиска минимального пути в лабиринте
    Дипломная работа пополнение в коллекции 16.03.2012

    "ЯЗЫК, 1) естественный язык, важнейшее средство человеческого общения. Я. неразрывно связан с мышлением; является социальным средством хранения и передачи информации, одним из средств управления человеческим поведением. Я. возник одновременно с возникновением общества в процессе совместной трудовой деятельности первобытных людей. Возникновение членораздельной речи явилось мощным средством дальнейшего развития человека, общества и сознания. Реализуется и существует в речи. Я. мира различаются строением, словарным составом и др., однако всем Я. присущи некоторые общие закономерности, системная организация единиц языка (например, парадигматические и синтагматические отношения между ними) и др. Я. изменяется во времени (см. Диахрония), может перестать использоваться в сфере общения (мёртвые Я.). Разновидности Я. (нац. Я., лит. Я., диалекты, Я. культа и др.) играют различную роль в жизни общества. 2) Любая знаковая система, напр. Я. математики, кино, Я. жестов. См. также Искусственные языки, Язык программирования. 3)…"++ также является языком. Его так и называют "язык программирования C++". Это формальный язык. Он служит для описания данных и алгоритмов их обработки на ЭВМ.

  • 7745. Разработка программы построения графика линии регрессии
    Контрольная работа пополнение в коллекции 22.07.2011
  • 7746. Разработка программы представления табличных данных в виде диаграммы прямоугольников
    Контрольная работа пополнение в коллекции 15.06.2010

    Нажатием кнопки «Новый» производится создание нового типизированного (nrec) файла: выводится диалоговое окно с текстовым полем для имени файла, затем это имя устанавливается в соответствие файловой переменной (fdata). Файл открывается процедурой Rewrite, затем производится проверка на наличие ошибок при открытии файла. Если открытие было успешным, то флаг is_open присваивается значение true, становятся доступными элементы для ввода записей.

  • 7747. Разработка программы при помощи языка низкого уровня ассемблер
    Курсовой проект пополнение в коллекции 08.12.2009

    Программист или любой другой пользователь может использовать любые высокоуровневые средства, вплоть до программ построения виртуальных миров и, возможно, даже не подозревать, что на самом деле компьютер выполняет не команды языка, на котором написана его программа, а их трансформированное представление в форме скучной и унылой последовательности команд совсем другого языка машинного. А теперь представим, что у такого пользователя возникла нестандартная проблема или просто что-то не заладилось. К примеру, его программа должна работать с некоторым необычным устройством или выполнять другие действия, требующие знания принципов работы аппаратуры компьютера. И вот здесь-то и начинается совсем другая история.... Каким бы умным ни был программист, каким бы хорошим ни был язык, на котором он написал свою чудную программу, без знания ассемблера ему не обойтись. И не случайно практически все компиляторы языков высокого уровня содержат средства связи своих модулей с модулями на ассемблере либо поддерживают выход на ассемблерный уровень программирования.

  • 7748. Разработка программы при помощи языка программирования языка Delphi
    Курсовой проект пополнение в коллекции 14.02.2011

     

    1. unit Unit1;
    2. interface
    3. uses
    4. Windows, Messages, SysUtils, Variants, Classes, Graphics,
    5. Controls, Forms,Dialogs, Menus, StdCtrls, Buttons, ExtCtrls,
    6. Grids;
    7. type
    8. TForm1 = class(TForm)
    9. MainMenu1: TMainMenu;
    10. N1: TMenuItem;
    11. NOpen: TMenuItem;
    12. NSave: TMenuItem;
    13. NSaveAs: TMenuItem;
    14. NCreate: TMenuItem;
    15. N6: TMenuItem;
    16. NExit: TMenuItem;
    17. NInfo: TMenuItem;
    18. NShow: TMenuItem;
    19. SaveDlg: TSaveDialog;
    20. OpenDlg: TOpenDialog;
    21. Label1: TLabel;
    22. Label2: TLabel;
    23. Label3: TLabel;
    24. Label4: TLabel;
    25. Label9: TLabel;
    26. EHDD: TEdit;
    27. ERAM: TEdit;
    28. EMonitor: TEdit;
    29. RGrInet: TRadioGroup;
    30. EName: TEdit;
    31. SGrid1: TStringGrid;
    32. BBPrev: TBitBtn;
    33. BBNext: TBitBtn;
    34. BBDelete: TBitBtn;
    35. BBAdd: TBitBtn;
    36. BBUpdate: TBitBtn;
    37. BBSearch: TBitBtn;
    38. procedure FormCreate(Sender: TObject);
    39. procedure NCreateClick(Sender: TObject);
    40. procedure NOpenClick(Sender: TObject);
    41. procedure NShowClick(Sender: TObject);
    42. procedure NSaveClick(Sender: TObject);
    43. procedure NSaveAsClick(Sender: TObject);
    44. procedure NExitClick(Sender: TObject);
    45. procedure NInfoClick(Sender: TObject);
    46. procedure BBPrevClick(Sender: TObject);
    47. procedure BBNextClick(Sender: TObject);
    48. procedure BBUpdateClick(Sender: TObject);
    49. procedure BBAddClick(Sender: TObject);
    50. procedure BBDeleteClick(Sender: TObject);
    51. procedure BBSearchClick(Sender: TObject);
    52. private
    53. { Private declarations }
    54. public
    55. { Public declarations }
    56. end;
    57. TComp = record
    58. Name:string[20];
    59. HDD:real;
    60. RAM:integer;
    61. Monitor:string[20];
    62. Inet:boolean; {true - есть, false - нет}
    63. end;
    64. ATComp = array of TComp;
    65. var
    66. Form1: TForm1;
    67. F:file of TComp;
    68. Comp:TComp;
    69. AComp:ATComp;
    70. CurK:integer;
    71. Fname:string;
    72. implementation
    73. uses Unit2;
    74. {$R *.dfm}
    75. // поиск компьютера по имени
    76. Function GetComp(name:string;AComp:ATComp;var Comp:TComp):boolean;
    77. var i:integer;
    78. begin
    79. for i:=0 to Length(AComp)-1 do
    80. if AComp[i].Name = Name then
    81. begin
    82. Comp:=AComp[i];
    83. GetComp:=true;
    84. exit;
    85. end;
    86. GetComp:=false;
    87. end;
    88. // вывод информации об одном компьютерера из типизированного файла на экранную форму
    89. Procedure ShowComp(Comp:TComp);
    90. begin
    91. Form1.EName.Text:=Comp.Name;
    92. Form1.EHDD.Text:=FloatToStr(Comp.HDD);
    93. Form1.ERAM.Text:=IntToStr(Comp.RAM);
    94. if Comp.Inet then
    95. Form1.RgrInet.ItemIndex := 1
    96. else
    97. Form1.RgrInet.ItemIndex:=0;
    98. Form1.EMonitor.Text:=Comp.Monitor;
    99. end;
    100. // вывод информации о компьютере из типизированного файла в таблицу
    101. Procedure ShowCompInGrid(Comp:TComp;Sgr:TStringGrid;Row:integer);
    102. begin
    103. Sgr.Cells[0,Row]:=IntToStr(Row);
    104. Sgr.Cells[1,Row]:=Comp.Name;
    105. Sgr.Cells[2,Row]:=FloatToStr(Comp.HDD);
    106. Sgr.Cells[3,Row]:=IntToStr(Comp.RAM);
    107. Sgr.Cells[4,Row]:=Comp.Monitor;
    108. if Comp.Inet then
    109. Sgr.Cells[5,Row]:='есть'
    110. else
    111. Sgr.Cells[5,Row]:='нет';
    112. end;
    113. // вывод содержимого массива FComp в таблицу
    114. Procedure ShowAComp(AComp:ATComp;Sgr:TStringGrid);
    115. var i,ln:integer;
    116. begin
    117. ln:=Length(AComp);
    118. if ln = 0 then
    119. Sgr.RowCount:=2
    120. else
    121. Sgr.RowCount:=ln+1;
    122. SGr.FixedRows:=1;
    123. for i:=0 to LN-1 do
    124. ShowCompInGrid(AComp[i],Sgr,i+1);
    125. end;
    126. // добавление новой записи в массив
    127. procedure TForm1.BBAddClick(Sender: TObject);
    128. var
    129. k:integer;
    130. begin
    131. Comp.Name:=EName.Text;
    132. Comp.HDD:=StrToFloat(EHDD.Text);
    133. Comp.RAM:=StrToInt(ERAM.Text);
    134. Comp.Monitor:=EMonitor.Text;
    135. Comp.Inet:=RgrInet.ItemIndex = 1;
    136. //
    137. if GetComp(Comp.Name,AComp,Comp) then
    138. begin
    139. MessageBox(0,PAnsiChar(String('Ошибка! Запись компьютера с именем '+Comp.Name+' уже существует!')),'Ошибка',0);
    140. exit;
    141. end;
    142. k:=Length(AComp);
    143. SetLength(AComp,k+1);
    144. AComp[k]:=Comp;
    145. CurK:=k;
    146. ShowAComp(AComp,SGrid1);
    147. end;
    148. // переход на предыдущую запись массива
    149. procedure TForm1.BBPrevClick(Sender: TObject);
    150. begin
    151. curK:=CurK-1;
    152. if CurK<0 then CurK:=Length(AComp)-1;
    153. if CurK < Length(AComp) then
    154. ShowComp(AComp[CurK]);
    155. end;
    156. // переход на последующую запись массива
    157. procedure TForm1.BBNextClick(Sender: TObject);
    158. begin
    159. curK:=CurK+1;
    160. if CurK>=Length(AComp) then CurK:=0;
    161. if CurK < Length(AComp) then
    162. ShowComp(AComp[CurK]);
    163. end;
    164. // сохранение содержимого массива в типизированном файле
    165. procedure TForm1.NSaveClick(Sender: TObject);
    166. var i:integer;
    167. begin
    168. if Fname = '' then
    169. MessageBox(0,'Имя файла не задано!','Ошибка',0)
    170. else begin
    171. AssignFile(F,Fname);
    172. Rewrite(f);
    173. for i:=0 to Length(AComp)-1 do
    174. write(f,AComp[i]);
    175. CloseFile(F);
    176. end;
    177. end;
    178. // сохранение в содержимого массива в типизированном файле
    179. // с возможностью указания имени файла
    180. procedure TForm1.NSaveAsClick(Sender: TObject);
    181. var i:integer;
    182. begin
    183. if SaveDlg.Execute then
    184. begin
    185. Fname:=SaveDlg.FileName;
    186. AssignFile(F,Fname);
    187. Rewrite(f);
    188. for i:=0 to Length(AComp)-1 do
    189. write(f,AComp[i]);
    190. CloseFile(F);
    191. end;
    192. end;
    193. // открытие типизированного файла и вывод его содержимого на форму
    194. procedure TForm1.NOpenClick(Sender: TObject);
    195. var K:integer;
    196. begin
    197. if OpenDlg.Execute then
    198. begin
    199. Fname:=OpenDlg.FileName;
    200. AssignFile(F,Fname);
    201. ReSet(f);
    202. k:=0;
    203. SetLength(AComp,0);
    204. while not eof(f) do
    205. begin
    206. read(f,Comp);
    207. SetLength(AComp,k+1);
    208. AComp[k]:=Comp;
    209. k:=k+1;
    210. end;
    211. CloseFile(F);
    212. ShowAComp(AComp,SGRid1);
    213. end;
    214. end;
    215. // удаление текущей записи из массива записей AComp
    216. procedure TForm1.BBDeleteClick(Sender: TObject);
    217. var i,Ln:integer;
    218. begin
    219. Ln:=Length(AComp);
    220. for i:=CurK to Ln-2 do
    221. AComp[i]:=AComp[i+1];
    222. if Ln>0 then
    223. SetLength(AComp,Ln-1);
    224. if CurK<ln then
    225. ShowComp(AComp[CurK]);
    226. ShowAComp(AComp,SGrid1);
    227. end;
    228. // Создание нового массива записей
    229. procedure TForm1.NCreateClick(Sender: TObject);
    230. begin
    231. CurK:=0;
    232. SetLength(AComp,0);
    233. Fname:='';
    234. ShowAComp(AComp,SGrid1);
    235. end;
    236. // созание формы - формирование шапки таблицы
    237. procedure TForm1.FormCreate(Sender: TObject);
    238. begin
    239. SGrid1.Cells[0,0]:='№ п/п';
    240. SGrid1.Cells[1,0]:='Имя ПК';
    241. SGrid1.Cells[2,0]:='Объём памяти';
    242. SGrid1.Cells[3,0]:='Объём ОП';
    243. SGrid1.Cells[4,0]:='Тип монитора';
    244. SGrid1.Cells[5,0]:='Подключение к Internet';
    245. end;
  • 7749. Разработка программы приема и передачи сообщений в локальной сети Microsoft
    Дипломная работа пополнение в коллекции 15.06.2010

    Ниже перечислю команды отладчика:

    • Run. Выбор этой команды запускает приложение на выполнение в обычном режиме. Эту команду можно использовать как для запуска приложения, так и для продолжения его работы после какого-либо прерывания выполнения (например, по точке останова). Если включена опция Break on Exception, необходимо использовать команду для продолжения работы после получения сообщения об исключительной ситуации.
    • Step Over. Когда точка выполнения находится на строке содержащей вызов процедуры или функции, необходимо использовать эту команду для выполнения строки, включая вызовы в один шаг, без прохождения отдельных строк вызываемых функций. Точка выполнения перемещается при выполнении на следующую строку.
    • Trace Into. В отличие от предыдущей команды, эта опция отработает пошаговую отладку вызываемых процедур и функций. Другими словами, если, например, в строке вызывается некая процедура, то при выполнении этой команды точка выполнения перейдет на первую строку процедуры. Однако если в строке нет таких вызовов, значит, последние две команды идентичны. Но, необходимо соблюдать осторожность при пошаговой трассировке обработчика события OnPaint требуется перерисовка окна приложения, для чего вызывается обработчик события OnPaint. Получается бесконечный цикл вызовов одного и того же обработчика. Тем не менее, стоит лишь проследить, чтобы окна приложения и редактора не перекрывались.
    • Trace to Next Source Line. Иногда код вызывает другой код косвенно, например, при вызове функции, которая запускает обработчик события, или при вызове функции Windows API, которая, в свою очередь, запускает функцию косвенного вызова. Поскольку такие вызовы косвенные, отладчик не видит вызова и не отслеживает пошагового выполнения таких вызовов. Однако использование описываемой команды приводит к отслеживанию таких вызовов и останову отладчика на первой строке вызываемой таким образом функции или процедуры.
    • Run to Cursor. Очень часто невозможно в поисках ошибки, местоположение которой с какой-то точностью известно, пошагово добираться до нужного места через сотни, а то и тысячи строк кода. В таком случае можно просто поместить курсор на нужную строку программы в окне редактирования и используйте команду Run to Cursor. Эти действия эквивалентны временному помещению точки останова в необходимую строку программы, и после выполнения предшествующего строке кода работа программы приостанавливается.
    • Show Execution Point. Эта команда заставляет среду разработки открыть окно редактора и показать выполняемую в настоящее время строку программы.
    • Program Pause. Выбор этой команды немедленно останавливает выполнение программы. Команда особенно полезна при зацикливании программы.
    • Program Reset. Команда немедленно прекратит выполнение программы и произойдет возврат в среду разработчика.
  • 7750. Разработка программы психотестирования
    Информация пополнение в коллекции 12.01.2009

    Здесь, на фоне неба как-бы «висят» названия тестов. При движении курсора мышки по кнопке, она приподнимается над общим фоном, как показано на рис. 1.1 Щелкнув левой кнопкой мыши, тестируемый выбирает интересующий его тест и попадает в окно тестирования, показанное на рис. 1. 2, стр. 10. Чтобы ответить на вопрос, достаточно щелкнуть на правильном с точки зрения пользователя варианте ответа (при этом все варианты тут-же заблокируются и станет доступной кнопка «Далее»). Для перехода к следующему вопросу надо нажать кнопку «Далее».

  • 7751. Разработка программы расчета определенного интеграла по формуле Буля по схеме двойного пересчета с з...
    Курсовой проект пополнение в коллекции 09.12.2008

    Стремительное развитие науки и техники, в том числе и вычислительной, требует знания её от каждого, считающего себя образованным, человека. Из-за всё возрастающей сложности многих объектов требуется улучшенная организация процесса программного моделирования и высокая степень образованности специалистов, а повышение требований к функционированию этих объектов делают нашу задачу еще более сложной. Для решения этой задачи применяется математическое моделирование, которое осуществляется опять же с помощью вычислительной техники, в частности компьютера.

  • 7752. Разработка программы расчета определенного интеграла по формуле Буля по схеме двойного пересчета с заданной точностью
    Информация пополнение в коллекции 12.01.2009

    Стремительное развитие науки и техники, в том числе и вычислительной, требует знания её от каждого, считающего себя образованным, человека. Из-за всё возрастающей сложности многих объектов требуется улучшенная организация процесса программного моделирования и высокая степень образованности специалистов, а повышение требований к функционированию этих объектов делают нашу задачу еще более сложной. Для решения этой задачи применяется математическое моделирование, которое осуществляется опять же с помощью вычислительной техники, в частности компьютера.

  • 7753. Разработка программы реализующей эмуляцию упругого столкновения мячей
    Контрольная работа пополнение в коллекции 15.09.2012

    =0)%20then%20begin[num]:=TBall.Create(rad,col,dx,dy,x,y);:=num+1;:=true;:=false;;Tballs.del(n:integer):boolean;i:integer;(n<num)and(n>=0)%20then%20begin[n].Destroy;i:=n%20to%20num-2%20do[i]:=Balls[i+1];:=num-1;:=true;:=false;">_dy := dy;;TBall.Destroy;;;TBalls.Create;:=0;;TBalls.Destroy;i:integer;i:=0 to num-1 do[i].Destroy;;;TBalls.GetData(i:integer):TBall;:=Balls[i];;TBalls.SetData(i:integer; Value:TBall);[i]:=Value;;Tballs.Add(x,y,dx,dy,col,rad:integer):boolean;(num<101)and(num>=0) then begin[num]:=TBall.Create(rad,col,dx,dy,x,y);:=num+1;:=true;:=false;;Tballs.del(n:integer):boolean;i:integer;(n<num)and(n>=0) then begin[n].Destroy;i:=n to num-2 do[i]:=Balls[i+1];:=num-1;:=true;:=false;

  • 7754. Разработка программы регистрации доступа клиентов в базу данных с конфиденциальной информацией
    Дипломная работа пополнение в коллекции 06.06.2012

    Интерфейс DB-LIB представляет собой специально предназначенный для SQL интерфейс прикладных программ. Поэтому он является наименее мобильным из числа рассматриваемых в смысле возможностей переноса приложений в другую среду. С точки зрения производительности этот способ позволяет осуществить самый быстрый доступ к информации. Причиной этого является то, что он представляет оптимизированный интерфейс прикладного программирования и непосредственно использует язык запросов системы SQL. Технологии ODBC предназначены для обеспечения возможности взаимосвязи между различными СУБД и получения от приложения запросов на выборку информации, перевод их на язык ядра адресуемой базы данных для доступа хранимой в ней информации. Основное назначение ODBC состоит в абстрагировании приложения от особенностей ядра серверной базы данных, с которой оно осуществляет взаимодействие, поэтому серверная база данных становится как бы прозрачной для любого клиентского приложения. Достоинством этой технологии является простота разработки приложений, обусловленная высоким уровнем абстрактности интерфейса доступа к данным практически любых существующих типов СУБД. Используя эту технологию, можно создавать клиент-серверные приложения, причем средствами персональных СУБД целесообразно разрабатывать клиентскую часть приложения, а средствами SQL - серверную часть.Основной недостаток технологии ODBC связан с необходимостью трансляции запросов, что снижает скорость доступа к данным. В системах клиент-сервер этот недостаток устраняется путем перемещения запроса с компьютера-клиента на компьютер-сервер. При этом устраняются промежуточные звенья, являющиеся основной причиной снижения скорости обработки информации с использованием средств рассматриваемой технологии. При использовании в клиентском приложении средств ODBC осуществляется обращение к определенному источнику данных, а через него - к СУБД, которую он представляет. При установке средств ODBC устанавливается общая подсистема ODBC и определяются пары «драйвер-база данных», которым задаются имена, используемые при установке соединения с. базой данных. Соответствующие пары называются поименованными источниками данных.Каждый поименованный источник данных описывает собственно источник данных и информацию о доступе к этим данным. В качестве данных могут выступать базы данных, электронные таблицы и текстовые файлы. Информация о доступе, например, к серверу баз данных, обычно включает в себя сведения о размещении сервера, имя базы данных, идентификатор учетной записи и пароль, а также различные параметры драйвера, описывающие как устанавливать соединение с источником данных. При обработке данных на сервере с использованием технологии ODBC и применением клиентского приложения выделяются два основных этапа: задание источника данных - создание и настройка соединения, а также собственно обработка данных с помощью запросов. Интерфейс OLE DB рекомендуется использовать для создания средств и утилит, или разработок системного уровня, нуждающихся в высокой производительности или доступе к SQL свойствам, недоступные с помощью технологии ADO. Основные возможности спецификации OLE DB обеспечивают полную функциональность доступа к данным. В SQL процессор баз данных сервера использует это интерфейс для связи: между внутренними компонентами, таким как процессор хранения и процессор отношений; между установками SQL при использовании удаленных хранимых процедур; как интерфейс к другим источникам данных для распределенных запросов. При использовании технологии ОАО работа с базами данных, таблицами ведется с использованием коллекций объектов. При этом обеспечиваются большие удобства в работе с объектами баз данных.В настоящее время технология ОАО постепенно вытесняется технологией ADO, которая позволяет разрабатывать приложения Web для работы с базами данных. В целом технологию ADO можно охарактеризовать как наиболее современную технологию разработки приложений для работы с распределенными базами технологии клиент-сервер.

  • 7755. Разработка программы решения системы линейных уравнений
    Курсовой проект пополнение в коллекции 18.07.2010

    Естественно и часто очень удобно группировать однотипные данные в последовательности - массивы, строки символов, объединять разнотипные данные в одном и том же объекте в виде записей. Значительное удобство представляются пользователю в Паскале при организации однотипных величин в виде множества с соответствующим набором операций: объединения, пересечения и т.д. Последовательность однотипных величин переменной длины можно представить в Паскале в виде файла данных и хранить на внешних носителях, используя его в разных программах.

  • 7756. Разработка программы рисования замкнутых многоугольников на языке С++, с использованием библиотеки VCL
    Курсовой проект пополнение в коллекции 13.10.2010

    Класс имеет несколько закрытых переменных для хранения значений количества углов, размера, координат центра и точки вращения, а также угла, на который повернут многоугольник относительно точки вращения. Далее идет вполне стандартное описание конструкторов и необходимых нам функций, предназначение большинства из них не вызывает вопросов, т.к они являются обычными геттерами и сеттерами, которые возвращают нам значения закрытых переменных. Интересной для рассмотрения является функция getPoint (), возвращающая указатель на массив типа TPoint, хранящий в себе массив точек (вершин), многоугольника. Рассмотрим ее реализацию:

  • 7757. Разработка программы рисования линий с помощью мыши
    Реферат пополнение в коллекции 09.12.2008

  • 7758. Разработка программы с помощью языка программирования Delphi
    Курсовой проект пополнение в коллекции 24.02.2011

    Модуль формы тестирования

    1. unit Unit1;
    2. interface
    3. uses
    4. Windows, Messages, SysUtils, Variants, Classes, Graphics,
    5. Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Buttons;
    6. type
    7. TFormTest = class(TForm)
    8. BitBtn1: TBitBtn;
    9. Label1: TLabel;
    10. LbNom: TLabel;
    11. StaticText1: TStaticText;
    12. RGroup1: TRadioGroup;
    13. BNewTest: TButton;
    14. procedure FormCreate (Sender: TObject);
    15. procedure BitBtn1Click (Sender: TObject);
    16. procedure BNewTestClick (Sender: TObject);
    17. procedure FormClose (Sender: TObject; var Action: TCloseAction);
    18. procedure FormActivate (Sender: TObject);
    19. private
    20. {Private declarations}
    21. public
    22. {Public declarations}
    23. end;
    24. TTest = record
    25. vopr:string;// вопрос
    26. ans:array [0..3] of string;// ответы
    27. korans:byte;// номер правильного ответа
    28. end;
    29. CVoprosi = class
    30. test: array of TTest;
    31. procedure AddTest (_vopr,_ans0,_ans1,_ans2,_ans3:string;_korans:byte);
    32. procedure Mix;
    33. end;
    34. var
    35. SFam, Sgr:string;// фамилия и группа учащегося
    36. fName:string;
    37. f: TEXTFILE;
    38. FormTest: TFormTest;
    39. BasaV:CVoprosi;
    40. CurN:byte;// номер текущего вопроса
    41. Ratio:byte;// количество правильных ответов
    42. implementation
    43. uses Unit2;
    44. {$R *.dfm}
    45. // метод для добавления нового теста в базу
    46. Procedure CVoprosi. AddTest (_vopr,_ans0,_ans1,_ans2,_ans3:string; _korans:byte);
    47. var ln:integer;
    48. begin
    49. ln:=Length(test);
    50. SetLength (test, ln+1);
    51. test[ln].vopr:= _vopr;
    52. test[ln].ans[0]:= _ans0;
    53. test[ln].ans[1]:= _ans1;
    54. test[ln].ans[2]:= _ans2;
    55. test[ln].ans[3]:= _ans3;
    56. test[ln].korans:= _korans;
    57. end;
    58. // перемешивание базы вопросов
    59. Procedure CVoprosi. Mix;
    60. var
    61. i, i1, i2, ln:byte;
    62. TestTmp:TTest;
    63. begin
    64. ln:=Length(test);
    65. for i:=1 to 20 do
    66. begin
    67. i1:=Random(ln);// случайный №1
    68. i2:=Random(ln);// случайный №2
    69. // меняем местами вопросы №1 и №2
    70. TestTmp:=test[i1];
    71. test[i1]:=test[i2];
    72. test[i2]:=TestTmp;
    73. end;
    74. end;
    75. procedure TFormTest. FormCreate (Sender: TObject);
    76. begin
    77. // формирование базы вопросов
    78. BasaV:=CVoprosi. Create;
    79. BasaV. AddTest ('Что выведет следующая программа?'+#10+#13+'var i, sum:sіnglе;'+#10+#13+
    80. 'bеgin'+#10+'sum:=1;'+#10+
    81. ' for і:=2 to 10 dо sum:=sum+i;'+#10+
    82. ' WrіtеLn(sum);'+#10+'еnd.',
    83. '10', '55', '9', 'произойдет ошибка компиляции', 3);
    84. BasaV. AddTest ('Какое значение вернет выражение?'+#10+' chr (ord(«A»)+3)',
    85. 'A3', '68', ' «D» ', ' «C» ', 2);
    86. BasaV. AddTest ('С чего не может начинаться идентификатор?',
    87. 'с малой латинской буквы', 'с большой латинской буквы', 'с подчеркивания', 'с цифры', 3);
    88. BasaV. AddTest ('Что из нижеперечисленного может быть использовано как идентификатор?',
    89. 'ord', 'for1', 'cardinal', 'C#21', 1);
    90. BasaV. AddTest ('Какой из приведенных типов целочисленный?',
    91. 'real', 'byte', 'double', 'single', 1);
    92. BasaV. AddTest ('Какой из приведенных типов можно использовать для хранения дробных чисел?',
    93. 'byte', 'word', 'double', 'integer', 2);
    94. BasaV. AddTest ('Какая из приведенных инструкций является циклом с заданным числом повторений?',
    95. 'while <…> do ', 'for <…> do ', 'repeat until <…>', 'if <> then ', 1);
    96. BasaV. AddTest ('Какая из приведенных инструкций является циклом с предусловием?',
    97. 'for <…> do ', 'while <…> do ', 'repeat until <…>', 'if <> then ', 1);
    98. BasaV. AddTest ('Какая из приведенных инструкций является циклом с постусловием?',
    99. 'for <…> do ', 'while <…> do ', 'repeat until <…>', 'if <> then ', 2);
    100. BasaV. AddTest ('Какая из приведенных инструкций является инструкцией ветвления?',
    101. 'for <…> do ', 'while <…> do ', 'repeat until <…>', 'if <> then ', 3);
    102. BasaV. AddTest ('Какая из приведенных инструкций целочисленного деления?',
    103. 'MOD', 'DIV', '/', 'ODD', 1);
    104. BasaV. AddTest ('Какая из приведенных инструкций остаток от деления?',
    105. 'MOD', 'DIV', '/', 'ODD', 0);
    106. BasaV. AddTest ('Какая из приведенных инструкций вещественного деления?',
    107. 'MOD', 'DIV', '/', 'ODD', 2);
    108. BasaV. AddTest ('Какая из приведенных инструкций проверка на четность?',
    109. 'MOD', 'DIV', '/', 'ODD', 3);
    110. BasaV. AddTest ('Укажите функцию округления по правилам арифметики:',
    111. 'TRUNC()', 'FRAC()', 'ROUND()', 'INT()', 2);
    112. BasaV. AddTest ('Укажите функцию выделения дробной части числа:',
    113. 'TRUNC()', 'FRAC()', 'ROUND()', 'INT()', 1);
    114. BasaV. AddTest ('Укажите функцию округления к нулю с целочисленным результатом:',
    115. 'TRUNC()', 'FRAC()', 'ROUND()', 'INT()', 0);
    116. BasaV. AddTest ('Укажите функцию округления к нулю с вещественным результатом:',
    117. 'TRUNC()', 'FRAC()', 'ROUND()', 'INT()', 3);
    118. BasaV. AddTest ('Укажите функцию открытия существующего файла:',
    119. 'ASSIGNFILE()', 'REWRITE()', 'RESET()', 'CLOSEFILE()', 2);
    120. BasaV. AddTest ('Укажите функцию создания нового файла и открытия его для записи:',
    121. 'ASSIGNFILE()', 'REWRITE()', 'RESET()', 'CLOSEFILE()', 1);
    122. randomize;
    123. end;
    124. // ***************************
    125. // активизация формы с тестами
    126. // ***************************
    127. procedure TFormTest. FormActivate (Sender: TObject);
    128. var ln:integer;
    129. begin
    130. fName:=SFam+' ('+SGr+')'+'.txt';
    131. assignfile (f, fName);
    132. rewrite(f);
    133. BNewTest. Visible:=false;
    134. // перемешивание базы вопросов
    135. BasaV. Mix;
    136. // количество правильных ответов
    137. Ratio:=0;
    138. // текущий вопрос 0
    139. curN:=0;
    140. // отображаем первый вопрос на форме
    141. StaticText1. Caption:=BasaV.test[curN].vopr;
    142. RGroup1. Items[0]:=BasaV.test[curN].ans[0];
    143. RGroup1. Items[1]:=BasaV.test[curN].ans[1];
    144. RGroup1. Items[2]:=BasaV.test[curN].ans[2];
    145. RGroup1. Items[3]:=BasaV.test[curN].ans[3];
    146. RGroup1. ItemIndex:=0;
    147. Ln:=Length (BasaV.test);
    148. LbNom. Caption:= IntToStr (curN+1) + ' из ' + IntToStr(Ln);
    149. end;
    150. // ***************************
    151. // обработчик нажатия на кнопку «Принять ответ»
    152. // ***************************
    153. procedure TFormTest. BitBtn1Click (Sender: TObject);
    154. var
    155. sRes, S:string;
    156. ln:byte;
    157. begin
    158. // проверка ответа
    159. Ln:=Length (BasaV.test);
    160. if (CurN<ln) then
    161. begin
    162. // записываем лог ответов в файл
    163. S:= BasaV.test[curN].vopr + ' (ответил: '+
    164. BasaV.test[curN].ans [RGroup1. ItemIndex]+')';
    165. writeln (f, S);
    166. // проверяем, правильно ли был сделан ответ
    167. if (RGroup1. ItemIndex = BasaV.test[curN].Korans) then
    168. Ratio:= Ratio +1;
    169. CurN:=CurN+1;
    170. if CurN=ln then// была последняя запись
    171. begin
    172. // сообщение с результатом
    173. sRes:= 'Итоговая оценка: '+FloatToStr (Ratio*12/ln);
    174. // запись результа в файл
    175. writeln (f, Sfam+Sgr);
    176. writeln (f, sRes);
    177. CloseFile(f);
    178. end;
    179. end;
    180. if CurN>=ln then
    181. begin
    182. sRes:= 'Итоговая оценка: '+FloatToStr (Ratio*12/ln);
    183. Application. MessageBox (PAnsiChar(sRes), PAnsiChar (SFam+Sgr));
    184. BNewtest. Visible:=true;
    185. exit;
    186. end;
    187. // отображаем следующий вопрос на форме
    188. StaticText1. Caption:=BasaV.test[curN].vopr;
    189. RGroup1. Items[0]:=BasaV.test[curN].ans[0];
    190. RGroup1. Items[1]:=BasaV.test[curN].ans[1];
    191. RGroup1. Items[2]:=BasaV.test[curN].ans[2];
    192. RGroup1. Items[3]:=BasaV.test[curN].ans[3];
    193. RGroup1. ItemIndex:=0;
    194. LbNom. Caption:= IntToStr (curN+1) + ' из ' + IntToStr(Ln);
    195. end;
    196. // ***************************
    197. // закрыте формы с тестами
    198. // ***************************
    199. procedure TFormTest.BNewTestClick (Sender: TObject);
    200. begin
    201. Close;
    202. end;
    203. // ***************************
    204. // активизация формы с авторизации
    205. // ***************************
    206. procedure TFormTest. FormClose (Sender: TObject; var Action: TCloseAction);
    207. begin
    208. FormAvto. Show;
    209. end;
    210. end.
  • 7759. Разработка программы сжатия и восстановления файлов с помощью фиксированного блочного кода постоянного смещения
    Курсовой проект пополнение в коллекции 20.12.2010

    Краткое описание работы приложения:

    1. При нажатии кнопки Button1 “Считать для сжатия” происходит получение имени считываемого файла и пути до него. Измеряется размер файла (функция FileSize). Полностью очищаются Label.
    2. При нажатии кнопки Button2 “Проверить” происходит обнуление всех необходимых для работы переменных. Запускается процесс считывания (по-байтово) и анализа сжимаемого файла, в результате которого высчитывается средняя длинна кодового слова. Она необходима для определения возможности сжатия. В зависимости от полученного результата выводится сообщение о том, что файл можно сжимать, в противном случае, что нельзя. Так же формируется массив частот повторений символов в файле, необходимый для соотнесения кодовых слов и символов в файле.
    3. При нажатии Button3 “Сжать” происходит побайтовое считывание сжимаемого файла с помощью команды BlockRead. Далее происходит соотнесение считанного байта кодовому слову. Алгоритм соотнесения основан на частоте появлений символов в файле. Чем чаще данный символ встречается в файле, тем меньшей длинны ему присваивается кодовое слово. Запись нового файла производится с помощью команды BlockWrite так же по-байтово. Новому файлу присваивается новое расширение. Когда файл полностью считан, выполняется проверка на наличие оставшихся битов. Если таковые имеются, то пустое пространство забивается нулями до тех пор, пока количество битов не будет равно 8.
    4. При нажатии Button4 “Считать для восстановления” происходит получение имени сжатого файла, пути до него.
    5. При нажатии Button5 “Восстановить" происходит побайтового считывание файла. Алгоритм разжатия состоит из двух этапов. На первом этапе происходит считывание файла блоками размером в 1 байт. Производится запись считанных байтов в специальную переменную. Когда длина переменной составляет 16 символов или более, начинается анализ считанной информации. Производится проверка на соответствие кодовым словам и последующая запись полученных значений в новый файл. На втором этапе производится проверка на остаток и удаление лишних данных (случай, когда было выполнено дополнение нулями при сжатии).
  • 7760. Разработка программы создания виртуальной фотогалереи
    Курсовой проект пополнение в коллекции 06.06.2012

    -12)%20and%20(tx>0)%20and%20(tx<8)begin%20form3.number:=16;%20showimage(form3.number);%20end;(ty>-9)%20and%20(ty<-3)%20and%20(tx>3)%20and%20(tx<12)begin%20form3.number:=12;%20showimage(form3.number);%20end;(ty>-3)%20and%20(ty<4)%20and%20(tx>3)%20and%20(tx<12)begin%20form3.number:=11;%20showimage(form3.number);%20end;(ty>4)%20and%20(ty<12)%20and%20(tx>3)%20and%20(tx<12)begin%20form3.number:=10;%20showimage(form3.number);%20end;(ty<-6)%20and%20(ty>-12)%20and%20(tx>-8)%20and%20(tx<0)begin%20form3.number:=17;%20showimage(form3.number);%20end;(ty>-9)%20and%20(ty<-3)%20and%20(tx>-12)%20and%20(tx<-3)begin%20form3.number:=15;%20showimage(form3.number);%20end;(ty>-3)%20and%20(ty<4)%20and%20(tx>-12)%20and%20(tx<-3)begin%20form3.number:=14;%20showimage(form3.number);%20end;(ty>4)%20and%20(ty<12)%20and%20(tx>-12)%20and%20(tx<-3)begin%20form3.number:=13;%20showimage(form3.number);%20end;(ty>2)%20and%20(ty<12)%20and%20(tx>-6)%20and%20(tx<6)begin%20form3.number:=9;%20showimage(form3.number);%20end;(ty>12)%20and%20(ty<20)%20and%20(tx>1)%20and%20(tx<12)begin%20form3.number:=8;%20showimage(form3.number);%20end;(ty>20)%20and%20(ty<28)%20and%20(tx>1)%20and%20(tx<12)begin%20form3.number:=7;%20showimage(form3.number);%20end;(ty>28)%20and%20(ty<36)%20and%20(tx>1)%20and%20(tx<12)begin%20form3.number:=6;%20showimage(form3.number);%20end;(ty>12)%20and%20(ty<20)%20and%20(tx>-11)%20and%20(tx<-1)begin%20form3.number:=5;%20showimage(form3.number);%20end;(ty>20)%20and%20(ty<28)%20and%20(tx>-11)%20and%20(tx<-1)begin%20form3.number:=4;%20showimage(form3.number);%20end;(ty>28)%20and%20(ty<35)%20and%20(tx>-11)%20and%20(tx<-1)begin%20form3.number:=3;%20showimage(form3.number);%20end;(ty>30)%20and%20(ty<35)%20and%20(tx>0)%20and%20(tx<8)begin%20form3.number:=1;%20showimage(form3.number);%20end;(ty>30)%20and%20(ty<35)%20and%20(tx>-8)%20and%20(tx<0)begin%20form3.number:=2;%20showimage(form3.number);%20end;;Key=VK_F1begin:=false;.HelpFile:='Help\Help.hlp';.HelpCommand(HELP_FINDER,0);;Key=VK_F2beginlockShowCursor(true)ShowCursor(false);:=not%20lock;;">Key = VK_ESCAPE then(true);.Visible:=true;.DirectoryListBox1.Directory:=form2.directory+'/download';.FilterComboBox1.Filelist.Mask:='*.bmp';kolfile:=1 to 17 dofileexists(form2.directory+'/download/fotogallery'+inttostr(kolfile)+'.bmp') thendeletefile(form2.directory+'/download/fotogallery'+inttostr(kolfile)+'.bmp') then.FileListBox1.DeleteSelected;.colpic[kolfile]:=false;;.DirectoryListBox1.Directory:=form2.directory;.FilterComboBox1.Filelist.Mask:=form2.mask;.close;;Key=VK_Return(ty<-6) and (ty>-12) and (tx>0) and (tx<8)begin form3.number:=16; showimage(form3.number); end;(ty>-9) and (ty<-3) and (tx>3) and (tx<12)begin form3.number:=12; showimage(form3.number); end;(ty>-3) and (ty<4) and (tx>3) and (tx<12)begin form3.number:=11; showimage(form3.number); end;(ty>4) and (ty<12) and (tx>3) and (tx<12)begin form3.number:=10; showimage(form3.number); end;(ty<-6) and (ty>-12) and (tx>-8) and (tx<0)begin form3.number:=17; showimage(form3.number); end;(ty>-9) and (ty<-3) and (tx>-12) and (tx<-3)begin form3.number:=15; showimage(form3.number); end;(ty>-3) and (ty<4) and (tx>-12) and (tx<-3)begin form3.number:=14; showimage(form3.number); end;(ty>4) and (ty<12) and (tx>-12) and (tx<-3)begin form3.number:=13; showimage(form3.number); end;(ty>2) and (ty<12) and (tx>-6) and (tx<6)begin form3.number:=9; showimage(form3.number); end;(ty>12) and (ty<20) and (tx>1) and (tx<12)begin form3.number:=8; showimage(form3.number); end;(ty>20) and (ty<28) and (tx>1) and (tx<12)begin form3.number:=7; showimage(form3.number); end;(ty>28) and (ty<36) and (tx>1) and (tx<12)begin form3.number:=6; showimage(form3.number); end;(ty>12) and (ty<20) and (tx>-11) and (tx<-1)begin form3.number:=5; showimage(form3.number); end;(ty>20) and (ty<28) and (tx>-11) and (tx<-1)begin form3.number:=4; showimage(form3.number); end;(ty>28) and (ty<35) and (tx>-11) and (tx<-1)begin form3.number:=3; showimage(form3.number); end;(ty>30) and (ty<35) and (tx>0) and (tx<8)begin form3.number:=1; showimage(form3.number); end;(ty>30) and (ty<35) and (tx>-8) and (tx<0)begin form3.number:=2; showimage(form3.number); end;;Key=VK_F1begin:=false;.HelpFile:='Help\Help.hlp';.HelpCommand(HELP_FINDER,0);;Key=VK_F2beginlockShowCursor(true)ShowCursor(false);:=not lock;;