Class class_name

{
int data;
// Элемент данных
void show ();// Функция-элемент
};

После определения класса можно объявлять переменные типа этого класса (называемые объектами), как показано ниже:

class_name object;

#include<iostream.h>

#include<conio.h>

Class tovar

{

public:

char name[64];

float k;

float cena;

Void vvod()

{

cout<<"vvedite naimenovanie tovara:";

cin>>name;

cout<<"vvedite kolichestva:";

cin>> k;

cout<<"vvedite cenu:";

cin>>cena;

};

Void show()

{

cout << "tovar:" << name << "," ;

cout << "kolichestvo:" << k << ",";

cout << "cena:" << cena;

}

};

Main()

{

tovar t;

t.vvod();

t.show();

getch();

}

16. Потоки ввода-вывода в С++.

Объяснить правила использования функций управления потоками width и fill.

Составить программу решения задачи: Организовать вывод на экран значения функции (значение x ввести с клавиатуры). Задайте минимальное количество символов для вывода результата, равное 10, а символ, который будет использоваться для заполнения пустого пространства – точка.

Программа на С не имеет дела ни с устройствами, ни с файлами — она работает с потоками. Поток — это последовательность символов. Ввод информации осуществляется из входного потока, вывод программа производит в выходной поток. А уж поток можно связать и с устройством, и с файлом.

Стандартные потоки для ввода и вывода в С++, находятся в заголовочном файле <iostream>

Для ввода используется операция >>, для вывода – операция <<.

Функция управления потоками width:позволяет указать минимальное количество символов для вывода следующего значения - cout.width (4);- если для отображения значения требуется больше символов, то параметр widthигнорируется.

Функция управления потоками fill:позволяет указать символ, который cout будет использовать для заполнения пустого пространства - cout.fill (' . ');

 

#include <iostream.h>

#include <math.h>

#include <conio.h>

main ()

{

float x,z;

cout << "x=";

cin >> x;

z= pow(x,2)-exp(x);

cout << "z=";

cout.width (15);

cout.fill ('.');

cout << z;

getch();

}

17. Понятие перегрузки функций.

Объяснить правила построения перегруженных функций.

Составить программу решения задачи: С помощью перегрузки функций организуйте вывод на экран: стандартной строки «Hello, World!» (без параметров) и одной символьной строки (один параметр).

 

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

В процессе компиляции C++ принимает во внимание количество и тип аргументов, используемых каждой функцией, и затем вызывает именно требуемую функцию.

Обычно перегрузку используют в тех случаях, когда приходится выполнять однотипные действия с разными объектами или разными типами данных.

Правила:

• Для перегрузки функций просто нужно определить несколько функций с одним и тем же именем, которые отличаются количеством параметров или их типом.

 

#include <iostream.h>

#include <conio.h>

void show(void)

{

cout << "Hello, World! " << endl;

}

void show(char *s)

{

cout << s << endl;

}

void main()

{

char string[10];

show();

cout << "Input string:";

cin >> string;

show(string);

getch();

}

18. Структура приложения, разработанного в интегрированной среде C++Builder.

Описать порядок разработки приложения

Составить Windows-приложение решения задачи: Вычислить значение функции . Значения x, y ввести в поле ввода, результат вывести на форму.

 

 

Для каждого приложения C++ Builder создается один файл проекта, один make-файл и один файл ресурсов. Если в процессе разработки приложения добавляются формы и модули, C++ Builder обновляет файл проекта.

 

Первым шагом в разработке приложения C++ Builder является создание проекта - пункт меню File/New Application. C++ Builder создает файл проекта с именем по умолчанию Project1.bpr.

 

Проект или приложение обычно имеют несколько форм. Добавление формы к

проекту создает следующие дополнительные файлы:

. Файл формы с расширением .DFM, содержащий информацию о ресурсах окон

для конструирования формы

. Файл модуля с расширением .CPP, содержащий код на C++.

. Заголовочный файл с расширением .H, содержащий описание класса формы.

Затем на форме размещаются необходимые компоненты и в окне инспектора объектовObject Inspectorзадаются их свойства.

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

При этом автоматически генерируется текст пустой функции, и редактор открывается в том месте, где следует вводить код. Далее нужно ввести код, который должен выполняться при наступлении события.

 

void __fastcall TForm1::Button1Click(TObject *Sender)

{

float x,y,z;

x=StrToFloat(Edit1->Text);

y=StrToFloat(Edit2->Text);

z=exp(x-sin(y))+sqrt(pow(x,2)+pow(y,4));

Label3->Caption="Результат z="+FloatToStr(z);

}

 

19. Назначение стандартных компонентов Label, Edit.

Описать правила работы с ними.

Составить Windows-приложение решения задачи: Вычислить значение функции . Исходные данные ввести в поле ввода, результат вывести на форму в поле надписи.

Label - используется для создания надписей на форме. Тип данных String.

Основные свойства:

É Name – имя компонента

É Caption – текст надписи

É Color – цвет надписи

É Font – шрифт надписи и др.

