
- •Тема 1.Тема 1. Среда Builder Введение
- •Свойства компонентов
- •События
- •Менеджер проектов
- •1.1.1.4. Сохранение проекта
- •Практические задания Задание 1. Организация ввода-вывода стандартных типов данных
- •Задание 2. Программирование линейных алгоритмов
- •12 Вариант.
- •Задание 3: программирование линейных алгоритмов (продолжение)
- •Программирование разветвляющихся алгоритмов Пример составления программы с разветвленной структурой
- •Практические задания Задание 1: нахождение значения функции по условию
- •Задание 2: нахождение значения переменной по условию
- •Целочисленная арифметика
- •1.3.Примеры алгоритмов
- •Практические задания Задание 1: сумма цифр трехзначного числа
- •Задание 2: перевод копеек в рубли
- •Задание 3: счастливый билет
- •Программирование циклических алгоритмов Пример составления программы с циклом
- •Практические задания Задание 1
- •Задание 2
- •1 Вариант.
- •2 Вариант.
- •3 Вариант.
- •Задание 3: перевод числа из десятичной системы счисления
- •Программирование вложенных циклов
- •Пример программы с вложенным циклом
- •Практическое задание
- •Программирование разветвляющихся и циклических алгоритмов Примеры задач
- •Практические задания Задание 1: перевод блок-схемы в код программы
- •Задание 2: нахождение суммы бесконечного ряда
- •Структурированные типы данных: одномерные массивы
- •Примеры программ с использованием массива
- •Практические задания Задание 1. Задание элементов одномерного массива и анализ
- •Задание 2. Работа с последовательностью чисел
- •Задание 3. Определение экстремумов в массивах
- •Самостоятельное задание: сортировка массива
- •Самостоятельное задание: поиск элемента в массиве
- •Структурированные типы данных: двумерные массивы Пример программы с использованием матриц
- •Практические задания Задание 1. Определение элементов новой матрицы через элементы заданной матрицы
- •Задание 2. Упорядочивание в матрицах фиксированных строк или столбцов
- •Структурированные типы данных: строки
- •Примеры программ с использованием строки
1.1.1.4. Сохранение проекта
После того, как проект разработан, его необходимо сохранить. Сохранение осуществляется с помощью пункта меню File/Save all. Данный пункт поможет сохранить изменения, связанные и с формой и с модулем. Поэтому лучше использовать именно его.
Помните, что файл модуля и файл проекта и должны иметь различные имена (Рис. 1).
а) окно сохранения модуля проекта; б) окно сохранения файла проекта
Рис. 1. Диалоговое окно Сохранение проекта.
Примечание: Для удобства работы активизируйте режим Автосохранения, который срабатывает каждый раз при запуске проекта на выполнение. Для этого в пункте меню Tools/Environment Options в группе Autosave options включить флажок Editor files (Рис. 2).
Рис. 2. Установление режима Автосохранения.
После сохранения и компиляции программы создается загрузочный файл с расширением exe, который можно запускать без оболочки Builder, например, из Проводника Windows.
Запуск проекта на выполнение
Запуск
программы на выполнение из среды Builder
осуществляется с помощью пункта меню
Run/Run
или соответствующей быстрой клавиши
на панели инструментов оболочки
или функциональной клавишей <F9>.
При «зависании» программы прервать ее выполнение можно при помощи пункта меню Run/Program Reset или комбинацией клавиш <Ctrl>+<F2>.
1.2.Контрольные вопросы
Что такое проект Builder?
Почему под проект рекомендуют отводить отдельную папку?
Какие окна содержит оболочка Builder?
Из каких файлов состоит проект Builder?
Как запустить программу на выполнение?
Как можно прервать выполнение программы из оболочки Builder?
Программирование алгоритмов с линейной структурой
Составление простейших программ на языке C++ в среде Builder C++ 6.0
При работе с любой программой, как правило, выполняются следующие шаги: ввод текста программы, сохранение его, редактирование и выполнение программы.
Пример программы на языке Паскаль. Структура программы
В приводимом примере описаны переменные целого типа, вещественного и символьного. Программа осуществляет ввод их значений с клавиатуры, и затем – вывод преобразованных значений, также в этой программе рассмотрены основные способы вывода переменных, их заметно больше чем в среде Delphi.
//---------------------------------------------------------------------------
#include <vcl.h>
#include <conio.h>
#include <stdio.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
int a = 0, b = 0, c = 0, d = 0, e = 0;
printf("Vvedite 5 chislel celogo tipa:\n");
scanf("%d %o %u %x %X", &a,&b,&c,&d,&e);
printf("Vi vveli chisla:\n %d\n %o\n %u\n %x\n %X\n",a,b,c,d,e);
printf("\nVivod ispolzya flagi:\n %d\n %+d\n % d\n", a,b,c);
printf("%#o\n %#x\n %#X\n ", a,b,c);
printf("\nShirina:\n '%7d'\n '%-7d'\n '%07d'\n '%-07d'\n '%*d'\n",a,b,c,d,5,e);
printf("Resultat yvelichenia 1ogo chisla vdvoe:\n %d\n", a*2);
printf("Vtoroe chislo = 2?\n %d\n ", b == 2);
printf("\nVvedite 5 onricatelnih chislel celogo tipa:\n");
scanf("%d %o %u %x %X", &a,&b,&c,&d,&e);
printf("Vi vveli chisla:\n %d\n %o\n %u\n %x\n %X\n",a,b,c,d,e);
printf("\nVivod ispolzya flagi:\n %d\n %+d\n % d\n", a,b,c);
printf("%#o\n %#x\n %#X\n ", a,b,c);
printf("\nShirina:\n '%7d'\n '%-7d'\n '%07d'\n '%-07d'\n '%*d'\n",a,b,c,d,5,e);
printf("Resultat yvelichenia 1ogo chisla vdvoe:\n %d\n", a*2);
printf("Vtoroe chislo = 2?\n %d\n ", b == 2);
long long lla=0, llb=0;
printf("\nVvedite pologitelnoe i otricatelnoe celie chisla:\n ");
scanf ("%u %u", &lla,&llb);
printf("Vi vveli:\n %u\n %llu\n %u\n %llu\n", lla,lla,llb,llb);
float x=0,y=0,z=0,w=0,v=0;
printf("Vvedite 5 veshestvennih chisla:\n ");
scanf("%f %f %f %f %f", &x,&y,&z,&w,&v);
printf("Vi vveli:\n %e\n %E\n %f\n %g\n %G\n", x,y,z,w,v);
printf("\nShirina\n '%1e'\n",x);
printf("\nTochnost\n '%.0f'\n '%7.2f'\n '%7.2g'\n",y,z,w);
double dx=0,dy=0,dz=0,dw=0,dv=0;
printf("Vvedite 5 double chisla:\n ");
scanf("%f %f %f %f %f", &dx,&dy,&dz,&dw,&dv);
printf("Vi vveli:\n %e\n %E\n %f\n %g\n %G\n", dx,dy,dz,dw,dv);
printf("\nShirina\n '%1e'\n",dx);
printf("\nTochnost\n '%.0f'\n '%7.2f'\n '%7.2g'\n",dy,dz,dw);
double dd = 0;
printf("Vvedite double chislo:\n");
scanf("%5lf", &dd);
printf ("Vi vveli chislo:\n %f\n", dd);
wchar_t unicode[1];
_flushall(); //
printf("\n Vvedite luboi simvol:\n");
scanf ("%s", unicode);
printf ("Vi veli simvol:\n %s\n,%S\n", unicode,unicode);
printf ("\nRazmer:\n '%ws'\n", unicode);
printf ("\nShirina:\n '%10s'\n '%-10s'\n", unicode,unicode);
char ascii[1]=" ";
_flushall(); //
printf("\n Vvedite luboi simvol:\n");
scanf ("%s\d", ascii);
printf ("Vi veli simvol:\n %s\n %S\n", ascii,ascii);
printf ("\nRazmer:\n '%ws'\n", ascii);
printf ("\nShirina:\n '%10s'\n '%-10s'\n", ascii,ascii);
char str[1024] = " ";
printf ("\n Vvedite stroku:\n");
_flushall();
scanf ("%s", str);
printf ("%s\n", str);
char str1[1024] = " ";
printf ("\n Vvedite stroku:\n");
_flushall();
scanf ("%1023s", str1, 1024);
printf ("%s\n", str1);
char str2[1024] = " ";
printf ("\n Vvedite stroku [a-z]:\n");
_flushall();
scanf ("%[a-z]1023s", str2, 1024);
printf ("%s\n", str2);
int code = 0 ;
printf("\n Nagimaite lubie kombinacii klavish, vihod -ESC:\n");
do
{
code =_getch();
if ((code == 0||code == 224) && kbhit())
{
code = 1000 +_getch();
}
printf ("%d\n", code);
} while (code != 27);
/*
printf ("Nagmite lubuu klavishu ...\n" );
getch(); //
*/
return 0;
}
//---------------------------------------------------------------------------
Результат работы программы не приводится в связи с его громоздкостью. Внимательно просмотрите полученные результаты, комментирую отдельные части программы
Обратите внимание на то, что текст программы набран с отступами так, чтобы была видна структура программы. Служебные слова Begin и End заменены фигурными скобками которые расположены на одном уровне, а находящиеся между ними операторы набраны с отступом. Это сделано также для того, чтобы структура программы была четкой и ясно видимой. Также вы уже увидели, что отсутствует явный блок задания переменных, т.к. создавать и инициализировать переменные можно в теле программы. При этом нельзя дважды создать переменную с одним названием