Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Программа игры Кости

Тип Реферат
Предмет Информатика
Просмотров
355
Размер файла
2 б
Поделиться

Ознакомительный фрагмент работы:

Программа игры Кости

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

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

Государственное образовательное учреждение

Профессионального высшего образования

Иркутский государственный технический университет

Факультет кибернетики

Кафедра вычислительной техники

Отчет

О курсовой работе

Игра "Кости"

По дисциплине "Программирование на языке высокого уровня"

Выполнил:

Студент гр. ЭВМ-08-2

Григорьев Д.Е.

Проверила:

Егорова Н.Н.

Иркутск 2010

Оглавление

Постановка задачи

Спецификации модулей

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

Сравнение языков - Паскаль и С++

Листинг программы Delphi

Заключение

Использованная литература

Постановка задачи

Разработать программу, моделирующую игру "Кости". Играющий называет любое число от 2 до 12 и ставку, которую он делает в этот ход. В начальный момент у играющего 100 очков. В программе должно присутствовать графическое изображение поверхности кубика при каждом ходе игрока. Программа работает с использованием генератора псевдослучайных чисел.

Таблица внешних спецификаций

ИмяТипНазначениеОдз
1a,bIntegerЗначения бросков кубиков [1. .6]
2XIntegerЗадуманное число [2. .12]
4NsIntegerТекущий счет [0…1000]
5stIntegerставка [1. ns]
6SumIntegerСумма броска [2. .12]
7KIntegerВсего игр [0. .2147483647]
8vIntegerКоличество выигрышей [0. .2147483647]
9PintegerКоличество проигрышей [0. .2147483647]
10NameAnsistringИмя игрокаВсе символы


Cхема иерархии модулей

Спецификации модулей

ИмяНазначениеПараметры
1Form1Модуль программы для регистрации игрока-
2Form2Модуль программы для игры-
3

Main

Menu

Меню программы

Файл: Новая игра; Выход.

Справка: О программе; Правила игры

4Прием ставкиПринимает ставку игрокаSt-ставка, x-задуманное число, ns-ограничение ставки
5Бросок костейБросает игральные кости и выводит результатA,b-значение броска, sum-сумма броска, k-количество бросков, v-количество выигрышей, p-количество проигрышей, ns-текущий счет.
6Сброс результатовВозвращает исходное значение переменных p,v,k,nsI, v, l, ns
7Новая играНачинает новую игруI, v, l, ns.
8ВыходВыход из игры-
9Form4

О программе

-
10Form5Правила игры-
11Form3Игра проиграна-

Таблица тестов

Входные данныеРезультатКомментарии
namexst
1Name310

Первый кубик = 3; Второй кубик = 1;

Сумма кубиков = 4; Вы проиграли!! =)

Количество поражений: 1 Количество побед: 0

Соотношение побед и поражений: 0 к 1

-
2Name55

Первый кубик = 4; Второй кубик = 1;

Сумма кубиков = 5; Вы проиграли!! =)

Вы выйграли! Ваш выигрышь увеличин в 4 раза =)

Количество поражений: 1 Количество побед: 1

Соотношение побед и поражений: 1 к 1

-
3Name715

Первый кубик = 4; Второй кубик = 2;