При использовании в качестве поля вывода программно:

Label3->Caption="c="+FloatToStr(c);

 

Edit – поле ввода. Тип данных String. Основные свойства:

É Name – имя компонента

É Text – текст поля

É Font – шрифт текста и др.

 

Считывание информации из поля ввода:

a=StrToFloat(Edit1->Text);

 

Запись информации в поле ввода:

Edit1->Text = IntToStr(x);

 

void __fastcall TForm1::Button1Click(TObject *Sender)

{

float a,b,c;

a=StrToFloat(Edit1->Text);

b=StrToFloat(Edit2->Text);

if (a<-5) c=b*a;

else if (a<10) c=sin(a)+b;

c=cos(a)*b;

Label3->Caption="c="+FloatToStr(c);

}

20. Назначение стандартных компонентов CheckBox, RadioButton.

Описать правила работы с ними.

Составить Windows-приложение решения задачи: Ввести значения произвольных вещественных переменных a и b. Вычислить значение выражения или (выбор зависит от переключателя на форме). Результат вывести в поле формы.

return false">ссылка скрыта

Независимый переключатель CheckBox используется для того, чтобы пользователь мог указать своё решение типа Да/Нет или Да/Нет/Не знаю. В составе окна может быть несколько компонентов CheckBox. Состояние любого из них не зависит от состояния остальных. Свойства компонента:

Ò State – содержит состояние компонента: cbUnchecked - нет, cbChecked - да, cbGrayed – не знаю.

Ò AllowGrayed – разрешает или запрещает использование состояния cbGrayed – не знаю;

Ò Checked – содержит выбор пользователя типа Да/Нет. Состояния cbUnchecked и cbGrayed отражаются как false.

 

 

В отличие от CheckBox, компоненты RadioButton представляют собой зависимые переключатели, предназначенные для выбора одного из нескольких взаимоисключающих решений. В компонент-контейнер помещаются по меньшей мере два таких компонента. Они могут находиться в одном из двух состояний, определяемом свойством Checked. Если в одном компоненте это свойство принимает значение true, во всех других компонентах, расположенных в том же контейнере, свойства Checked принимают значения false.

 

void __fastcall TForm1::Button1Click(TObject *Sender)

{

int a,b;

float c;

a=StrToInt(Edita->Text);

b=StrToInt(Editb->Text);

if (RadioGroup1->ItemIndex==0)

c=sqrt(a+b);

else c=pow(a,2)+pow(b,2);

Label5->Caption = FloatToStr(c);

}

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

void __fastcall TForm1::Button2Click(TObject *Sender)

{

Edita->Text="";

Editb->Text="";

Label5->Caption = "";

}

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

void __fastcall TForm1::Button3Click(TObject *Sender)

{

Close();

}

21. Назначение компонентов Button, BitBtn.

Описать правила работы с ними.

Составить Windows-приложение решения задачи: Вычислить значение функции . Исходные данные ввести в поле ввода, вычисление и вывод результата по нажатию кнопки.

Компонент Button (кнопка): предназначен для выполнения какого-либо действия.

Его свойства:

Ò Name – имя компонента

Ò Caption – текст на кнопке

Ò Enabled – активация (деактивация) кнопки

Ò Visible – видимая (невидимая) кнопка

Ò Font – шрифт текста кнопки

Ò ShowHint – всплывающая подсказка при наведении указателя на кнопку

Ò Hint – текст всплывающей подсказки

Ò и др.

Компонент BitBtn: Предназначен для создания стандартной кнопки. Свойства аналогичны. Кроме этого:

Его свойства:

Ò Glyph – вставка рисунка на кнопку

Ò Kind – выбор стандартной кнопки (стандартный текст можно откорректировать в свойстве Caption), при этом задается ее стандартное поведение

 

Обычно при нажатии на кнопку на приложении запускается обработчик события, предназначенный для выполнения какого-либо действия. Это событие OnClick.

Для того, чтобы записать обработчик события, делают двойной щелчок на кнопке или на свойстве OnClickвкладки Events(События) инспектора объектов. После этого формируется функция обработчика события, где между фигурными скобками пишем сам обработчик.

 

#include <math>

….

 

void __fastcall TForm1::Button1Click(TObject *Sender)

{

int a,s=0;

a=StrToInt(Edit1->Text);

for(int i=1; i<=10; i++)

s+=pow(a,i);

Label2->Caption="S="+IntToStr(s);

}

 

 

22. Назначение компонента StringGrid.

Описать правила работы с ними.

Составить Windows-приложение решения задачи: Дан массив размера 5 на 5. Ввести элементы массива в компоненте StringGrid с клавиатуры, вычислить сумму всех элементов, результат вывести на форму.

Компонент StringGrid: Предназначен для отображения текстовой информации в виде двумерной таблицы.

Его свойства:

Ò ColCount – количество столбцов

Ò RowCount – количество строк

Ò Cells – двумерный массив строк

Запись в ячейку: StringGrid1->Cells[2][3]=”Текст”.

