Програмування в середовищі Delphi

Автор: Пользователь скрыл имя, 11 Ноября 2011 в 17:14, курсовая работа

Описание работы

Написати програму для Windows, в якій:
1) Створити головне вікно. Заголовок містить ПІБ, гр., вар.
2) Створити меню вигляду: Input Choose Calc About Quit
Пункт Calc заборонений. При виборі Quit програма закривається.
3) При виборі Input відкривається діалогове вікно вигляду 1:
При виборі Choose відкривається діалогове вікно вигляду 2:

Содержание

Завдання до курсової роботи 2
Завдання №1 2
Завдання №2 3
Завдання №3 4
Реферат 5
Зміст 6
Вступ 9
Розділ 5. Основна частина 10
Середовище Delphi 10
5.1. Оператори та функції,оператор begin end. 10
5.2.Робота з текстовими файлами. 11
5.3. Процедура assignfile. 11
5.4.Процедура reset 12
5.5. Процедура rewrite 12
5.6.Процедура closefile 13
5.7.Умовний оператор IF. 13
5.8.Приклад використання умовного оператору if для запису інформації у текстовий файл. 15
5.9.Складені умови 20
5.10.Операція and 20
5.11.Операція or 21
5.12.Операція заперечення not. 21
5.13.Операція xor 21
5.15.Використання оператору IF зі складеними умовами. 24
5.16.Оператор вибору CASE. 27
Висновок 28
Список використаної літератури 29

Работа содержит 1 файл

Звіт.docx

— 460.33 Кб (Скачать)

      (0£y£1/2) матиме вигляд (y>=0) and (y<=1/2)

      (-1/2£x£1/2) матиме вигляд (x>=-0.5) and (x<=0.5)

      (-1£y£0) матиме вигляд (y>=-1) and (y<=0)

Звідси  остаточна умова матиме вигляд

if

(((x>=-1) and (x<=1)) and ((y>=0) and (y<=1/2)))

or

(((x>=-0.5) and (x<=0.5)) and ((y>=-1) and (y<=0)))

then …

Отже, на підставі прикладу можемо сформулювати рекомендації до запобігання помилок  при використанні складеного оператору IF.

    1.     Спочатку чітку сформулювати складену умову

    2.     Розбити складену умову на логічні блоки умов

    3.     Виписати блоки умов і розбити їх на елементарні умови

    4.     Чітко слідкувати за місцем та кількістю дужок у складеній умові

5.15.Використання оператору IF зі складеними умовами.

      Нехай маємо область, зображену на малюнку

                                     Мал №5.15.8.Область координат.

За введеними  координатами точки (x,y) потрібно вияснити, чи належить ця точка заштрихованій  області, чи ні.         

 Спочатку  потрібно формалізувати заштриховану  область. Легко бачити, що до  заштрихованої області відносяться  ті точки, відстань від яких  до точки перетину осей координат  (0,0) не більша за 1 і не менша  за 1/2. Тобто, якщо записати це  формально, то для того, щоб  точка потрапляла до заштрихованої  області, достатньо, щоб для  її координат одночасно виконувались  нерівності   та .          

 Тепер  визначимось з об'єктами на  формі. Очевидно, що нам потрібно 2 об'єкти Edit (для введення координат  x та y відповідно), об'єкт Label для виведення  результату на екран та об'єкт  Button для самої перевірки.         

 Крім  того, нам потрібні будуть 2 змінні  типу real для введення самих координат.  Отже, запишемо сам алгоритм програми   

    x:=strtofloat(edit1.text);

{присвоюється  значення першої координати у  змінну х конвертуючи рядкову  змінну edit1.text у дійсну x}  

    y:=strtofloat(edit2.text);

{присвоюється  значення першої координати у  змінну y конвертуючи рядкову змінну edit2.text у дійсну y }  

    if (sqrt(sqr(x)+sqr(y))>=0.5) and (sqrt(sqr(x)+sqr(y))<=1) then

{якщо (відстань  від точки до центру кола  більша або дорівнює 0,5) та (відстань  від точки до центру кола  менша або дорівнює 1) то}       

    label1.Caption:='Точка  знаходиться у заштрихованій  області'

{виводиться  у Label1 текст 'Точка знаходиться  у заштрихованій області'}    

    else     {інакше}        

    label1.Caption:='Точка  не знаходиться у заштрихованій  області';

{виводиться  у Label1 текст 'Точка не знаходиться  у заштрихованій області'}

А вся  програма матиме вигляд

    unit Unit1;   

    interface  

    uses 

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

    StdCtrls;  

    type 

    TForm1 = class(TForm)    

    Label1: TLabel;    

    Edit1: TEdit;    

    Edit2: TEdit;    

    Button1: TButton;    

    procedure Button1Click(Sender: TObject); 

    private   

    { Private declarations } 

    public   

    { Public declarations } 

    end;  

    var 

    Form1: TForm1;   

    implementation   

    {$R *.DFM}

    var  

    x,y:real;

    procedure TForm1.Button1Click(Sender: TObject);

    begin  

    x:=strtofloat(edit1.text);   

    y:=strtofloat(edit2.text);   

    if (sqrt(sqr(x)+sqr(y))>=0.5) and (sqrt(sqr(x)+sqr(y))<=1) then       

    label1.Caption:='Точка  знаходиться у заштрихованій  області'    

    else       

    label1.Caption:='Точка  не знаходиться у заштрихованій  області';

    end;  

    end.

