Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Создание теста в Delphi

Тип Реферат
Предмет Информатика и программирование
Просмотров
681
Размер файла
69 б
Поделиться

Ознакомительный фрагмент работы:

Создание теста в Delphi

Содержание

Содержание2

Введение3

Глава1. Аналитическийобзор4

1.1.Компоненты4

1.1.1.Button4

1.1.2. ComboBox5

1.1.3.Edit6

1.1.4.Label, StaticText8

1.1.5.RadioGroup9

1.1.6.Memo10

1.2.Новые методырешения13

1.3.Этапы разработкипрограммы13

Глава2. Разработкапрограммы14

2.1.Постановказадачи14

2.2.Язык программированияDelphi14

2.3.Пользовательскийинтерфейс14

2.4.Структурапрограммы16

2.5.Минимальныйсостав оборудования17

Заключение18

СПИСОК ИСПОЛЬЗУЕМОЙЛИТЕРАТУРЫ19


Введение

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

Сейчас компьютерявляется неотъемлемойчастью работылюдей. Компьютерыиспользуютсяв школах иуниверситетах.Они помогаютсистематизацииполученныеданных как врабочих целях,так и в учебных.

Данномкурсовом проектерассмотренпрограммныйпродукт “Методикамногофакторногоисследованияличности Р.Кеттелла”. Онпредставляетсобой опросникиз 187 вопросов,определяющийшестнадцатьфакторов личностии дает многограннуюинформациюо личностныхчертах, которыеназываютконституционны­мифакторами,предложен Р.Кеттеллом.

Глава 1.Аналитическийобзор

1.1.Компоненты

Создаваяданную программуя использовалразличныекомпоненты,такие как button,combobox, edit,label, radiogroup,statictext, memo.

1.1.1.Button

Простейшейи, пожалуй, наиболеечасто используемойкнопкой являетсякнопка Button (см.на рис. 5.1 в верхнемлевом углуформы), расположеннаяна страницебиблиотекиStandard.

Основноес точки зрениявнешнего видасвойство кнопки— Caption (надпись).В надписяхкнопок можнопредусматриватьиспользованиеклавиш ускоренногодоступа, выделяядля этого одиниз символовнадписи. Передсимволом, которыйдолжен соответствоватьклавише ускоренногодоступа, ставитсясимвол амперсанта«&». Этот символне появляетсяв надписи, аследующий заним символоказываетсяподчеркнутым.Тогда пользовательможет вместощелчка на кнопкенажать в любоймомент клавишуAltсовместно склавишей выделенногосимвола.

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

СвойствоCancel, если егоустановитьв true, определяет,что нажатиепользователемклавиши Escбудет эквивалентнонажатию наданную кнопку.Это свойствоцелесообразнозадавать равнымtrue для кнопок«Отменить»в различныхдиалоговыхокнах, чтобыможно быловыйти из диалога,нажав на этукнопку илинажав клавишуEsc.Свойство Default,если его установитьв true, определяет,что нажатиепользователемклавиши вводаEnterбудет эквивалентнонажатию наданную кнопку,даже если даннаякнопка в этотмомент не находитсяв фокусе. Правда,если в моментнажатия Enterв фокусе находитсядругая кнопка,то все-такисработаетименно кнопкав фокусе.

Изметодов, присущихкнопкам, имеетсмысл отметитьодин — Click. Выполнениеэтого методаэквивалентнощелчку на кнопке,т.е. вызываетсобытие кнопкиOnClick. Этим можновоспользоваться,чтобы продублироватькакими-то другимидействиямипользователящелчок на кнопке.Пусть, например,вы хотите, чтобыпри нажатиипользователемклавиши с символом«С»или «с»в любой моментработы с приложениемвыполнялисьоперации,предусмотренныев обработчикесобытия OnClickкнопки Button1. Посколькунеизвестно,какой компонентбудет находитьсяв фокусе в моментэтого события,надо перехватитьего на уровнеформы. Такойперехватосуществляется,если установитьсвойство формыKeyPreview в true. Тогдав обработчикесобытия формыOnKeyPress можно написатьоператор

if(key='C' or key='c') then Button1.Click;

Еслипользовательввел символ«С» или «с», тов результатебудет выполненобработчикщелчка кнопкиButton1.

1.1.2. ComboBox

Стильизображенияэтого компонентаопределяетсясвойствомStyle, которое можетприниматьследующиеосновные значения:

csDropDown- Выпадающийсписок со строкамиодинаковойвысоты и с окномредактирования,позволяющимпользователювводить илиредактироватьтекст;