При записи или считывании числовых значений нужно использовать функции преобразования чисел в строки и наоборот – a= StrToInt(StringGrid1->Cells[i][j]);

 

void __fastcall TForm1::BitBtn1Click(TObject *Sender)

{

int a[5][5];

int s=0;

for (int i=0; i<=4; i++)

for (int j=0; j<=4; j++)

{

a[i][j]=StrToInt(StringGrid1->Cells[j+1][i+1]);

s+=a[i][j];

}

Label1->Caption="Сумма всех элементов=" + IntToStr(s);

}

 

23. Назначение компонентов SaveDialog, OpenDialog.

Описать правила работы с ними.

Составить Windows-приложение решения задачи: Создать приложение для создания текстовых документов в формате rtf. Разместите на нем компонент RichEdit и кнопки открытия и сохранения документа.

 

OpenDialog (диалог открытия) позволяет создать в программе диалог открывания файлов. Данный диалог имеет возможность установки фильтров на имя и расширение открываемых файлов.
SaveDialog (диалог сохранения) создает в программе диалог с возможностью выбора в программе имени файла для сохранения. Данный диалог обычно используется в связке с компонентом OpenDialog.

По командам Open и Save As у соответствующего компонента вызывается метод Execute, который выполняет диалог и возвращает значение true, если пользователь выбрал файл.

Его свойства:

FileName имя выбранного файла.

Filter – набор фильтров, оформленный в виде выпадающего списка Тип файла.

Вызов диалогов:

if(Имя_диалога-> Execute() )
{
//наши действия
}

 

 

void __fastcall TForm1::Button1Click(TObject *Sender)

{

if (OpenDialog1->Execute())

{

RichEdit1->Lines->LoadFromFile(OpenDialog1->FileName);

}

 

}

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

 

void __fastcall TForm1::Button2Click(TObject *Sender)

{

if (SaveDialog1->Execute())

{

RichEdit1->Lines->SaveToFile(SaveDialog1->FileName);

}

24. Понятие псевдонима базы данных.

Описать порядок создания псевдонима.

Составить Windows-приложение для работы с базой данных, содержащей информацию о работниках: табельный номер, фамилия имя отчество, дата рождения и должность. В окне формы реализуйте просмотр содержимого базы данных в таблице. Для перемещения по записям таблицы используйте компонент DBNavigator.

Псевдоним – известное разработчику и BDE имя БД, с ним ассоциируются параметры соединения с БД, например тип (формат) БД, для локальных БД – маршрут их файлов на диске, для удаленной БД – имя сервера, имя пользователя, режим открытия и др.

Для создания псевдонима:

Ò Запустите утилиту BDE Administrator, выбрав ее в группе программ Borland C++Builder.

Ò Выполнить команду Object - New, выбрать тип БД, задать имя, в поле PATH задать маршрут расположения БД.

Ò Сохранить изменения, внесенные в конфигурационный файл.

 

На форме размещаем компоненты Table (вкладка BDE) и DataSource (вкладка Data Access).

Устанавливаем свойства:

Ò Компонент Table: DatabaseName - выбираем имя псевдонима, TableName - имя таблицы;

Ò Компонент DataSource: DataSet - выбираем имя компонента Table;

Размещаем компонент BDGrid (вкладка DataControls) для просмотра и редактирования таблицы БД. Задаем свойство DataSource – имя компонента DataSource.

Устанавливаем к компоненте Table свойство Active в значение true.

Размещаем компонент DBNavigator (страница Data Controls). Задаем свойство DataSource компонента Navigator - имя компонента DataSource.

 

 

 

 

25. Целые и вещественные переменные в языке С#.

Описать особенности ввода-вывода переменных этих типов в консольных приложениях на языке С#.

Составить консольное приложение решения задачи в С#: Вычислить значение функции . Значения x, y,z ввести с клавиатуры, результат вывести на экран..

 

26. Понятие одномерного массива в языке С#.

Описать особенности объявления и определения одномерных массивов в языке С#.

Составить консольное приложение решения задачи в С#: Для заданного одномерного произвольного массива А(10) произвести сортировку элементов в прямом и обратном порядках. На экран вывести исходный массив и результаты сортировки.

 

Массив – это совокупность элементов одного типа, объединенных одним именем.

У одномерного массива размерность массива (количество индексов при обращении к элементам массива) равна 1. В С# массивы являются объектами, производными от базового класса System.Array. Поэтому происходит создание экземпляра класса, унаследованного от System.Array.

Как и любой другой класс, System.Array имеет свои методы и свойства. Например:

Ò свойство Rank, которое позволяет программным путем определить ранг массива, то есть количество измерений массива.

Ò свойство Length, которое возвращает общее количество элементов в массиве

Особенности объявления и определения одномерных массивов в языке С#:

int [ ] к; //объявление массива

k=new int [3]; //Определение массива из 3 целых

к[0]=-5; к[1]-4; к[2]=55;

Console.WriteLine(к[2]) ; //обращение кэлементам массива

using System;