Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Б. В графической (демонстрационной) части

Читайте также:
  1. II. Общие требования к строительной части
  2. II. Требования к оформлению Заявок для участия в Конкурсе и требования, предъявляемые к участникам Конкурса
  3. II. Участие в конкурсе
  4. II. Цели, принципы и задачи государственной демографической политики в Ульяновской области на период до 2025 года
  5. III. Похід на Крим. Зустріч в австрійськими галицькими частинами та російським відділом полк. Дроздовського. Конфлікт з німецько-австрійським командуванням
  6. III. Формування українських частин у Києві
  7. IV. Механизмы реализации демографической политики в Ульяновской области на период до 2025 года

Задача

§ В курсовой работе должны широко и с пониманием использоваться все средства, предоставляемые Lazarus в обоих парадигмах (ОО и обобщенного программирования).

§ Задача может иметь практическую значимость, однако это обычно плохо сочетается с первичной целью курсовой работы (изучение предмета "Программирование на ЯВУ"). Вот некоторые примеры тем:

-программа часы

 

 

Так как программа должна иметь графический и интуитивно-понятный интерфейс, то для решения очень подходит Lazarus.

 

 

 

Перечень вопросов, подлежащих разработке:

 

А. В пояснительной записке

Аннотация

Введение

1. Назначение и область применения

2. Технические характеристики

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

2.2. Описание применяемых математических методов и (или) математического аппарата

2.3. Описание алгоритма и (или) функционирования программы с обоснованием выбора

2.4. Описание и обоснование выбора метода организации входных и выходных данных

2.5. Описание и обоснование выбора состава технических и программных средств

Заключение

Приложения

Источники, использованные при разработке

Б. В графической (демонстрационной) части

 

Лист № 1 Схема программы

Презентация курсового проекта (работы)

unit Unit1;

{$mode objfpc}{$H+}

interface

uses

Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Menus,

ExtCtrls;

type

{ TForm1 }

TForm1 = class(TForm)

Timer1: TTimer;

procedure FormCreate(Sender: TObject);

procedure FormPaint(Sender: TObject);

procedure FormResize(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

private

{ private declarations }

public

{ public declarations }

end;

var

Form1: TForm1;

nCenterX, nCenterY: int64;

implementation

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);

begin

Form1.Caption:='Часы';

Timer1.Interval:=1000;

Timer1.Enabled:=true;

nCenterX:= Form1.ClientWidth div 2;

nCenterY:= Form1.ClientHeight div 2;

end;

procedure TForm1.FormPaint(Sender: TObject);

begin

nCenterX:= Form1.ClientWidth div 2;

nCenterY:= Form1.ClientHeight div 2;

//рисует основу формы

Canvas.Pen.Width:=1;

//фон

Canvas.Brush.Color:= clYellow;//должен совпадать из FormResize

Canvas.Rectangle(-1,-1,Form1.ClientWidth+1,Form1.ClientHeight+1);

Timer1Timer(self);

end;

procedure TForm1.FormResize(Sender: TObject);

begin

nCenterX:= Form1.ClientWidth div 2;

nCenterY:= Form1.ClientHeight div 2;

//рисует форму

Canvas.Pen.Width:=1;

//фон

Canvas.Brush.Color:= clYellow; //должен совпадать из FormPaint

Canvas.Rectangle(-1,-1,Form1.ClientWidth+1,Form1.ClientHeight+1);

Timer1Timer(self);

end;

//рисует часы

procedure TForm1.Timer1Timer(Sender: TObject);

var

Radians: double;

i,x,y: integer;

begin

// рисует круг

Canvas.Pen.Color:=clBlack;

Canvas.Pen.Width:=10;

Canvas.Pen.Style:= psSolid;

//фон циферблата

Canvas.Brush.Color:= clSkyBlue;//

Canvas.Ellipse(15,15,Form1.Width-15,Form1.Height-15);

// рисует 12 часовые марки

for i:=1 to 12 do

begin

Radians:= (i*6.28 / 12.0);

if(i>=10) then

begin

x:=nCenterX -8 + trunc((nCenterX - 20)* sin(Radians));