csSimple- Развернутыйсписок со строкамиодинаковойвысоты и с окномредактирования,позволяющимпользователювводить илиредактироватьтекст;

csDropDownList- Выпадающийсписок со строкамиодинаковойвысоты, не содержащийокна редактирования.

Выборпользователяили введенныйим текст можноопределитьпо значениюсвойства Text.Если же надоопределитьиндекс выбранногопользователемэлемента списка,то можно воспользоватьсясвойствомItemIndex. Если начальноезначение незадано, то вмомент запускаприложенияпользовательне увидит вокне компонентаодно из возможныхзначений спискаи, вероятнеевсего, не оченьпоймет, что сэтим окном надоделать.

Еслив окне проводилосьредактированиеданных, то ItemIndex= -1. По этому признакуможно определить,что редактированиепроводилось.

СвойствоMaxLength определяетмаксимальноечисло символов,которые пользовательможет ввестив окно редактирования.

ЕслиMaxLength = 0, то числовводимых символовне ограничено.

1.1.3.Edit

ВкомпонентеEdit вводимыйи выводимыйтекст содержитсяв свойствеText. Это свойствоможно устанавливатьв процессепроектированияили задаватьпрограммно.Выравниваниетекста, как этоимело местов метках и панелях,невозможно.Перенос строктоже невозможен.Текст, не помещающийсяпо длине в окно,просто сдвигаетсяи пользовательможет перемещатьсяпо нему с помощьюкурсора. СвойствоAutoSize в окнахредактированияимеет смысл,отличный отсмысла аналогичногосвойства меток:автоматическиподстраиваетсяпод размертекста тольковысота, но неширина окна.

Окнаредактированияснабжены многимифункциями,свойственнымибольшинствуредакторов.Например, в нихпредусмотренытипичные комбинации«горячих»клавиш: Ctrl-C— копированиевыделенноготекста в буферобмена Clipboard (командаCopy), Ctrl-X— вырезаниевыделенноготекста в буферClipboard (команда Cut),Ctrl-V— вставка текстаиз буфера Clipboard впозицию курсора(команда Paste), Ctrl-Z— отмена последнейкоманды редактирования.

Editможно использоватьи просто каккомпонентыотображениятекста. Дляэтого надоустановитьв true его свойствоReadOnly и целесообразноустановитьAutoSelect в false. В этомслучае пользовательне сможет изменятьотображаемыйтекст и окноредактированиястановитсяподобным меткам.При использованииокон редактированиядля вывода,ввода и редактированиячисел необходимоиспользоватьфункции взаимногопреобразованиястрок и чисел.Для вывода этоописанные прирассмотренииметок функцииFloatToStr и IntToStr. Привводе это функцииStrToFloat — преобразованиестроки в значениес плавающейзапятой, и StrToInt— преобразованиестроки в целоезначение. Есливводимый текстне соответствуетчислу (например,содержит недопустимыесимволы), тофункции преобразованиягенерируютисключениеEConvertError. Поэтомув программенеобходимопредусмотретьобработку этогоисключения.Например:

varA: integer;

try

A :=StrToInt(Edit1.Text);

...{операторы, использующиепеременнуюА}

excepton EConvertError do

ShowMessage('Вы ввели ошибочное число;

повторите ввод');

Этоткод обеспечиваетсообщениепользователюоб ошибке вводаи предотвращаетошибочныевычисления.Впрочем, этоне лучший вариантпредотвратитьошибочный ввод,посколькупользовательузнает о своейошибке толькопосле того, какпрограммапытается использоватьвведенныеданные. Лучше,если пользовательпросто не сможетввести неправильныесимволы. Например,если вы хотите,чтобы пользовательмог вводитьв окно редактированияEdit только цифрыи символ точки,вы можете вобработчиксобытия OnKeyPressэтого компонентавставить оператор:

ifnot (Keyin['0'..'9', ',']) thenKey := #0;

Этотоператор подменитвсе символы,кроме цифр изапятой, нулевымсимволом, которыйне занесетсяв текст окнаEdit.

СвойствоMaxLength определяетмаксимальнуюдлину вводимоготекста. ЕслиMaxLength = 0, то длинатекста не ограничена.В противномслучае значениеMaxLength указываетмаксимальноечисло символов,которое можетввести пользователь.

СвойствоPasswordChar позволяетпревращатьокно редактированияв окно вводапароля. По умолчаниюзначение PasswordCharравно #0 — нулевомусимволу. В этомслучае этообычное окноредактирования.Но если в свойствеуказать инойсимвол (например,символ звездочки«*»), то при вводепользователемтекста в окнебудут появлятьсяименно этисимволы, а нете, которыевводит пользователь(см. рис. 3.5). Темсамым обеспечиваетсясекретностьввода пароля.

1.1.4.Label, StaticText

Дляотображенияразличныхнадписей наформе используютсяв основномкомпонентыLabel, StaticText (появившийсятолько в Delphi 3) иPanel. Первые дваиз этих компонентов— метки, специальнопредназначенныедля отображениятекстов.

Тексты,отображаемыев перечисленныхкомпонентах,определяютсязначением ихсвойства Caption.Его можноустанавливатьв процессепроектированияили задаватьи изменятьпрограммново время выполненияприложения.Например:

Label1.Caption:= 'Новый текст';

Еслитребуетсяотобразитьчисловую информацию,можно воспользоватьсяфункциямиFloatToStr и IntToStr, переводящимисоответственночисла с плавающейзапятой и целыев строку. Дляформированиятекста, состоящегоиз несколькихфрагментов,можно использоватьоперацию «+»,которая длястрок означаетих склеивание(конкатенацию).Например, еслив программеимеется целаяпеременнаяI, отображающаячисло сотрудниковнекоторойорганизации,то вывести вметку Label1 информациюоб этом можнооператором:

Label1.Caption:= 'Число сотрудников:'+IntToStr(I);

Вовсех компонентахцвет фонаопределяетсясвойствомColor, а цвет надписи— подсвойствомColor свойстваFont.

Дляметки Label цвети шрифт — единственнодоступныеэлементы оформлениянадписи. КомпонентStaticText имеет крометого свойствоBorderStyle, определяющеерамку текста— бордюр.

Размерметок Label и StaticTextопределяетсятакже свойствомAutoSize. Если этосвойство установленов true, то вертикальныйи горизонтальныйразмеры компонентаопределяютсяразмером надписи.Если же AutoSize равноfalse, то выравниваниетекста внутрикомпонентаопределяетсясвойствомAlignment, котороепозволяетвыравниватьтекст по левомукраю, правомукраю или центруклиентскойобласти метки.

Вметке Label имеетсясвойство Wordwrap— допустимостьпереноса словдлинной надписи,превышающейдлину компонента,на новую строчку.Чтобы такойперенос могосуществляться,надо установитьсвойство WordWrapв true, свойствоAutoSize в false (чтобыразмер компонентане определялсяразмером надписи)и сделать высотукомпонентатакой, чтобыв нем моглопоместитьсянесколькострок.

Вметке StaticText переносдлинного текстаосуществляетсяавтоматически,если значениеAutoSize установленов false и размеркомпонентадостаточендля размещениянесколькихстрок. Для того,чтобы в StaticTextосуществлялсяперенос приизменениипользователемразмеров окна,надо осуществлятьописанную вышеперерисовкукомпонентаметодом Repaint вобработчикесобытия формыOnResize.

1.1.5.RadioGroup

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

RadioGroup– это панель,которая можетсодержатьрегулярнорасположенныестолбцами истроками радиокнопки.Надпись в левомверхнем углупанели определяетсясвойствомCaption. А надписикнопок и ихколичествоопределяютсясвойствомItems, имеющим типTStrings. Щелкнув накнопке с многоточиемоколо этогосвойства в окнеИнспектораОбъектов, выпопадете вредактор списковстрок. В нем выможете занестинадписи, которыехотите видетьоколо кнопок,по одной в строке.Сколько строчеквы запишете— столько ибудет кнопок.

Кнопки,появившиесяв панели послезадания значенийItems, можно разместитьв несколькостолбцов (неболее 17), задавсвойство Columns.По умолчаниюColumns = 1, т.е. кнопкиразмещаютсядруг под другом.

Определить,какую из кнопоквыбрал пользователь,можно по свойствуItemIndex, котороепоказываетиндекс выбраннойкнопки. Индексы,как всегда вDelphi, начинаютсяс 0. По умолчаниюItemIndex = -1, что означаетотсутствиевыбраннойкнопки. Есливы хотите, чтобыв момент началавыполненияприложениякакая-то изкнопок былавыбрана (этопрактическивсегда необходимо),то надо установитьсоответствующеезначение ItemIndexво время проектирования.Если вы используетерадиокнопкине для ввода,а для отображенияданных, устанавливатьзначение ItemIndexможно программново время выполненияприложения.

КомпонентRadioGroup очень удобен,но не свободенот некоторыхнедостатков.Его хорошоиспользовать,если надписикнопок имеютпримерно одинаковуюдлину и есличисло кнопокв каждом столбце(при размещенииих в несколькихстолбцах) одинаково.

1.1.6.Memo

ВкомпонентеMemo формат (шрифт,его атрибуты,выравнивание)одинаков длявсего текстаи определяетсясвойством Font.Если вы сохранитев файле текст,введенный илиотредактированныйпользователем,то будет создантекстовый файл,содержащийтолько символыи не содержащийэлементовформатирования.При последующемчтении этогофайла в Memo форматбудет определятьсятекущим состояниемсвойства FontкомпонентаMemo, а не тем, вкаком форматеранее вводилсятекст.

СвойстваAlignment и WordWrap имеюттот же смысл,что, например,в метках, иопределяютвыравниваниетекста и допустимостьпереноса длинныхстрок. Установкасвойства ReadOnlyв true задает тексттолько длячтения. СвойствоMaxLength определяетмаксимальнуюдлину вводимоготекста. ЕслиMaxLength = 0, то длинатекста не ограничена.Свойства WantReturnsи WantTab определяютдопустимостьввода пользователемв текст символовперевода строкии табуляции.

СвойствоScrollBars определяетналичие полоспрокруткатекста в окне.По умолчаниюScrollBars = ssNone, что означаетих отсутствие.Пользовательможет в этомслучае перемещатьсяпо тексту толькос помощью курсора.Можно задатьсвойству ScrollBarsзначенияssHorizontal, ssVertical или ssBoth,что будетсоответственноозначать наличиегоризонтальной,вертикальнойили обеих полоспрокрутки.

СвойстваTabCount и Tab имеютсмысл при вводетекста толькопри значениисвойства компонентаWantTabs = true. Это свойстворазрешаетпользователювводить в текстсимвол табуляции.Если WantTabs = false, тонажатие пользователемклавиши табуляциипросто переключитфокус на очереднойкомпонент исимвол табуляциив текст не введется.

Основноесвойство окнаmemo – Lines,содержащеетекст окна ввиде спискастрок и имеющеетип TStrings. Начальноезначение текстаможно установитьв процессепроектирования,нажав кнопкус многоточиемоколо свойстваLines в окне ИнспектораОбъектов. Передвами откроетсяокно редактированиясписков строк.Вы можетередактироватьили вводитьтекст непосредственнов этом окне,или нажатькнопку CodeEditor иработать вобычном окнеРедактора Кода.В этом случае,завершив работус текстом, выберитеиз контекстногоменю, всплывающегопри щелчкеправой кнопкоймыши, командуClose Page и ответьтеутвердительнона вопрос, хотители вы сохранитьтекст в соответствующемсвойстве окнаредактирования.

Вовремя выполненияприложениявы можете заноситьтекст в окноредактированияс помощью методовсвойства Linesтипа TStrings. Этоттип широкоиспользуетсяв свойствахмногих компонентови его описаниевы можете найтив во встроеннойсправке Delphi. Здеськоротко укажемтолько на егоосновные свойстваи методы, используемыев свойствеLines.

Весьтекст, представленныйодной строкойтипа String, внутрикоторой используютсяразделителитипа символоввозврата кареткии переводастроки, содержитсяв свойствеText.

Доступк отдельнойстроке текставы можете получитьс помощью свойстваStrings[Index: Integer]. Индексы,как и везде вDelphi, начинаютсяс 0. Так чтоMemo1.Lines.Strings[0] — это текстпервой строки.Учтите, чтоесли окноредактированияизменяетсяв размерах приработе с приложениеми свойствоWordWrap = true, то индексыстрок будутизменятьсяпри переносахстрок, так чтов этих случаяхиндекс малоо чем говорит.

Свойствотолько длячтения Count указываетчисло строкв тексте.

Дляочистки текстав окне надовыполнитьпроцедуруClear. Этот методотносится ксамому окну,а не к его свойствуLines.

Длязанесения новойстроки в конецтекста окнаредактированияможно воспользоватьсяметодами Addили Append свойстваLines. Для загрузкитекста из файлаприменяетсяметод LoadFromFile. Сохранениетекста в фалеосуществляетсяметодом SaveToFile.

Пусть,например, ввашем приложенииимеется окноредактированияEdit1, в которомпользовательвводит имясотрудника,и есть кнопка,при щелчке накоторой в окноMemo1 должна занестисьшапка характеристикиэтого сотрудника,после чегопользовательможет заполнитьтекст характеристики.

Обработчикщелчка на кнопкеможет иметьвид:

Memo1.Clear;

Memo1.Lines.Add('Х А Р А К Т Е Р ИС Т И К А');

Memo1.Lines.Add('Сотрудник'+Edit1.Text) ;.

Memo1.SetFocus;

Загрузкав окно Memo1 текстаиз файла (например,хранящейсяв файле характеристикисотрудника)может осуществлятьсякомандой

Memo1.Lines.LoadFromFile('text.txt');

Сохранениетекста в файлеможет осуществлятьсякомандой

Memo1.Lines.SaveToFile('text.txt');

1.2.Новые методырешения

Присоздании теста,можно использоватьмногостраничныйкомпонентNotePad, он даствозможностьна каждый вопросприменятьотличное отдругих вопросовоформлениеи тем самымпридаст тестуболее красочныйвид.

1.3.Этапы разработкипрограммы

Определениетребованийк программе– один из важнейшихэтапов. На этомэтапе подробноописываетсяисходная информацияи формулируютсятребованияк результату.Кроме того,описываетсяповедениепрограммы вособых случаях.

Приразработкепрограммы,предназначеннойдля работы вWindows, требованияк ней могутвключать пунктыо желаемом видедиалоговыхокон программы.

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

Припрограммированиив Delphi основнаяработа программистазаключаетсяв разработкеподпрограмм.Задачу организациивзаимодействияразработанныхподпрограммберет на себяDelphi . ТакжеDelphi удобнадля созданияпрограмм свизуальнымикомпонентами,которые ужесозданы в нейи имеют стандартныйнабор команд.

Глава 2.Разработкапрограммы

2.1.Постановказадачи

Поставленнаязадача заключаласьв следующем.Необходимосоздать программукоторая быпроводилатестированиена основе опросникаР.Кеттелла исохраняларезультатопроса длядальнейшегоанализа. Программадолжна помочьпсихологамв проведениитестированиястудентов.

2.2.Язык программированияDelphi

Среда разработкиDelphi ориентирована,прежде всего,на созданиепрограмм длясемействаоперационныхсистем Windows.При этом большоевнимание уделяетсявозможностивизуальнойразработкиприложенийс помощью большогонабора готовыхкомпонентов,а в стандартнуюпоставку Delphiвходят основныеобъекты, которыеобразуют удачноподобраннуюиерархию из270 базовых классов,позволяющихизбежать ручногокодирования.Эти компонентыохватываютпрактическивсе аспектыприменениясовременныхинформационныхтехнологий.

В процессепостроенияприложениянеобходимовыбирать изпалитры компоненты,на основе которыхбудет строитьсяпроект. Еще докомпиляциивидно результатысвоей работы.В этом смыслепроектированиев Delphi мало чемотличаетсяот проектированияв интерпретирующейсреде, однакопосле выполнениякомпиляцииполучаем код,который исполняетсяв 10-20 раз быстрее,чем то же, самое,сделанное припомощи интерпретатора.Cреда Delphi включаетв себя полныйнабор визуальныхинструментовдля скоростнойразработкиприложений(RAD - rapid application development), поддерживающейразработкупользовательскогоинтерфейса.

2.3.Пользовательскийинтерфейс

Призапуске опросника,программапопросит вестиличные данные,такие как: Фамилия,имя, пол и возраст.

Вводэтих данныхобязателен,без них невозможноначать тест,т.к. от этогозависит подсчётфакторов личности.

Послезаполнениявсех полей,можно начатьсам тест, приэтом откроетсяновое окно, астарое закроется.В новом окнебудет приведенаинструкцияпо выполнениютеста и небольшоеописание.

Принажатии кнопки“Далее >>>” наформе отобразитсявопрос и триварианта ответа,выбор вариантаответа производитсякликом мыши.Продолжениетестированияпроизводитсякнопкой “Далее>>>” при этомна форме будутотображатьсяновые вопросыи три вариантаответа.

Приокончаниетеста, программаподсчитаетколичествонабранныхбаллов и отобразитхарактерныечерты личноститестируемого.

Призакрытие всефакторы сохраняютсяв файл с расширением.txt и именемфайла аналогичнымс фамилиейтестируемого,папка в которойбуду находитсявсе эти файлы,называетсяtested м находитсяв папке программы.

2.4.Структурапрограммы

Организационнаяструктурареализацииалгоритмаразработкипрограммысхематическиизображенана рисунке 1.

2.5.Минимальныйсостав оборудования

  • Процессор– не ниже Pentium166;

  • Операционнаясистема – Windows95, 98, 2000, XP;

  • Оперативнаяпамять – 16 Мб;

  • Минимальноетребуемоеместо на жесткомдиске – 5 Мб.


Заключение

Внастоящее времяшироко в нашужизнь внедряютсяинформационныетехнологии.На сегодняшнийдень, наверное,не осталосьникакой области,где–бы они неприменялись.Одной из сфердеятельности,в которойинформационныетехнологииполучили широкоераспространение,являются игрыи досуг.

СПИСОКИСПОЛЬЗУЕМОЙЛИТЕРАТУРЫ

  1. БобровскийС. Delphi 5 – М.: Питер,2002.

  2. ГаевскийА.Разработкапрограммныхприложенийна Delphi 6 – М.:Киев, 2000.

  3. ДжонМатчо, ДэвидР.Фолкнер. «Delphi»- пер. с англ. –М.:Бином, 1998г.

  4. ЕпанишниковА. М., ЕпанишниковВ. А. Программированиев среде Turbo Pascal 7.0. М.:Диалог МИФИ,1998.

  5. ЗуевВ. А..Turbo Pascal 6.0, 7.0. М.: Веста;Радио и связь,1998.

  6. КоцюбинскийА.О., Грошев С.В.Язык программированияDelphi 5 – М.: «ИздательствоТриумф», 1999.

  7. ЛеонтьевВ. Delphi 5 – М.: Москва«Олма-Пресс»,1999.

  8. МоисеевА. Object Pascal – М.:Москва,2000.

  9. НемнюгинС.А. Программирование– М.: Питер, 2000.

  10. Программированиепод ред. В.В.Старлова– М: Питер, 1999

  11. РемизовН. Delphi – М.: Питер,2000.

  12. СванТ. Основы программированияв среде дляWindows 95. Киев, 1996.

  13. Справочнаясистема Delphi 5.0 Help.

  14. Т.А.Ильина. Программированиена Delphi 6 – М.:Питер, 2000.

  15. ФароновВ. В. Delphi 4. Учебныйкурс. М.: Нолидж,1999.

  16. ФедоровА. Г. СозданиеWindows-приложенийв среде Delphi. М.: ТОО«КомпьютерПресс», 1999.

  17. ХендерсонК. Руководстворазработчикабаз данных вDelphi 2. Киев: Диалектика,1998.

  18. Ч.Куписевич.Программированияна Delphi. – М:Киев, 1986

  19. ШапошниковИ. Delphi 5 – М.:Санкт-Петербург,2001.

  20. ШумаковП. В. Delphi 3 и разработкаприложенийМ.: Нолидж, 1999.


1Приложение

unitfmain;


interface


uses

Windows, Messages,SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;


type

TFormmain =class(TForm)

Edit1: TEdit;

StaticText1:TStaticText;

Edit2: TEdit;

StaticText2: TStaticText;

ComboSex:TComboBox;

StaticText3:TStaticText;

StaticText4:TStaticText;

ComboAge:TComboBox;

Button1: TButton;

Button2: TButton;

procedureButton1Click(Sender: TObject);

procedureButton2Click(Sender: TObject);

procedureFormCloseQuery(Sender: TObject; var CanClose: Boolean);

private

{ Privatedeclarations }

public

{ Publicdeclarations }

end;


var

Formmain: TFormmain;


implementation


uses ftest;


{$R *.dfm}


procedureTFormmain.Button1Click(Sender: TObject);

var error:Boolean;

begin

nomer:=0;

if edit1.Text='' then

beginmessagedlg('Введитефамилию',mterror,[mbok],0);

error:=true; end elseerror:=false;

if edit2.Text='' then

beginmessagedlg('Введитеимя',mterror,[mbok],0);

error:=true; end elseerror:=false;

ifComboSex.ItemIndex0 then

ifComboSex.ItemIndex1 then

begin messagedlg('Введитепол',mterror,[mbok],0);

error:=true; end else error:=false;

ifComboAge.ItemIndex0 then

ifComboAge.ItemIndex1 then

ifComboAge.ItemIndex2 then

begin messagedlg('Введитевозраст',mterror,[mbok],0);

error:=true; end else error:=false;

if error=false thenbegin

Formmain.hide;

formtest.Show;

end;

end;


procedureTFormmain.Button2Click(Sender: TObject);

begin

close;

end;


procedureTFormmain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);

begin

if messagedlg('Выдействительнохотитевыйти?',mtcustom,[mbyes,mbno],0)=mrnothen

canclose:=false;

end;


end.


unit ftest;


interface


uses

Windows, Messages,SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ExtCtrls,StdCtrls, Spin, ComCtrls;


type

TFormTest =class(TForm)

buttonnext:TButton;

Memo1: TMemo;

RadioGroup1:TRadioGroup;

Label1: TLabel;

Label3: TLabel;

BFinish: TButton;

procedurebuttonnextClick(Sender: TObject);

procedureFormCreate(Sender: TObject);

procedurebuttonPreviosClick(Sender: TObject);

procedureFormClose(Sender: TObject; var Action: TCloseAction);

procedureFormCloseQuery(Sender: TObject; var CanClose: Boolean);

procedureBFinishClick(Sender: TObject);

procedureFormHide(Sender: TObject);

procedureFormDblClick(Sender: TObject);

private

{ Privatedeclarations }

public

{ Publicdeclarations }

end;


var

FormTest: TFormTest;

nomer:Byte; {номервопроса}

a,b,c,d,e,f,g,h,i,l,m,n,o,q1,q2,q3,q4:byte;{Факторы}

aa,bb,cc,dd,ee,ff,gg,hh,ii,ll,mm,nn,oo,qq1,qq2,qq34:byte;{Стены}