Сумма кубиков = 6; Вы выиграли! = (

Количество поражений: 1 Количество побед: 2

Соотношение побед и поражений: 2 к 1

-
4Name012Проверьте введенные данные-
5Name1521Проверьте введенные данные-
6Name2Проверьте введенные данные
7Name3Проверьте введенные данные
8Name450Проверьте введенные данныеПри текущем счете меньшем чем ставка
9--Введите имя игрока

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

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

Рис.1 Регистрация игрока

По нажатию кнопки "Начать игру" появляется основное окно программы (рис.2).

Рис.2 Основное окно программы

Для начала игры необходимо сделать ставку, не превышающую текущий счет и задумать число от 2 до 12. После заполнения полей "Ставка" и "Число" нажимаем кнопку "Принять". После чего активируется кнопка "Бросить кубики" (Рис.4)

Рис.4 "Бросить кубики"

После броска кубиков программа считает их сумму и выводит результат в поле расположенное справа от кнопки, в случае если сумма кубиков меньше задуманного числа вы выигрываете, и ваша ставка прибавляется к текущему счету (рис.5).

Если сумма кубиков равна задуманному числу, то ваша ставка умножается на 4 и так же прибавляется к текущему счету (Рис.6).

В случае если сумма кубиков больше задуманного числа Вы проигрываете и ваша ставка отнимается от текущего счета (рис.7). Если у вас закончились очки появится диалоговое окно, в котором вам будут предложены следующие действия (рис.8).:

"Повторить" - начинает игру заново.

"Выход" - выходит из игры.


Рис.5 Сумма кубиков меньше задуманного числа

Рис.6 Сумма кубиков равна ставке

Рис.7 Сумма кубиков больше задуманного числа.

Рис.6 Вы проиграли!

Для очистки результатов нажмите кнопку "Очистить результаты".

Чтобы ознакомится с правилами игры, нажмите: "Справка" - > "Правила игры".

Для начала новой игры зайдите в меню "файл"->"Новая Игра", для выхода "файл"-> "Выход".

Сравнение языков - Паскаль и С++

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

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

Типы данных и их описание

PascalДиапазон значенийРазмерC++
Типы, имеющие одинаковый диапазон значений
Shortint-128. .1271 байтChar
Byte0. .2551 байтUnsigned char
Word0. .655352 байтаUnsigned short
Integer-32767. .327682 байтаShort int
Longint-2147483648…21474836474/2 байтаLong int
Extended3.4E-4932. .1.1E+493210 байтLong Double
Типы, имеющие разный диапазон значений
Integer-32767. .327682 байта-
Real2.9E-39. .1.7E+386 байт-
Single1.5E-45…3.4E+384 байта-
Double5.0E-324...1.7E+3088 байт-
Comp-9.2E+18…9.2E+188 байт-
-Зависит от реализации2/4 байтаInt
-Зависит от реализации2/4 байтаUnsigned int
-0. .42949672954 байтаUnsigned longint
-+- (3.4E-38…3.4E+38) 4 байтаFloat
-+- (1.7E-308…1.7E+308) 8 байтDouble
-+- (3.4E-4932…1.1E+4932) 10 байтLong double

Описание основных операторов

PascalC++
Структурный оператор

Begin

End;

{

}

Условные операторы
If <условие>then <действие>

if <условие> <действие> или

<условие?: действие>

If <условие> then <действие>

Else <действие>

if <условие> <действие>

else <действие> или

<условие?: действие: действие>

Case <переменная> of

<значение>: действие;

<значение>: действие;

End;

Switch

{

Case <значение>:

{

}

Case <значение>^

{

}

Циклические операторы
For <переменная>: =<значение1> to <значение2> do …

for (<переменная>=<значение1>;

<переменная> <><значение2>;

<переменная>++ (--);)

{

}

While <условие> do …

While <условие>

{

}

Repeat

<действие>

Until <условие>

Do

{

}

While <условие>

Операторы ввода-вывода
Read (); Cin>>;
Write (); Cout<<;
Логические операторы
Not<переменная>! =<переменная>
<переменная1> and <переменная2><переменная1> & <переменная2>
<переменная1> or <переменная2><переменная1> || <переменная2>

Листинг программы С++

Form1

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

#include <vcl. h>

#pragma hdrstop

#include "Unit1. h"

#include "Unit2. h"

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

#pragma package (smart_init)

#pragma resource "*. dfm"

TForm1 *Form1;

AnsiString name;

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

__fastcall TForm1:: TForm1 (TComponent* Owner)

: TForm (Owner)

{

Image3->Visible=false;

}

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

void __fastcall TForm1:: Animate1Close (TObject *Sender)

{

Edit1->Text=2;

}

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

void __fastcall TForm1:: Image2MouseMove (TObject *Sender, TShiftState Shift,

int X, int Y)

{

Image3->Visible=true;

}

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

void __fastcall TForm1:: Image2MouseDown (TObject *Sender,

TMouseButton Button, TShiftState Shift, int X, int Y)

{

Image3->Show ();

}

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

void __fastcall TForm1:: Image2MouseUp (TObject *Sender, TMouseButton Button,

TShiftState Shift, int X, int Y)

{

Image3->Hide ();

name=Edit1->Text;

if ( (name! ="") && (name! =" ")) {

Form2->Show ();

Form2->Label4->Caption=name;

Form1->Hide (); }

else

{ShowMessage ("Ââåäèòå èìÿ"); }

}

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

Form2

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

#include <vcl. h>

#pragma hdrstop

#include "Unit1. h"

#include "Unit2. h"

#include "Unit4. h"

#include "Unit3. h"

#include "Unit1. h"

#include "Unit5. h"

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

#pragma package (smart_init)

#pragma resource "*. dfm"

TForm2 *Form2;

int i=0;

int v=0;

int l=0;

int a,b,sum=0;

int h,x,st,ns;

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

__fastcall TForm2:: TForm2 (TComponent* Owner)

: TForm (Owner)

{

Form2->Caption = ("Êîñòè " + DateToStr (Now ()));

Button2->Enabled=false;

Button3->Enabled=false;

}

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

void __fastcall TForm2:: N4Click (TObject *Sender)

{

Form1->Close ();

}

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

void __fastcall TForm2:: Button2Click (TObject *Sender)

{

Button3->Enabled=true;

a=random (6) +1;

b=random (6) +1;

i=i+1;

Memo1->Lines->Add ("Èãðîê " + Label4->Caption);

Memo1->Lines->Add ("Áðîñîê ¹ " + IntToStr (i));

Memo1->Lines->Add ("Ïåðâûé êóáèê = " + IntToStr (a));

Memo1->Lines->Add ("Âòîðîé êóáèê = " + IntToStr (b));

switch (a)

{

case 1: Image2->Picture->LoadFromFile ("1. jpg"); break;

case 2: Image2->Picture->LoadFromFile ("2. jpg"); break;

case 3: Image2->Picture->LoadFromFile ("3. jpg"); break;

case 4: Image2->Picture->LoadFromFile ("4. jpg"); break;

case 5: Image2->Picture->LoadFromFile ("5. jpg"); break;

case 6: Image2->Picture->LoadFromFile ("6. jpg"); break;

}

switch (b)

{

case 1: Image3->Picture->LoadFromFile ("1. jpg"); break;

case 2: Image3->Picture->LoadFromFile ("2. jpg"); break;

case 3: Image3->Picture->LoadFromFile ("3. jpg"); break;

case 4: Image3->Picture->LoadFromFile ("4. jpg"); break;

case 5: Image3->Picture->LoadFromFile ("5. jpg"); break;

case 6: Image3->Picture->LoadFromFile ("6. jpg"); break;

}

sum=a+b;

Memo1->Lines->Add ("Ñóììà êóáèêîâ = " + IntToStr (sum));

if (sum == x)

{

Memo1->Lines->Add ("Âû âûèãðàëè! Âàø âûéãðûøü óâåëè÷èí = (");

ns=ns+st*4;

Animate1->Visible=true;

Animate1->FileName= ("win. avi");

Animate1->Play (1,60,10000);

v=v+1;

Memo1->Lines->Add ("Êîëè÷åñòâî ïîáåä: "+IntToStr (v));

Memo1->Lines->Add ("Êîëè÷åñòâî ïîðàæåíèé: "+IntToStr (l));

}

else

{

if (sum < x)

{

Memo1->Lines->Add ("Âû âûèãðàëè!! = (");

ns=ns+st;

Animate1->Visible=true;

Animate1->FileName= ("win. avi");

Animate1->Play (1,60,10000);

v=v+1;

Memo1->Lines->Add ("Êîëè÷åñòâî ïîáåä: "+IntToStr (v));

Memo1->Lines->Add ("Êîëè÷åñòâî ïîðàæåíèé: "+IntToStr (l));

}

}

if (sum > x)

{

Memo1->Lines->Add ("Âû ïðîèãðàëè!! =)");

ns=ns-st;

Animate1->Visible=true;

Animate1->FileName= ("loose. avi");

Animate1->Play (1,60,10000);

l=l+1;

Memo1->Lines->Add ("Êîëè÷åñòâî ïîðàæåíèé: "+IntToStr (l));

Memo1->Lines->Add ("Êîëè÷åñòâî ïîáåä: "+IntToStr (v));

}

Edit1->Text=IntToStr (ns);

if (ns<=0) {

Form3->ShowModal ();

}

Memo1->Lines->Add ("Ñîîòíîøåíèå ïîáåä è ïîðàæåíèé: "+IntToStr (v) +" ê "+IntToStr (l));

Button2->Enabled=true;

Button3->Enabled=true;

// Button4->Enabled=true;

}

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

void __fastcall TForm2:: FormClose (TObject *Sender, TCloseAction &Action)

{

Form1->Close ();

}

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

void __fastcall TForm2:: Button1Click (TObject *Sender)

{

if ( (Edit2->Text! ="") && (Edit3->Text! ="")) {

ns=StrToInt (Edit1->Text);

st=StrToInt (Edit2->Text);

x=StrToInt (Edit3->Text);

if ( (x<2) || (x>12) || (st>ns)) {ShowMessage ("Ïðîâåðüòå ïðàâèëüíîñòü ââîäà"); }

else

Button2->Enabled=true;

}

else

{ShowMessage ("Îäíî èç ïîëåé íå çàïîëíåíî!"); }

}

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

void __fastcall TForm2:: Edit2Change (TObject *Sender)

{

Button2->Enabled=false;

}

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

void __fastcall TForm2:: Edit3Change (TObject *Sender)

{

Button2->Enabled=false;

}

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

void __fastcall TForm2:: Edit2KeyPress (TObject *Sender, char &Key)

{

if ( (Key >= '0') && (Key <= '9') || (Key == 8)) {} // öèôðû

else

{

Key = 0; // íå öèôðà

}

}

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

void __fastcall TForm2:: Edit3KeyPress (TObject *Sender, char &Key)

{

if ( (Key >= '0') && (Key <= '9') || (Key == 8)) {} // öèôðû

else

{

Key = 0; // íå öèôðà

}

}

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

void __fastcall TForm2:: Image1MouseMove (TObject *Sender, TShiftState Shift,

int X, int Y)

{

Label5->Caption = TimeToStr (Now ());

}

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

void __fastcall TForm2:: N3Click (TObject *Sender)

{

Form2->Hide ();

Form1->Show ();

Edit1->Text=100;

Edit2->Text="2";

Edit3->Text="3";

i,v,l=0;

Button2->Enabled=false;

Button3->Enabled=false;

Form1->Edit1->Text="";

Memo1->Clear ();

}

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

void __fastcall TForm2:: Button3Click (TObject *Sender)

{

Memo1->Clear ();

i,v,l=0;

Edit1->Text=100;

Button3->Enabled=false;

Animate1->Visible=false;

}

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

void __fastcall TForm2:: N5Click (TObject *Sender)

{

Form4->Show ();

}

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

void __fastcall TForm2:: N6Click (TObject *Sender)

{

Form5->Show ();

}

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

Form3

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

#include <vcl. h>

#pragma hdrstop

#include "Unit3. h"

#include "Unit2. h"

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

#pragma package (smart_init)

#pragma resource "*. dfm"

TForm3 *Form3;

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

__fastcall TForm3:: TForm3 (TComponent* Owner)

: TForm (Owner)

{

}

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

void __fastcall TForm3:: Button1Click (TObject *Sender)

{

Form2->N3->Click ();

Form3->Close ();

}

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

void __fastcall TForm3:: Button2Click (TObject *Sender)

{

Form2->Close ();

}

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

Листинг программы Delphi

Form2

unit Unit2;

interface

uses

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

Dialogs, StdCtrls, Menus, jpeg, ExtCtrls, ComCtrls;

type

TForm2 = class (TForm)

Image1: TImage;

Label1: TLabel;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

Edit1: TEdit;

Label2: TLabel;

Edit2: TEdit;

Label3: TLabel;

Button1: TButton;

Edit3: TEdit;

Label4: TLabel;

Button2: TButton;

Memo1: TMemo;

Image2: TImage;

Image3: TImage;

Animate1: TAnimate;

Button3: TButton;

Label5: TLabel;

procedure Button1Click (Sender: TObject);

procedure FormClose (Sender: TObject; var Action: TCloseAction);

procedure N3Click (Sender: TObject);

procedure Edit2Change (Sender: TObject);

procedure Edit1Change (Sender: TObject);

procedure Edit1KeyPress (Sender: TObject; var Key: Char);

procedure Edit2KeyPress (Sender: TObject; var Key: Char);

procedure Button2Click (Sender: TObject);

procedure N2Click (Sender: TObject);

procedure Button3Click (Sender: TObject);

procedure N5Click (Sender: TObject);

procedure N6Click (Sender: TObject);

procedure Image1MouseMove (Sender: TObject; Shift: TShiftState; X,

Y: Integer);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

k,v,p,a,b,ns,st,x: integer;

prov1, prov2: string;

implementation

uses Unit1, Unit3, Unit4, Unit5;

{$R *. dfm}

procedure TForm2. Button1Click (Sender: TObject);

begin

prov1: =Edit1. Text;

prov2: =Edit2. Text;

if ( (prov1<>'') or (prov2<>'')) then begin

x: =Strtoint (Edit2. Text);

st: =Strtoint (Edit1. Text);

ns: =Strtoint (Edit3. Text);

if ( (x<2) or (x>12) or (st>ns)) then

begin

ShowMessage ('Проверьте правильность вводимых данных');

end

else

begin

button2. Enabled: =true;

end;

end

else begin

ShowMessage ('Проверьте правильность вводимых данных'); end;

end;

procedure TForm2. FormClose (Sender: TObject; var Action: TCloseAction);

begin

Form1. close;

end;

procedure TForm2. N3Click (Sender: TObject);

begin

form1. close;

end;

procedure TForm2. Edit2Change (Sender: TObject);

begin

Button2. Enabled: =false;

end;

procedure TForm2. Edit1Change (Sender: TObject);

begin

Button2. Enabled: =false;

end;

procedure TForm2. Edit1KeyPress (Sender: TObject; var Key: Char);

begin

if ( (Key >= '0') and (Key <= '9') or (Key = #8)) then begin end // цифры

else

Key: = #0; // не цифра

end;

procedure TForm2. Edit2KeyPress (Sender: TObject; var Key: Char);

begin

if ( (Key >= '0') and (Key <= '9') or (Key = #8)) then begin end // цифры

else

Key: = #0; // не цифра

end;

procedure TForm2. Button2Click (Sender: TObject);

var

sum: integer;

begin

button3. Enabled: =true;

ns: =Strtoint (Edit3. Text);

k: =1+k;

a: =0;

b: =0;

Memo1. Lines. Add ('');

Memo1. Lines. Add ('Игрок: '+ Label1. Caption);

a: =random (6) +1;

Memo1. Lines. Add ('Первый кубик = ' +inttostr (a));

b: =random (6) +1;

Memo1. Lines. Add ('Второй кубик = ' +inttostr (b));

case (a) of

1: Image2. Picture. LoadFromFile ('1. jpg');

2: Image2. Picture. LoadFromFile ('2. jpg');

3: Image2. Picture. LoadFromFile ('3. jpg');

4: Image2. Picture. LoadFromFile ('4. jpg');

5: Image2. Picture. LoadFromFile ('5. jpg');

6: Image2. Picture. LoadFromFile ('6. jpg');

end;

case (b) of

1: Image3. Picture. LoadFromFile ('1. jpg');

2: Image3. Picture. LoadFromFile ('2. jpg');

3: Image3. Picture. LoadFromFile ('3. jpg');

4: Image3. Picture. LoadFromFile ('4. jpg');

5: Image3. Picture. LoadFromFile ('5. jpg');

6: Image3. Picture. LoadFromFile ('6. jpg');

end;

sum: =a+b;

Memo1. Lines. Add ('Сумма кубиков = ' +inttostr (sum));

if (sum=x) then

begin

ns: =ns+st*4;

Memo1. Lines. Add ('Вы выиграли! Ваш выигрыш увеличин в 4 раза! =) ');

Animate1. Visible: =true;

Animate1. FileName: = ('win. avi');

Edit3. Text: =inttostr (ns);

v: =v+1;

end;

if (sum>x) then begin

ns: =ns-st;

Memo1. Lines. Add ('Вы проиграли! = (');

Animate1. Visible: =true;

Animate1. FileName: = ('loose. avi');

Edit3. Text: =inttostr (ns);

p: =p+1;

end;

if (sum<x) then begin

ns: =ns+st;

Memo1. Lines. Add ('Вы выиграли! =) ');

Animate1. Visible: =true;

Animate1. FileName: = ('win. avi');

Edit3. Text: =inttostr (ns);

v: =v+1;

end;

Memo1. Lines. add ('Всего бросков: ' + Inttostr (k));

Memo1. Lines. add ('Из них выигрышей/проигрышей: ' + Inttostr (v) + ' / '+Inttostr (p));

if ns<=0 then

begin

form3. Showmodal;

end;

end;

procedure TForm2. N2Click (Sender: TObject);

begin

Form2. Hide;

form1. Show;

Button2. Enabled: =false;

Button2. Enabled: =false;

Memo1. Clear;

Edit3. Text: = ('100');

Edit1. text: = ('32');

Edit2. text: = ('6');

k: =0;

p: =0;

v: =0;

form1. Edit1. Text: = ('');

end;

procedure TForm2. Button3Click (Sender: TObject);

begin

k: =0;

p: =0;

v: =0;

memo1. Clear;

Edit3. Text: = ('100');

end;

procedure TForm2. N5Click (Sender: TObject);

begin

form4. show;

end;

procedure TForm2. N6Click (Sender: TObject);

begin

Form5. show;

end;

procedure TForm2. Image1MouseMove (Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

Label5. Caption: = TimeToStr (Now ());

end;

end.

Form1

unit Unit1;

interface

uses

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

Dialogs, StdCtrls, jpeg, ExtCtrls;

type

TForm1 = class (TForm)

Image1: TImage;

Label1: TLabel;

Edit1: TEdit;

Label2: TLabel;

Image2: TImage;

Image3: TImage;

procedure Image2MouseDown (Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure Image2MouseUp (Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit2;

$R *. dfm}

procedure TForm1. Image2MouseDown (Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

begin

Image3. Visible: =true;

end;

procedure TForm1. Image2MouseUp (Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

var

name: string;

begin

Image3. Visible: =false;

name: =Edit1. Text;

if ( (name = '') or (name = ' ')) then

begin

ShowMessage ('Введите имя');

end

else

begin

Form2. Show;

Form1. Hide;

Form2. Label1. Caption: =name;

end;

end;

end.

Form3

unit Unit3;

interface

uses

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

Dialogs, StdCtrls, jpeg, ExtCtrls;

type

TForm3 = class (TForm)

Image2: TImage;

Button1: TButton;

Button2: TButton;

procedure Button1Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

uses Unit2, Unit1;

{$R *. dfm}

procedure TForm3. Button1Click (Sender: TObject);

begin

Form2. N2. click;

Form3. Close;

end;

procedure TForm3. Button2Click (Sender: TObject);

begin

Form1. Close;

end;

end.

Заключение

Оба языка обладают своими преимуществами и недостатками. И нельзя строго о превосходстве одного над другим - все зависит от того, какую задачу ставит перед собой программист. Так например Pascal более удобен для изучения, является более наглядным для новичков. (И первоначально он был создан как раз для обучения) Но С++ в свою очередь является более компактным, быстрее компилируется. За счет этого на С++ удобнее писать большие и более сложные программы, тогда как Pascal лучше предназначен для обучения и выполнения не самых сложных алгоритмов.

Использованная литература

1. А. Гусева. Учимся программировать: Pascal 7.0.

2. Фаронов В.В. Turbo Pascal. Учебный курс

3. Бьерн Страустрап. Введение в С++

4. Липман. С++ для начинающих

5. Эккель Б. Философия С++

6. http://ru. wikipedia.org/wiki/C++

7. http://ru. wikipedia.org/wiki/Pascal


Нет нужной работы в каталоге?

Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
156492
рейтинг
icon
6068
работ сдано
icon
2737
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
64 096 оценок star star star star star
среднее 4.9 из 5
им. С.Ю.Витте
Работа выполнена досрочно, содержание по существу, маленький недочет был исправлен. Спасибо!
star star star star star
БПТ
Обращался к Елене Александровне второй раз Всё очень здорово и оперативно сделанно, без за...
star star star star star
"КрасГАУ"
Заказываю в первый раз у Евгения , и остался максимально доволен , всё чётко !)
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

Решение задач по предмету «Математика»

Решение задач, Математика

Срок сдачи к 29 дек.

1 минуту назад

Отчет с выполнением заданий

Решение задач, Отчет, бух учет

Срок сдачи к 25 дек.

4 минуты назад

Расчет параметров участка электроэнергетической системы

Решение задач, Электрические системы, электроника, электротехника

Срок сдачи к 8 янв.

4 минуты назад
4 минуты назад

Сделать курсач по методике

Курсовая, Электротехника

Срок сдачи к 26 дек.

5 минут назад

Психология безопасности труда

Реферат, Русский язык и культура речи

Срок сдачи к 29 дек.

7 минут назад

Сделать реферат и презентацию

Презентация, Биомеханика

Срок сдачи к 25 дек.

7 минут назад

написать курсовую работу по уголовному праву

Курсовая, Уголовное право

Срок сдачи к 25 дек.

7 минут назад

Начертить 12 чертежей

Чертеж, Начертательная геометрия

Срок сдачи к 9 янв.

8 минут назад

Феномен успеха и успешность в профессиональном развитии

Реферат, Психология

Срок сдачи к 28 дек.

9 минут назад

В файле прикреплен пример выполнения задания

Контрольная, Криминология

Срок сдачи к 27 дек.

9 минут назад

9-11 страниц. правовые основы военной реформы в ссср в 20-е гг

Реферат, История государства и права России

Срок сдачи к 26 дек.

10 минут назад

Выполнить реферат. История Англии. Е-01554

Реферат, Английский язык

Срок сдачи к 26 дек.

10 минут назад

Составить Проект массового взрыва

Контрольная, Взрывное дело, горное дело

Срок сдачи к 8 янв.

12 минут назад

Термодинамика

Решение задач, Термодинамика

Срок сдачи к 26 дек.

12 минут назад

Нужен реферат, объем 15-20 страниц

Реферат, Безопасность в техносфере

Срок сдачи к 5 янв.

12 минут назад

Выполнить реферат. История Англии. Е-01554

Реферат, История

Срок сдачи к 26 дек.

12 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно