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

2016-07-29СтудИзба

Описание файла

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

Онлайн просмотр документа "48652"

Текст из документа "48652"

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

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

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

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

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

Кафедра ПМИ

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

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

Студент группы 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:\BP\BGI');

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

#include

#include

#include

int main(void)

{

int gdriver = DETECT, gmode, errorcode;

initgraph(&gdriver, &gmode, "C:\BORLANDC\BGI");

errorcode = graphresult();

if (errorcode != grOk)

{

printf("Graphics error: %s\n", 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

#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);

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее