РефератыИнформатика, программированиеРаРазработка программы на четырех языках программирования

Разработка программы на четырех языках программирования

Министерство образования и науки Российской Федерации


Федеральное агентство по образованию


Государственное образовательное учреждение высшего профессионального образования


« Комсомольский - на - Амуре государственный технический университет »


Факультет компьютерных технологий


Кафедра ПМИ


РАСЧЕТНО-ГРАФИЧЕСКОЕ ЗАДАНИЕ


по дисциплине ‹‹Языки программирования››


Студент группы 8КБ-1 Д.И.Карташов


Преподаватель И.А. Трещёв


Тема
:
Изучение IDE(Integrated Development Environment) Turbo Pascal 7.0, Borland C++ 3.11, Delphi 7, Builder C++6.0 .


Цель работы:
На четырех языках программирования (Turbo Pascal 7.0, Borland C++ 3.11, Delphi 7, Builder C++ 6.0) написать программу, которая выводит на экран имя и фамилию студента. Для написания программы использовать стандартные средства графики и простейшие геометрические фигуры.


Содержание


Введение


1. Блок кода


2. Блок выполнения программы


Вывод


Список использованных источников


Введение


Turbo Pascal — Интегрированная среда разработки программного обеспечения для платформ DOS и Windows 3.x и язык программирования в этой среде, диалект языка Паскаль от фирмы Borland.


Turbo Pascal — это среда разработки для языка программирования Паскаль. Используемый в Turbo Pascal диалект базировался на более раннем UCSD Pascal, получившем распространение, в первую очередь, на компьютерах серии Apple II. Компилирующая компонента Turbo Pascal была основана на компиляторе Blue Label Pascal, первоначально созданном в 1981 году Андерсом Хейлсбергом для операционной системы NasSys микрокомпьютера Nascom. Позднее он был переписан как Compass Pascal для операционной системы CP/M, затем как Turbo Pascal для DOS и CP/M.


Достоинства:


1.Удобная среда разработки, включающая функциональный отладчик, доступный в любой момент.


2.Контекстная справочная система, по которой можно изучать язык без обращения к сторонним источникам.


3.Высокая скорость компиляции, высокая скорость выполнения откомпилированных программ.


4.Встроенная возможность использовать вставки на языке ассемблера.


Недостатки:


1.Компилятор рассчитан на реальный режим DOS, применение которого сходит на нет. Однако в последних версиях компилятора и среды введена поддержка защищённого режима вместе с соответствующим отладчиком (TD).


2.В модуле CRT имеется ошибка (некорректный подсчёт количества циклов для функции delay, не рассчитанный на быстрые процессоры, процессоры с переменной частотой и многозадачные среды), из-за которой при запуске программы на компьютерах с тактовой частотой более 200 MHz сразу происходило аварийное завершение с сообщением «Runtime error 200 at…». Существуют разные варианты исправления модуля CRT. В варианте Клауса Хартнегга ошибка 200 не возникает, но длительность Delay на быстрых компьютерах меньше желаемой, и эта проблема по незнанию иногда тоже считается недостатком Turbo Pascal.


Borland C++ — среда программирования (IDE) на языках Си и C++ для DOS, Windows и Windows NT. Потомок Turbo C. Его дебаггер Turbo Debugger был написан для защищённого режима DOS.


C++ Builder (по-русски обычно произносят [си-плюс-плюс би́лдэр], [си би́лдэр]) - программный продукт, инструмент быстрой разработки приложений (RAD), интегрированная среда программирования (IDE), система, используемая программистами для разработки программного обеспечения на языке C++.


C++ Builder объединяет в себе комплекс объектных библиотек (STL, VCL, CLX, MFC и др.), компилятор, отладчик, редактор кода и многие другие компоненты. Цикл разработки аналогичен Delphi. Большинство компонентов, разработанных в Delphi, можно использовать и в C++ Builder без модификации, но, к сожалению, обратное утверждение не верно.


C++ Builder содержит инструменты, которые при помощи drag-and-drop действительно делают разработку визуальной, упрощает программирование благодаря встроенному WYSIWYG - редактору интерфейса и пр.


Delphi — язык программирования, который используется в одноимённой среде разработки. Сначала язык назывался Object Pascal. Начиная со среды разработки Delphi 7.0, в официальных документах Borland стала использовать название Delphi для обозначения языка Object Pascal.


