Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
40
Добавлен:
16.02.2016
Размер:
89.6 Кб
Скачать

3.2. Создание заготовки для консольного приложения.

Для создания консольного приложения и пустого проекта в среде Visual C++ необходимо выполнить следующие действия:

1) Запустите Visual C++ с рабочего стола (если установлен ярлык VC) либо из пункта главного меню Программы;

2) В главном меню VC запустите команду File / New.

3) В появившемся окне New активизируйте закладку Projects , а в ней выберите пункт Win32 Console Application. Щелкнете по полю Project name этого окна и с клавиатуры введите имя вашего проекта(например, Pro1), а в поле Location введите маршрут для размещения проекта на диске( например, C:\AiU042, где AiU042 – имя папки для размещения проектов группы АиУ-04-2). Не изменяя настройку оставшихся элементов управления формы New , нажмите кнопку OK. В ответ будет выведено диалоговая панель Win32 Console ApplicationStep1 of 1. Не изменяя установки ее управляющих элементов(по умолчанию установлен нужный нам тип проекта – An empty project(пустой проект)), нажать кнопку Finish. В ответ выводится диалоговая панель New Project information, в которой выводится информация о выполненных системой действиях. Нажимаем кнопку ОК. В ответ обновляется образ главного окна VC,: выводятся кнопки инструментария и рабочие окна - окно проекта(слева), окно редактирования кода(справа) и окно вывода сообщений (внизу).

4) В появившемся окне проекта отметьте имя появившейся папки проекта(имя проекта classes), выберите вкладку File View(внизу окна проекта), два раза щелкните по папке имя проекта Files, на появившемся дереве папок проекта выберите Source Files и дважды щелкните правой клавишей по этой папке. В появившемся окне контекстного меню щелкните левой клавишей по строке Add Files to Folder. На появившемся диалоговом окне Insert Files in to Project щелкнуть по полю Имя файла и после появления курсора мыши набрать в поле Имя файла с расширением .cpp(основное имя файла с исходным кодом программы можно оставить таким же, как и имя проекта, например, AiU0403.cpp.). Далее следует нажать кнопку ОК и в появившемся диалоговом окне нажать кнопку ДА. Затем необходимо в окне проекта щелкнуть по папке Sourse Files и на дереве проекта будет выведен значок пустого файла для исходного текста программы(имя файла.cpp ).Щелкнув два раза по этому имени переводим фокус на окно редактирования кода и оно активизируется(Окно окрашивается в светлый фон и на первой строке окна появляется курсор).После завершения этих действий можно в окно редактирования кода вводить исходный текст программы, а затем выполнять ее компиляцию, сборку и выполнение с целью отладки.

3.3. Кодирование проекта

Заголовочная часть программы должна состоять из:

 директив для препроцессора, обеспечивающих включение в программу заголовочных файлов, содержащих объявления функций и переменных стандартных библиотек ввода-вывода;

 математических функций;

  • функций для работы в текстовом режиме;

  • определений функций, разработанных для данного проекта;

  • описаний глобальных массивов и(или) переменных.

Тогда код заголовочной части для разрабатываемой программы будет иметь, например, следующий вид:

# include <iostream.h>// Библиотека ввода-вывода

# include <windows.h>// Главный заголовочный файл дляWindows-приложений

# include <conio.h>// Библиотека для работы с консолью в текстовом режиме

# include <stdlib.h>// Библиотека специальных функций

# include <time.h >// Библиотека для работы с временем и датами.

long int A[3][3]={{0,0,0},{0,0,0},{0,0,0}};//Глобальный исходный массив

long int B[3][3]={{0,0,0},{0,0,0},{0,0,0}};//Глобальный промежуточный массив

int menu();//функция, реализующая функциональное меню

int Zadacha1();//функция, реализующая задачу №1

………………….

int Zadacha7();//функция, реализующая задачу №7.

Как следует из приведенного текста заголовочной части имена всех заголовочных файлов заключены в угловые скобки(< >), что говорит о том, что препроцессор должен искать эти файлы в системном каталоге \INCLUDE\.

Описание или тело главной функцииintmain() представляет последовательность описаний, определений, операторов, заключенных в фигурные скобки { } и обеспечивающих решение всех поставленных в проекте задач. Любая программа на С++ должна включать только одну функцию с этим именем.

Для кодирования проекта могут быть полезными следующие рекомендации:

1) Так как исходный массив из случайных целочисленных элементов формируется в задаче 1 и используется во всех других задачах, то целесообразно ему придать статус глобального массива, и тогда он будет доступен на протяжении работы программы. Аналогичный статус должен получить и массив B[3][3], в котором будет сохранятся транспонированная матрица и она же будет использоваться в задаче 7.

2) При выводе на экран строковых данных на русском языке необходимо использовать специальную функцию AnsiToOem(x,y),обеспечивающую конвертирование строки из кодировкиANSI(Windows)в кодировкуOEM(MS-DOS),которая описана в первой лабораторной работе.

3) Для формирования разных значений псевдослучайных чисел в диапазоне 0..kи присваивания их элементам двумерного массива можно использовать следующий блок операторов:

A[0][0] = 2;

for (i=0;i<3;i++)

{ for (j=0;j<3;j++)

{

k=k+1;

srand(time(NULL));

A[i][j] = A[i][j]+rand() % k;

}

}

Случайное целое значение, генерируемое функцией rand() находится в диапазоне 0..32767. Однако, с помощью инициализации функцииrand() функциейsrand(time(NULL)) и масштабирования значения, генерируемогоrand(), с помощью выраженияA[i][j] =A[i][j]+rand() %kмы обеспечиваем заполнение массиваA[3][3] разными целочисленными значениями при каждом новом запуске этого блока операторов.

4) Для создания меню можно использовать условный оператор ifelse,который был рассмотрен в первой лабораторной работе или операторswitch cбесконечным цикломfor (;;).В бесконечном цикле оператораswitch пользователь может выбрать какой–либо пункт, выполнить соответствующие действие, а затем вернуться к меню. Так продолжается до тех пор, пока пользователь не выберет пункт выхода. Чтобы выйти из цикла switch, необходим операторbreak.

5) Описание главной функции для настоящего проекта можно начинать, например, таким кодом:

int main()

{

int fl=0; //вспомогательные переменные

int fl1=0;//для управления порядком выполнения задач

M1: int L=menu(); //Запуск функции меню

if(L==1 && fl==0)

{Zadacha1(); //запуск функция, реализующей задачу 1

fl=1;

char tx2[] = " Для возврата в меню нажмите любую клавишу";

AnsiToOem(tx2,tx2);

cout <<tx2<<endl;

getch(); //функция задержки выполнения программы

system("cls"); //функция очистки экрана монитора

goto M1;//переход в функциональное меню

}

else if(L==2 && fl==1)

{

Zadacha2();//запуск функция, реализующей задачу 2

char tx2[] = " Для возврата в меню нажмите любую клавишу";

AnsiToOem(tx2,tx2);

cout <<tx2<<endl;

getch();

system("cls");

goto M1;

}

………………..

………………

…………………

else if(L==7 && fl==1 && fl1==1)

{

Zadacha7();//функция, реализующая задачу 7

char tx2[] = " Для возврата в меню нажмите любую клавишу";

AnsiToOem(tx2,tx2);

cout <<tx2<<endl;

getch();

system("cls");

goto M1;

}

return 0;

} //конецmain

Соседние файлы в папке МетодУказЛабРабот