implementation


uses fmain;


{$R *.dfm}


{Очисткаформы}

procedure clear;

begin

FormTest.Memo1.Lines.Clear;

FormTest.RadioGroup1.Items.Clear;

end;


procedure pballov;

begin

if nomer=3 then

begin

caseFormTest.RadioGroup1.ItemIndex of

0:begin Aa:=aa+2;bb:=bb+2;end;

1:begin aa:=aa+1;bb:=bb+1;end;

2:begin aa:=aa+2;bb:=bb+2;end;

end;

end;

case nomer of

{AA}27,52,76,101,126,151,176:begin

case FormTest.RadioGroup1.ItemIndex of

0:Aa:=aa+2;

1:aa:=aa+1;

2:aa:=aa+2;

end;

end;

{BB}28,54,78,103,128,153,178:begin

case FormTest.RadioGroup1.ItemIndex of

0:bb:=bb+2;

1:bb:=bb+1;

2:bb:=bb+2;

end;

end;


...


{QQ3и QQ4} 24,48,73,98,123,148,173:begin

case FormTest.RadioGroup1.ItemIndex of

0:qq34:=qq34+2;

1:qq34:=qq34+1;

2:qq34:=qq34+2;

end;

end;

end;

FormTest.RadioGroup1.ItemIndex:=-1;