5.16.Оператор вибору CASE.

Синтаксис:

    case змінна of

      значення1_змінної :       оператор1;

      значення2_змінної :       оператор2;

      значення3_змінної :       оператор3;

      значення4_змінної :       оператор4;

      значення5_змінної :       оператор5;

      else    оператор6;

    end; 

де значення1_змінної є значенням(и) змінної змінна і може бути як одним значенням, так і кількома, перерахованими через кому “,”. Оператор IF зручний, коли перевіряється кілька множинних умов, тобто умов, коли порівнюються змінні. У випадку, коли у залежності від значення однієї змінної (виразу) треба виконати ту чи іншу дію, особливо якщо треба перевірити кілька значень цієї змінної, логічно використовувати оператор вибору CASE. Наприклад виходячи зі значення цілої змінної і, де і змінюється від 1 до 5, вивести на екран у Label1 відповідний кожному значенню текст.

     З використанням оператору IF цей фрагмент програми матиме вигляд:

    if  i=1  then  label1.caption:=’Текст 1’

          else  if  i=2  then label1.caption:=’Текст 2’

            else  if  i=3  then label1.caption:=’Текст 3’

              else  if  i=4  then label1.caption:=’Текст 4’

            else  if  i=5  then label1.caption:=’Текст 5’

     З оператором CASE цей фрагмент має вигляд:

    case i of

      1: label1.caption:=’Текст  1’;

      2: label1.caption:=’Текст  2’;

      3: label1.caption:=’Текст  3’;

      4: label1.caption:=’Текст  4’;

      5: label1.caption:=’Текст  5’;

      end;

Висновок

     При виконанні курсової роботи, я набув  навичок роботи з такими складовими програмного забезпечення і середовищем  програмування як  Microsoft Office, Delphi. Зрозумів основний алгоритм побудови програми, які повинні бути програмні  вироби, щоб повністю виконувати дане завдання або щоб даний виготовлений програмний виріб міг задовільняти потреби користувача. Також я  навчився оформляти результати своєї  роботи згідно з загальноприйнятими правилами.

      Під час виконання завдань до курсової роботи в мене виникло декілька проблем, які я не зміг самостійно вирішити. Перша проблема виникла під час  виконання завдання №1 - я не знав як реалізувати, щоб під час натискання кнопки на одній формі програми відкривалась інша, але за допомогою підручника, представленого нам авторами : Я.М. Глинський, В.Є. Анохін, я вирішив цю проблему. Потрібно було прописати назву нової форми і ShowModal. Наприклад: Form3.ShowModal.    

      Друга проблема виникла підчас виконання  третього завдання - я не міг запрограмувати функцію друку у текстовому редакторі, тому що не описав документ, який потрібно було видрукувати, але я зрозумів, що кожен документ, який виноситься на друк, повинен бути описаний. Цю проблему я вирішив за допомогою інтернет форуму, на якому мені дали вичерпну відповідь на моє питання стосовно цієї помилки.

      В основному більше проблем під  час виконання завдань, заданих на курсову роботу не виникало.

Список  використаної літератури

Навчальні посібники:

    1. TURBO PASCAL і DELPHI, автори: Глинський Я.М., Анохін В.Є., Ряжська В.А.

    Інтернет  джерела:

    1. http://www.realcoding.net/article/view/107
    2. http://www.maksakov-sa.ru/TeorDelphi/index.html
    3. http://prodelphi.3dn.ru/publ/1-1-0-3
 

  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Додатки

8.1.Додаток №1 «Вихідний код програми №1 – Unit1»

unit Unit1; 

interface 

uses

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

  Dialogs, Menus, StdCtrls, XPMan; 

type

  TForm1 = class(TForm)

    MainMenu1: TMainMenu;

    Action1: TMenuItem;

    Input1: TMenuItem;

    Calc1: TMenuItem;

    Help1: TMenuItem;

    Help2: TMenuItem;

    About1: TMenuItem;

    Label1: TLabel;

    Label2: TLabel;

    XPManifest1: TXPManifest;

    procedure Input1Click(Sender: TObject);

    procedure About1Click(Sender: TObject);

    procedure Calc1Click(Sender: TObject);

    procedure Help2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form1: TForm1; 

implementation 

uses Unit2, Unit4, Unit3, Unit5; 

{$R *.dfm} 

procedure TForm1.Input1Click(Sender: TObject);

begin

Form2.ShowModal   //налагоджуємо звязок з формою

end; 

procedure TForm1.About1Click(Sender: TObject);

begin

Form4.ShowModal   //налагоджуємо звязок з формою

end; 

procedure TForm1.Calc1Click(Sender: TObject);

begin

Form3.ShowModal;  //налагоджуємо звязок з формою

end; 

procedure TForm1.Help2Click(Sender: TObject);

begin

Form5.ShowModal   //налагоджуємо звязок з формою

end; 

end. 
 
 
 
 
 
 
 

8.2.Додаток  №2 «Головне вікно  програми №1»

Информация о работе Програмування в середовищі Delphi