Delphi — результат развития языка Турбо Паскаль, который, в свою очередь, развился из языка Паскаль. Паскаль был полностью процедурным языком, Турбо Паскаль, начиная с версии 5.5, добавил в Паскаль объектно-ориентированные свойства, а в Object Pascal динамическую идентификацию типа данных с возможностью доступа к метаданным классов (то есть к описанию классов и их членов) в компилируемом коде, также называемом интроспекцией — данная технология получила обозначение RTTI. Так как все классы наследуют функции базового класса TObject, то любой указатель на объект можно преобразовать к нему, после чего воспользоваться методом ClassType и функцией TypeInfo, которые и обеспечат интроспекцию.


Также отличительным свойством Object Pascal от С++ является то, что объекты по умолчанию располагаются в динамической памяти. Однако можно переопределить виртуальные методы NewInstance и FreeInstance класса TObject. Таким образом, абсолютно любой класс может осуществить «желание» «где хочу — там и буду лежать». Соответственно организуется и «многокучность».


1. Блок кода


Рисование с помощью графики


Turbo Pascal 7.0


Program myName;


uses Graph;


var


grDriver: Integer;


grMode: Integer;


ErrCode: Integer;


begin


grDriver := Detect;


InitGraph(grDriver, grMode,'D:BPBGI');


ErrCode := GraphResult;


if ErrCode = grOk then


begin


{Family}


Line(10, 10,10 ,50 );


Line(10,20,30,5);


Line(10,30,30,50);


Line(40,50,50,10);


Line(50,10,60,50);


Line(40,30,65,30);


Line(70,10,70,50);


Line(70,10,80,10);


Line(70,30,80,30);


Line(80,10,80,30);


Line(80,10,100,10);


Line(90,10,90,50);


Line(100,50,110,10);


Line(110,10,120,50);


Line(100,30,120,30);


Line(125,10,125,50);


Line(130,10,130,50);


Line(135,10,135,50);


Line(125,50,135,50);


Circle(155,30,18);


Line(180,10,180,50);


Circle(190,20,9);


Circle(190,40,9);


{Name}


Line(30,100,40,80);


Line(40,80,50,100);


Line(25,100,55,100);


Line(25,100,25,105);


Line(55,100,55,105);


Line(60,105,70,80);


Line(70,80,90,105);


Line(60,90,90,90);


Line(107,105,107,70);


Line(107,85,115,85);


Line(115,105,115,70);


Line(120,70,120,105);


Line(120,105,130,70);


Line(130,70,130,105);


Line(135,105,145,70);


Line(145,70,155,105);


Readln;


CloseGraph;


end


else


Writeln('Graphics error:', GraphErrorMsg(ErrCode));


end.


Borland
C
++ 3.11


#include <graphics.h>


#include <stdlib.h>


#include <stdio.h>


#include <conio.h>


int main(void)


{


int gdriver = DETECT, gmode, errorcode;


initgraph(&gdriver, &gmode, "C:BORLANDCBGI");


errorcode = graphresult();


if (errorcode != grOk)


{


printf("Graphics error: %sn", grapherrormsg(errorcode));


printf("Press any key to halt:");


getch();


exit(1);


}


{Family}


Line(10, 10,10 ,50 );


Line(10,20,30,5);


Line(10,30,30,50);


Line(40,50,50,10);


Line(50,10,60,50);


Line(40,30,65,30);


Line(70,10,70,50);


Line(70,10,80,10);


Line(70,30,80,30);


Line(80,10,80,30);


Line(80,10,100,10);


Line(90,10,90,50);


Line(100,50,110,10);


Line(110,10,120,50);


Line(100,30,120,30);


Line(125,10,125,50);


Line(130,10,130,50);


Line(135,10,135,50);


Line(125,50,135,50);


Circle(155,30,18);


Line(180,10,180,50);


Circle(190,20,9);


Circle(190,40,9);


{Name}


Line(30,100,40,80);


Line(40,80,50,100);


Line(25,100,55,100);


Line(25,100,25,105);


Line(55,100,55,105);


Line(60,105,70,80);


Line(70,80,90,105);


Line(60,90,90,90);


Line(107,105,107,70);


Line(107,85,115,85);


Line(115,105,115,70);


Line(120,70,120,105);


Line(120,105,130,70);


Line(130,70,130,105);


Line(135,105,145,70);


Line(145,70,155,105);


getch();


closegraph();


return 0;


}


Delphi7


unit GRAPH;


interface


uses


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


Dialogs, StdCtrls, ExtCtrls;


type


TForm1 = class(TForm)


Button1: TButton;


Image1: TImage;


procedure Button1Click(Sender: TObject);


private


{

Private declarations }


public


{ Public declarations }


end;


var


Form1: TForm1;


implementation


{$R *.dfm}


procedure TForm1.Button1Click(Sender: TObject);


begin


with Image1 do begin


{К}


Canvas.MoveTo(140,110);


Canvas.LineTo(140,170);


Canvas.MoveTo(170,110);


Canvas.LineTo(140,140);


Canvas.LineTo(170,170);


{А}


Canvas.MoveTo(145,90);


Canvas.LineTo(160,30);


Canvas.LineTo(175,90);


Canvas.MoveTo(155,60);


Canvas.LineTo(170,60);


{Р}


Canvas.MoveTo(145,90);


Canvas.LineTo(160,30);


Canvas.LineTo(175,90);


Canvas.MoveTo(155,60);


Canvas.LineTo(170,60);


{А}


Canvas.MoveTo(180,90);


Canvas.LineTo(160,35);


Canvas.LineTo(175,90);


Canvas.MoveTo(155,60);


Canvas.LineTo(170,60);


{Ш}


Canvas.MoveTo(60,30);


Canvas.LineTo(60,90);


Canvas.LineTo(90,30);


Canvas.LineTo(90,90);


{О}


Canvas.Ellipse(225,30,255,90);


{В}


Canvas.MoveTo(265,30);


Canvas.LineTo(265,90);


Canvas.Ellipse(265,30,295,60);


Canvas.Ellipse(265,60,300,90);


{Д}


Canvas.MoveTo(100,110);


Canvas.LineTo(100,170);


Canvas.LineTo(130,110);


Canvas.LineTo(130,170);


Canvas.MoveTo(170,110);