end;


{Подсчётвывод и сохранениерезультата}

procedure whoru;

begin

clear;

{подсчётвсех факторов}

caseformmain.ComboAge.ItemIndex of{от 16 до 18лет}

0:begin

ifformmain.ComboSex.ItemIndex=0 then {Ж.}

begin

case aa of

0..6:a:=1;

7..8:a:=3;

9..10:a:=4;

11:a:=5;

12..13:a:=6;

14..15:a:=7;

16:a:=8;

17..18:a:=9;

19..20:a:=10;

end;

case bb of

0..1:b:=1;

8,9:b:=8;

11,12:b:=10;

else b:=bb;

end;



end;

end;

end;

end;

{Отображениерезультата}

casea of {ФакторА}

1..5:begin

FormTest.Memo1.Lines.Add('"Шизотермия"');


end;

end;

end;


{добавлениевопросов вMemo}

procedure addtest;

begin

if nomer=1 then

begin

nomer:=nomer+1;

clear;

FormTest.memo1.Lines.Add('1.Я хорошопонял инструкцию,которую толькочто прочитал:');

FormTest.RadioGroup1.Items.Add('а)Да;');

FormTest.RadioGroup1.Items.Add('в)не уверен;');

FormTest.RadioGroup1.Items.Add('с)нет.');