y:=nCenterY -4 - trunc((nCenterY - 20)* cos(Radians));

end

else

begin

x:=nCenterX -4 + trunc((nCenterX - 20)* sin(Radians));

y:=nCenterY -4 - trunc((nCenterY - 20)* cos(Radians));

end;

Canvas.TextOut(x,y,IntToStr(i));

end;

// рисует 12 точек

for i:=1 to 12 do

begin

Radians:= (i*6.28 / 12.0);

x:=nCenterX + trunc(((Form1.ClientWidth) / 2.6)*sin(Radians));

y:=nCenterY - trunc(((Form1.ClientHeight) / 2.6)*cos(Radians));

Canvas.Pen.Color:= clBlack;

Canvas.Pen.Width:= 3;

Canvas.Ellipse(x-2, y-2, x+2, y+2);

end;

//рисует минутную стрелку

Radians:= StrToFloat(FormatDateTime('n',Now))+

StrToFloat(FormatDateTime('s',Now)) /60.0;

Radians:= Radians * (6.28/ 60.0);

//цвет стрелки минутной

Canvas.Pen.Color:=clRed;//

Canvas.Pen.Width:=10;

Canvas.Pen.Style:=psSolid;

Canvas.MoveTo(nCenterX, nCenterY);

Canvas.LineTo(

nCenterX + trunc(((Form1.ClientWidth) / 3)*sin(Radians)),

nCenterY - trunc(((Form1.ClientHeight) / 3)*cos(Radians)));

//рисует часовую стрелку

Radians:= StrToFloat(FormatDateTime('h',Now))+

StrToFloat(FormatDateTime('n',Now))/60.0 +

StrToFloat(FormatDateTime('s',Now))/3600.0;

Radians:= Radians * (6.28/ 12.0);

//цвет стрелки часовой

Canvas.Pen.Color:=clLime;//

Canvas.Pen.Width:=11;

Canvas.Pen.Style:=psSolid;

Canvas.MoveTo(nCenterX, nCenterY);

Canvas.LineTo(

nCenterX + trunc(((Form1.ClientWidth)/4.5)*sin(Radians)),

nCenterY - trunc(((Form1.ClientHeight)/4.5)*cos(Radians)));

//секундная стрелка

Radians:= StrToFloat(FormatDateTime('s',Now));

Radians:= Radians * (6.28/60.0);

//цвет секундной стрелки

Canvas.Pen.Color:=clFuchsia;//

Canvas.Pen.Width:=3;

Canvas.Pen.Style:=psSolid;

Canvas.MoveTo(nCenterX, nCenterY);

Canvas.LineTo(

nCenterX + trunc((Form1.ClientWidth/3)*sin(Radians)),

nCenterY - trunc((Form1.ClientHeight/3)*cos(Radians)));

//рисует центральную точку

Canvas.Pen.Color:= clBlack;

Canvas.Pen.Width:= 3;

Canvas.Ellipse(nCenterX-2, nCenterY-2, nCenterX+2, nCenterY+2);

end;

{$R *.lfm}

end.

Примечания:

1. Пояснительная записка должна быть выполнена машинным способом, на одной стороне листа, шрифт Times New Roman 14. полуторный интервал.

2. Графические работы, как правило, выполняются в карандаше или автоматизированным способом.

3. Проектирование осуществляется на основании технического задания.

4. Программная документация и материалы к курсовому проекту (работе) оформляются в соответствии с требованиями ЕСПД.

5. Программный продукт, программные документы, презентация прикладываются на лазерном диске к курсовому проекту (работе).

 

Руководитель курсового проекта

(подпись)

 

1 Рассмотрено и одобрено предметной комиссией

Протокол № от «» 20 г.


Дата добавления: 2015-11-04; просмотров: 56 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
При выполнении заданий 21–26 используйте Бланк ответов №2. Сначала укажите номер задания, а затем запишите его решение и ответ. Пишите чётко и разборчиво.| Тема: Проблема багатокористувацького доступу.

mybiblioteka.su - 2015-2024 год. (0.014 сек.)