Canvas.LineTo(140


{А}


Canvas.MoveTo(140,110);


Canvas.LineTo(140,170);


Canvas.MoveTo(170,110);


Canvas.LineTo(140,140);


Canvas.LineTo(170,170);


{Н}


Canvas.MoveTo(180,110);


Canvas.LineTo(180,170);


Canvas.LineTo(210,110);


Canvas.LineTo(210,170);


{И}


Canvas.MoveTo(220,110);


Canvas.LineTo(250,110);


Canvas.MoveTo(235,110);


Canvas.LineTo(235,170);


{Л}


Canvas.MoveTo(260,170);


Canvas.LineTo(275,110);


Canvas.LineTo(290,170);


Canvas.MoveTo(270,140);


end;


end;


end.


Builder
C
++ 6.0


//---------------------------------------------------------------------------


#include <vcl.h>


#pragma hdrstop


#include "Unit1.h"


//---------------------------------------------------------------------------


#pragma package(smart_init)


#pragma resource "*.dfm"


TForm1 *Form1;


//---------------------------------------------------------------------------


__fastcall TForm1::TForm1(TComponent* Owner)


: TForm(Owner)


{


}


//---------------------------------------------------------------------------


void __fastcall TForm1::Button1Click(TObject *Sender)


{


Form1->Image1-> Canvas->


Form1->Image1-> Canvas->MoveTo(60,30);


Form1->Image1-> Canvas->LineTo(60,90);


Form1->Image1-> Canvas->LineTo(90,30);


Form1->Image1-> Canvas->LineTo(90,90);


Form1->Image1-> Canvas->MoveTo(100,30);


Form1->Image1-> Canvas->LineTo(100,90);


Form1->Image1-> Canvas->Ellipse(100,30,130,60);


Form1->Image1-> Canvas->Ellipse(100,60,135,90);


Form1->Image1-> Canvas->MoveTo(145,90);


Form1->Image1-> Canvas->LineTo(160,30);


Form1->Image1-> Canvas->LineTo(175,90);


Form1->Image1-> Canvas->MoveTo(155,60);


Form1->Image1-> Canvas->LineTo(170,60);


Form1->Image1-> Canvas->MoveTo(185,30);


Form1->Image1-> Canvas->LineTo(185,90);


Form1->Image1-> Canvas->MoveTo(185,60);


Form1->Image1-> Canvas->LineTo(215,60);


Form1->Image1-> Canvas->MoveTo(215,30);


Form1->Image1-> Canvas->LineTo(215,90);


Form1->Image1-> Canvas->Ellipse(225,30,255,90);


Form1->Image1-> Canvas->MoveTo(265,30);


Form1->Image1-> Canvas->LineTo(265,90);


Form1->Image1-> Canvas->MoveTo(60,110);


Form1->Image1-> Canvas->LineTo(60,170);


Form1->Image1-> Canvas->MoveTo(60,140);


Form1->Image1-> Canvas->LineTo(90,140);


Form1->Image1-> Canvas->MoveTo(90,110);


Form1->Image1-> Canvas->LineTo(90,170);


Form1->Image1-> Canvas->MoveTo(100,110);


Form1->Image1-> Canvas->LineTo(100,170);


Form1->Image1-> Canvas->LineTo(130,110);


Form1->Image1-> Canvas->LineTo(130,170);


Form1->Image1-> Canvas->MoveTo(140,110);


Form1->Image1-> Canvas->LineTo(140,170);


Form1->Image1-> Canvas->MoveTo(170,110);


Form1->Image1-> Canvas->LineTo(140,140);


Form1->Image1-> Canvas->LineTo(170,170);


Form1->Image1-> Canvas->MoveTo(180,110);


Form1->Image1-> Canvas->LineTo(180,170);


Form1->Image1-> Canvas->LineTo(210,110);


Form1->Image1-> Canvas->LineTo(210,170);


Form1->Image1-> Canvas->MoveTo(220,110);


Form1->Image1-> Canvas->LineTo(250,110);


Form1->Image1-> Canvas->MoveTo(235,110);


Form1->Image1-> Canvas->LineTo(235,170);


Form1->Image1-> Canvas->MoveTo(260,170);


Form1->Image1-> Canvas->LineTo(275,110);


Form1->Image1-> Canvas->LineTo(290,170);


Form1->Image1-> Canvas->MoveTo(270,140);


Form1->Image1-> Canvas-> LineTo(280,140);


}


//---------------------------------------------------------------------------


Вывод текста на экран


Turbo Pascal 7.0


program name;


uses crt;


begin


clrscr;


write('Karasov Danil ');


readln;


end.


Borland C++ 3.11


#include<stdio.h>


int main (void)


{


printf("'Karasov Danil ");


return 0;


}


Delphi7


unit Unit1;


interface


uses


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


Dialogs, StdCtrls;


type


TForm1 = class(TForm)


Label1: TLabel;


Button1: TButton;


procedure Button1Click(Sender: TObject);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form1: TForm1;


implementation


{$R *.dfm}


procedure TForm1.Button1Click(Sender: TObject);


begin


Label1.Caption:='Карташов Данил';


end;


end.


Borland C++ 3.11


//---------------------------------------------------------------------------


#include <vcl.h>


#pragma hdrstop


#include "Unit1.h"


//---------------------------------------------------------------------------


#pragma package(smart_init)


#pragma resource "*.dfm"


TForm1 *Form1;


//---------------------------------------------------------------------------


__fastcall TForm1::TForm1(TComponent* Owner)


: TForm(Owner)


{


}


//---------------------------------------------------------------------------


void __fastcall TForm1::Button1Click(TObject *Sender)


{


Form1->Label1->Caption = "Карташов Данил";


}


//---------------------------------------------------------------------------


2. Блок выполнения программы


Рисование с помощью графики


Turbo Pascal 7.0



Borland C++ 3.11



Delphi7



Builder C++ 6.0



Вывод текста на экран


Turbo Pascal 7.0



Borland C++ 3.11



Delphi7



Builder C++ 6.0



Вывод


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


Список использованных источников


1. Джаррод Холингворт, Боб Сворт, Марк Кэшмэн, Поль Густавсон Borland C++ Builder 6. Руководство разработчика = Borland C++ Builder 6 Developer's Guide. — М.: «Вильямс», 2004. — С. 976.


2. Нил Дж. Рубенкинг. Язык программирования Delphi для «чайников». Введение в Borland Delphi 2006 = Delphi for Dummies. — М.: Диалектика, 2007. — 336 с.


3. Хавьер Пашеку. Программирование в Borland Delphi 2006 для профессионалов = Delphi for .NET Developer’s Guide. — М.: Вильямс, 2006. — 944 с.


4. Е.А. Зуев. Программирование на языке Turbo Pascal 6.0, 7.0, М.:Веста,Радио и связь, 1993, — С.376.


5. Моргун Александр Николаевич. Справочник по Turbo Pascal для студентов. — М.: Диалектика, 2006. — С. 608.

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Разработка программы на четырех языках программирования

Слов:1440
Символов:21044
Размер:41.10 Кб.