end

else

begin

ifnomer

ifFormTest.RadioGroup1.ItemIndex=-1 then

messagedlg('Непропускайтеничего, обязательноотвечайте навсе вопросыподряд',mtinformation,[mbok],0)

else

begin

case nomer-1 of

3..186:pballov;

end;


clear;


{Вопросы}

case nomer of

1:begin

FormTest.memo1.Lines.Add('1.Я хорошопонял инструкцию,которую толькочто прочитал:');

FormTest.RadioGroup1.Items.Add('а)Да;');

FormTest.RadioGroup1.Items.Add('в)не уверен;');

FormTest.RadioGroup1.Items.Add('с)нет.');

end;

2:begin



188:begin

whoru;

end;


end;

if nomer

end;

end;

end;


procedureTFormTest.buttonnextClick(Sender: TObject);

begin

if nomer=0 then

begin

nomer:=nomer+1;

memo1.ScrollBars:=ssNone;

end;

if nomer=1 then

begin

RadioGroup1.Visible:=true;

label1.Visible:=false;

label3.Visible:=true;

end

else

if nomer=188then

begin

radiogroup1.Visible:=false;

memo1.ScrollBars:=ssVertical;

buttonnext.Caption:='Завершить';

buttonnext.Visible:=false;

BFinish.Visible:=true;

Label1.Visible:=false;

Label3.Visible:=false;

end;

addtest;


