Главная страница
Навигация по странице:

  • Определение языка программирования С++

  • Определение языка программирования Delphi

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

  • Контрольная работа Высокоуровневые методы информатики и программирования. кр высокоур методы. Сравнительный анализ языков программирования Delphi и C


    Скачать 39.37 Kb.
    НазваниеСравнительный анализ языков программирования Delphi и C
    АнкорКонтрольная работа Высокоуровневые методы информатики и программирования
    Дата06.09.2022
    Размер39.37 Kb.
    Формат файлаdocx
    Имя файлакр высокоур методы.docx
    ТипКонтрольная работа
    #663778

    Контрольная работа

    По дисциплине «Высокоуровневые методы информатики и программирования»

    Тема: «Сравнительный анализ языков программирования Delphi и C++»

    Определение языка программирования С++

    C++ (произносится «си плюс плюс») —  компилируемый статически типизированный язык программирования общего назначения. Поддерживая разные парадигмы программирования, сочетает свойства как высокоуровневых, так и низкоуровневых языков. В сравнении с его предшественником — языком C, — наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования. Название «C++» происходит от языка C, в котором унарный оператор ++ обозначает инкремент переменной.

    В языке С++ полностью поддерживаются принципы объектно-ориентированного программирования, включая три кита, на которых оно стоит: инкапсуляцию, наследование и полиморфизм. Инкапсуляция в С++ поддерживается посредством создания нестандартных (пользовательских) типов данных, называемых классами. Язык С++ поддерживает наследование. Это значит, что можно объявить новый тип данных (класс), который является расширением существующего.

    Хотя язык С++ справедливо называют продолжением С и любая работоспособная программа на языке С будет поддерживаться компилятором С++, при переходе от С к С++ был сделан весьма существенный скачок. Язык С++ выигрывал от своего родства с языком С в течение многих лет, поскольку многие программисты обнаружили, что для того, чтобы в полной мере воспользоваться преимуществами языка С++, им нужно отказаться от некоторых своих прежних знаний и приобрести новые, а именно: изучить новый способ концептуальности и решения проблем программирования. Перед тем как начинать осваивать С++, Страуструп и большинство других программистов, использущих С++ считают изучение языка С необязательным.

    C++ в настоящее время считается господствующим языком, используемым для разработки коммерческих продуктов, 90% игр пишутся на С++ с прменением DirectX.

    Определение языка программирования Delphi

    Delphi (Дельфи) — Среда программирования, использующая язык Object Pascal, разработанный фирмой Borland и изначально реализованный в её пакете Borland Delphi, от которого и получил в 2003 году своё нынешнее название. По сути является наследником языка Pascal с объектно-ориентированными расширениями.Свою историю язык Object Pascal ведет с первых Turbo Pascal`ей разработанных Никлаусом Виртом.

    В Delphi используется язык Object Pascal, который постоянно расширяется и дополняется Borland. Язык в полной мере поддерживает все требования, предъявляемые к объектно-ориентированному языку программирования. Как и положено строго типизированному языку, классы поддерживают только простое наследование, но зато интерфейсы могут иметь сразу несколько предков. К числу особенностей языка следует отнести поддержку обработки исключительных ситуаций (exceptions), а также перегрузку методов и подпрограмм (overload) в стиле C++.

    Сравнительная характеристика языков Delphi и C++


    1. по структуре программы

    Структура программ на Delphi и C++ похожа, в особенности еще и потому, что использовала я продукты одной и той же компании Borland: программа разделяется на заголовочную часть, раздел описаний и тело программы, состоящее из функций. В C++ нет четкого разделения на заголовочную часть и раздел описаний, т.к. переменные можно объявлять, в отличие от Delphi, прямо в теле программы, что является, бесспорно, плюсом, хотя и небольшим. Кроме того, в С++ нет четкого разделения на функции и процедуры, как в Паскале, т.к. любая процедура представляется как функция, которая не возвращает никакого значения.

    1. по типам данных и их описанию

    Как уже было сказано, в С++ переменные можно объявлять, в отличие от Delphi, прямо в теле программы, что упрощает процесс понимания исходного кода, а также добавляет удобства программисту. Типы данных в С++ и Delphi похожи, в большей степени зависят от версии компилятора. Фирма Borland старается как можно более унифицировать типы данных в компиляторе С++ и Delphi Оба языка являются объектно-ориентированными (опять же, это зависит от компилятора). Оба языка поддерживают большие объемы данных, например, массивы с большим количеством элементов.

    1. по описанию основных операторов

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

    1. по технологии создания программ

    Учитывая то, что оба языка предоставляют сравнимые фундаментальные возможности (объектно-ориентированный подход, работа с большими объемами данных, возможность низкоуровневого программирования), то к ним применимы одинаковые технологии создания программ: структурное программирование, объектно-ориентированное программирование.

    Практическая часть

    Найти такие простые числа, что сумма их цифр, а также сумма цифр следующего простого числа делилась на 7. Вывести число таких чисел. Кол-во элементов массива 32000

    Программа на языке программирования Delphi

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    51

    52

    53

    54

    55

    56

    57

    58

    59

    60

    61

    62

    63

    64

    65

    66

    67

    68

    69

    70

    71

    72

    73

    74

    75

    76

    77

    78

    79

    80

    81

    82

    83

    84

    85

    86

    87

    88

    89

    90

    91

    92

    93

    94

    95

    96

    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 ShowN1(x,y,o: Integer);

    var total:integer;

    o:=a[i];

    x:=o mod 10;

    y:=o div 10;

     

    total:=x+y;

    if total=7 then Label1.Caption:=o;

    end;

     

    Procedure ShowN2(x,y,z,t,o: Integer);

    var total:integer;

    o:=a[i]

    x:=o mod 100;

    y:=o mod 10;

    z:=o div 100;

    t:=x div 10;

     

    total:=z+y+t;

    if total=7 then Label1.Caption:=o;

    end;

     

    Procedure ShowN3(o,z,x,y,t,p,f: Integer);

    var total:integer;

    x:=o mod 1000;

    y:=x mod 100;

    z:=y mod 10;

    t:=o div 1000;

    p:=x div 100;

    f:=y div 10;

     

    total:=z+t+p+f;

    if total=7 then Label1.Caption:=o;

    end;

     

    Procedure ShowN4(o,x,y,z,t,p,f,u,q: Integer);

    var total:integer;

    x:=o mod 10000;

    y:=x mod 1000;

    z:=y mod 100;

    t:=z mod 10;

    p:=z div 10;

    f:=y div 100;

    u:=x div 1000;

    q:=o div 10000;

     

    total:=q+u+f+p+t;

    if total=7 then Label1.Caption:=a[i];

    end;

     

    procedure TForm1.Button1Click(Sender: TObject);

    var a:array[4..32000] of integer;

    var x,y: string; i:byte; s, x1,x2,x3,x4:integer;

    begin

    for i:=4 to 100 do

    a[i]:=s;

    x1:= s mod 2;

    x2:= s mod 3;

    x3:= s mod 5;

    x4:= s mod 7;

     

    if (x1<>0) or (x2<>0) or (x3<>0) or (x4<>0)

    then

    if (a[i]>42) and (a[i]<100) then ShowN1;

    if (a[i]>100) and (a[i]<1000) then ShowN2;

    if (a[i]>1000) and (a[i]<10000) then Shown3;

    if (a[i]>10000) and (a[i]<32000) then Shown4;

    end;

    end;

     

    end.


    Программа на языке программирования С++

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    #include

     

    using namespace std;

     

    bool IsPrime(int Digit)

    {

        bool flag=true;

        if(Digit<=3) flag=true;

        else if(Digit%2==0)

        {

            if(Digit!=2) flag=false;

        }

        else if(Digit>4)

        {

            int i=2;

            while((i<=Digit/2)&&(flag==true))

            {

                if(Digit%i==0) flag=false;

                i++;

            }

        }

        return flag;

    }

     

    int DigitSum(int Digit)

    {

        int Sum=0;

        int temp=Digit;

        while(temp!=0)

        {

            Sum=Sum+temp%10;

            temp=temp/10;

        }

        return Sum;

    }

     

    int main()

    {

        int A[32000];

        int i;

        int cnt=0;

        for(i=0;i<32000;i++) A[i]=i;

        for(i=1;i<31999;i++)

        {

            if((IsPrime(A[i])==true)&&(DigitSum(A[i+1])==7)) cnt++;

        }

        cout<
        getchar();

        return 0;

    }


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

    1. Голицына О.Л. Языки программирования: учеб. пособие. Издательство: "ИНФРА-М, Форум", 2019.

    2. В.П. Аверкин, А.И. Бобровский, В.В. Веснич и др. Программирование на С++ Под ред. А.Д. Хомоненко . – СПб.: Корона принт, 2018. – 252 с.

    3. Джарод Холингвэрт, Дэн Баттерфилд, Боб Сворт и др. C++Builder 5: Рук. разработчика: [В 2 т.: Пер. с англ.] / – М.: Вильямс, 2019. – 824 с.

    4. Архангельский А.Я. Программирование в С++Builder 6 / А.Я. Архангельский . – М.: Бином, 2017. – 1151 с.

    5. Елманова Н.З. Введение в Borland C++ Builder / Н.З. Елманова, С.П. Кошель – М.: Диалог-МИФИ, 2017. – 272 с.

    6. Паппас Крис Программирование на С и С++: [Учеб. пособие: Пер. с англ.] / Крис Паппас, Уильям Мюррей . – Киев: Ирина, 2019. – 318 с.

    7. Павловская Т.А. C/C++: Программирование на языке высокого уровня: Учебник для вузов, Питер, 2017.

    8. Желонкин А. Основы программирования в интегрированной среде DELPHI. − Издательство: Бином. Лаборатория знаний, 2018 г. − С. 240.

    9. Лафоре Р. Объектно-ориентированное программирование в С++ Object-Oriented Programming in C++ − Издательство: Питер, 2019 г.

    10. Вик Курилович Visual Basic. − Издательство «Солон-Пресс», 2017 г., −С. 384.


    Братск 2021г.


    написать администратору сайта