{if n>0 then

begin

case n of

3:pballov;

end;

end;}

end;


procedureTFormTest.FormCreate(Sender: TObject);

begin

nomer:=0;

end;


procedureTFormTest.buttonPreviosClick(Sender: TObject);

begin

nomer:=nomer-1;

addtest;

end;


procedureTFormTest.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Formmain.Edit1.Clear;

Formmain.Edit2.Clear;

Formmain.ComboSex.ItemIndex:=-1;

Formmain.ComboAge.ItemIndex:=-1;

formmain.Show;

end;


procedureTFormTest.FormCloseQuery(Sender: TObject; var CanClose: Boolean);

begin

if nomer

ifmessagedlg('Прекратитьтестирование?',mtcustom,[mbyes,mbno],0)=mrnothen

canclose:=false;

end;


procedureTFormTest.BFinishClick(Sender: TObject);

begin

close;

end;


procedureTFormTest.FormHide(Sender: TObject);

begin

memo1.Lines.LoadFromFile('memomain.txt');

RadioGroup1.Visible:=false;

end;


end.


ТЮМЕНСКИЙГОСУДАРСВЕННЫЙКОЛЛЕДЖ СВЯЗИ,

ИНФОРМАТИКИИ УПРАВЛЕНИЯ


РАЗРАБОТКАПРИЛОЖЕНИЯ«МЕТОДИКАМНОГОФАКТОРНОГОИССЛЕДОВАНИЯЛИЧНОСТИ Р.КЕТТЕЛЛА»


Курсовойпроект


Тюмень 2003

ТЮМЕНСКИЙГОСУДАРСВЕННЫЙКОЛЛЕДЖ СВЯЗИ,

ИНФОРМАТИКИИ УПРАВЛЕНИЯ


отделение:информатикии вычислительнойтехники


РАЗРАБОТКАПРИЛОЖЕНИЯ«МЕТОДИКАМНОГОФАКТОРНОГОИССЛЕДОВАНИЯЛИЧНОСТИ Р.КЕТТЕЛЛА»


Курсовойпроект


Выполнил:

Руководитель:

Зав. Отделения

Дата допускак защите

«__» __________ 2003


Тюмень 2003


Нет нужной работы в каталоге?

Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
156450
рейтинг
icon
6068
работ сдано
icon
2737
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
63 457 оценок star star star star star
среднее 4.9 из 5
Филиал государственного бюджетного образовательного учреждения высшего образования Московской област
Спасибо Елизавете за оперативность. Так как это было важно для нас! Замечаний особых не бы...
star star star star star
РУТ
Огромное спасибо за уважительное отношение к заказчикам, быстроту и качество работы
star star star star star
ТГПУ
спасибо за помощь, работа сделана в срок и без замечаний, в полном объеме!
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

решить 6 практических

Решение задач, Спортивные сооружения

Срок сдачи к 17 дек.

только что

Задание в microsoft project

Лабораторная, Программирование

Срок сдачи к 14 дек.

только что

Решить две задачи №13 и №23

Решение задач, Теоретические основы электротехники

Срок сдачи к 15 дек.

только что

Решить 4задачи

Решение задач, Прикладная механика

Срок сдачи к 31 дек.

только что

Выполнить 2 задачи

Контрольная, Конституционное право

Срок сдачи к 12 дек.

2 минуты назад

6 заданий

Контрольная, Ветеринарная вирусология и иммунология

Срок сдачи к 6 дек.

4 минуты назад

Требуется разобрать ст. 135 Налогового кодекса по составу напогового...

Решение задач, Налоговое право

Срок сдачи к 5 дек.

4 минуты назад

ТЭД, теории кислот и оснований

Решение задач, Химия

Срок сдачи к 5 дек.

5 минут назад

Решить задание в эксель

Решение задач, Эконометрика

Срок сдачи к 6 дек.

5 минут назад

Нужно проходить тесты на сайте

Тест дистанционно, Детская психология

Срок сдачи к 31 янв.

6 минут назад

Решить 7 лабораторных

Решение задач, визуализация данных в экономике

Срок сдачи к 6 дек.

7 минут назад

Вариационные ряды

Другое, Статистика

Срок сдачи к 9 дек.

8 минут назад

Школьный кабинет химии и его роль в химико-образовательном процессе

Курсовая, Методика преподавания химии

Срок сдачи к 26 дек.

8 минут назад

Вариант 9

Решение задач, Теоретическая механика

Срок сдачи к 7 дек.

8 минут назад

9 задач по тех меху ,к 16:20

Решение задач, Техническая механика

Срок сдачи к 5 дек.

9 минут назад
9 минут назад
10 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно