Разработка консольного приложения в интегрированной среде C++ Builder 6

Визуальное проектирование и событийное программирование. Повышение производительности программиста при использовании RAD-систем. Составление алгоритмов, разработка приложения для решения прикладных задач на примере консольных приложений C++ Builder 6.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 30.10.2013
Размер файла 258,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

ТУЛЬСКИЙ ИНСТИТУТ ЭКОНОМИКИ И ИНФОРМАТИКИ

Кафедра информационных технологий

Учебная дисциплина

"Информатика и программирование"

КУРСОВАЯ РАБОТА

На тему Разработка консольного приложения в интегрированной среде C++ Builder 6

Тула, 2013 год

Содержание

  • Введение
  • Задание 1
  • Задание 2
  • Задание 3
  • Задание 4
  • Задание 5
  • Задание 6
  • Задание 7
  • Задание 8
  • Задание 9
  • Задание 10
  • Заключение
  • Список литературы
  • Приложения
  • Приложение А. Листинг программы задания 1
  • Приложение Б. Листинг программы задания 2
  • Приложение В. Листинг программы задания 3
  • Приложение Г. Листинг программы задания 4
  • Приложение Д. Листинг программы задания 5
  • Приложение Е. Листинг программы задания 6
  • Приложение Ж. Листинг программы задания 7
  • Приложение И. Листинг программы задания 8
  • Приложение К. Листинг программы задания 9
  • Приложение Л. Листинг программы задания 10

Введение

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

Бурное развитие вычислительной техники, потребность в эффективных средствах разработки программного обеспечения привели к появлению систем программирования, ориентированных на так называемую "быструю разработку". В основе систем быстрой разработки или RAD-систем (Rapid Application Development - среда быстрой разработки приложений) лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя большую часть рутины, оставляя программисту работу по конструированию диалоговых окон и созданию функций обработки событий. Производительность программиста при использовании RAD-систем резко повышается. Одной из широко используемых RAD-систем является Borland C++Builder, которая позволяет создавать различные программы: от простейших однооконных приложений до программ управления распределенными базами данных. В качестве языка программирования в среде Borland C++Builder используется C++.

Задание 1

Некто располагает суммой в А руб. Он хочет купить В книг по С руб. и D журналов по Е руб. Написать программу, проверяющую, возможна ли такая покупка.

Входные переменные:

a,b, с,d,e - переменные вещественного типа

Выходные переменные:

s - переменная вещественного типа.

Интерфейс разработанного ПО представлен на рисунке 1.

Рисунок 1 - Результаты работы программы для задания 1

Листинг разработанного ПО для задания 1 приведен в приложении А.

Задание 2

Написать программу, определяющую, на какую цифру заканчивается заданное натуральное число.

Входные переменные:

n - натуральное число, переменная целого типа

Выходные переменные:

k - последняя цифра натурального числа, переменная целого типа.

Для определения последней цифры натурального числа используется следующая формула: k=n mod 10, где mod - операция деления по модулю.

Интерфейс разработанного ПО представлен на рисунке 2.

Рисунок 2 - Результаты работы программы для задания 2

Листинг разработанного ПО для задания 2 приведен в приложении Б.

Задание 3

Написать программу, проверяющую, поместится ли равносторонний треугольник площадью Р в круг площадью S, или круг поместится в треугольник, или они не поместятся друг в друга.

Входные переменные:

Р - площадь треугольника, переменная вещественного типа,

S - площадь круга, переменная вещественного типа.

При решении задачи использовались следующие формулы:

Сторона треугольника ,

Радиус круга .

Радиус описанной окружности ,

Радиус вписанной окружности ,

Для того чтобы круг мог быть вписан в треугольник достаточно, чтобы его радиус не превышал радиус вписанной окружности r. Для того чтобы круг мог быть описан вокруг треугольника достаточно, чтобы его радиус не был меньше радиуса описанной окружности R.

Интерфейс разработанного ПО представлен на рисунке 3.

Рисунок 3 - Результаты работы программы для задания 3

Листинг разработанного ПО для задания 3 приведен в приложении В.

Задание 4

Написать программу, позволяющую вычислить с помощью цикла: n+ (n-1) + (n-2) +. +2+1, где n задается с клавиатуры.

Входные переменные:

n - натуральное число, переменная целого типа

Выходные переменные:

s - сумма, переменная целого типа.

Интерфейс разработанного ПО представлен на рисунке 4.

Рисунок 4 - Результаты работы программы для задания 4

Листинг разработанного ПО для задания 4 приведен в приложении Г.

Задание 5

Разработать программу вывода на консоль в (символьном виде) графика функции y=sin (2р/Nn) для N=40, n=0,., 39.

Интерфейс разработанного ПО представлен на рисунке 5.

Рисунок 5 - Результаты работы программы для задания 5

Листинг разработанного ПО для задания 5 приведен в приложении Д.

Задание 6

В одномерном массиве хранятся N элементов некоторой последовательности. Для того чтобы определить закономерность, положенную в основу последовательности, каждые два соседних элемента заменяются их разностью. Эта операция повторяется до тех пор, пока все разности не будут равны одной и той же константе. Написать программу, определяющую эту константу и указывающую, на какой по счету операции эта константа получится.

Входные переменные:

a - входной массив целых чисел

Выходные переменные:

m - константа, переменная целого типа,

k - номер шага, на котором получена константа m, переменная целого типа.

Интерфейс разработанного ПО представлен на рисунке 6.

Рисунок 6 - Результаты работы программы для задания 6

Листинг разработанного ПО для задания 6 приведен в приложении Е.

Задание 7

В двухмерном массиве поменять местами строки, содержащие максимальный и минимальный элементы.

Входные переменные:

a - входной массив целых чисел.

Элементы массива генерируются с помощью датчика случайных чисел и расположены в интервале (-50; 50).

Интерфейс разработанного ПО представлен на рисунке 7.

Рисунок 7 - Результаты работы программы для задания 7

Листинг разработанного ПО для задания 7 приведен в приложении Ж.

Задание 8

Написать процедуру удаления повторных гласных в слове.

Для удаления повторных гласных разработана процедура udal_gl. Она имеет один входной параметр - массив символов с обрабатываемым словом. Возвращает указатель на преобразованный массив символов.

Интерфейс разработанного ПО представлен на рисунке 8.

Рисунок 8 - Результаты работы программы для задания 8

Листинг разработанного ПО для задания 8 приведен в приложении И.

Задание 9

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

Для определения принадлежности точки треугольнику используем следующий метод: последовательно проходим все стороны треугольника, считая их прямыми, и рассчитываем по какую сторону от текущей прямой лежит точка. Если точка для всех прямых лежит с одной стороны, то значит точка принадлежит треугольнику, а если хоть для какой-то прямой она лежит с друго стороны, то это значит что она вне треугольника.

Входные переменные:

ver - массив координат вершин треугольника, каждая строка соответствует вершине,

х, у - координаты точки

Для определения принадлежности точки треугольнику разработана процедура pr. Входными параметрами для нее являются координаты точки (координаты вершин треугольника - глобальная переменная), выходное значение имеет логический тип и равно true, если точки принадлежит треугольнику и false - в противном случае.

Интерфейс разработанного ПО представлен на рисунке 9.

Рисунок 9 - Результаты работы программы для задания 9

Листинг разработанного ПО для задания 9 приведен в приложении К.

Задание 10

В файле хранятся реквизиты рабочих: фамилия, имя, отчество, дата рождения, адрес, количество детей, количество отработанных часов, расценка одного часа. Заработная плата вычисляется умножением количества отработанных часов на расценку минус 13% налога. Величина налога уменьшается на 0,01 % на каждого имеющегося ребенка. Записать в другой файл фамилии и инициалы рабочих и их заработную плату.

Интерфейс разработанного ПО представлен на рисунке 10.

Рисунок 10 - Результаты работы программы для задания 10

Листинг разработанного ПО для задания 10 приведен в приложении Л.

Заключение

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

консольное приложение алгоритм программист

Список литературы

1. Ильин А.А. и др. Информатика: Учебное пособие. - М: Серебряная нить, 2005.376 с.

2. Стенли Б. Липпман. C++ для начинающих: Пер. с англ.2тт. - Москва: Унитех; Рязань: Гэлион, 1992, 304-345сс.

3. URL: http://www.cyberforum.ru/cpp/

4. URL: http://www.programmersforum.ru/forumdisplay. php

5. URL: http://forum. codeby.net/forum54.html

Приложения

Приложение А. Листинг программы задания 1

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <conio. h>

#include <windows. h>

#pragma argsused

int main (int argc, char* argv [])

{

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

int a,b,c,d,e,s;

cout<<"Исходная сумма А = "; cin>>a;

cout<<"Количество книг В = "; cin>>b;

cout<<"Цена одной книги С = "; cin>>c;

cout<<"Количество журналов D = "; cin>>d;

cout<<"Цена одного журнала E = "; cin>>e;

s=a- (b*c+d*e);

if (s<0)

cout<<"Покупка не возможна";

else

cout<<"Покупка возможна";

getch ();

return 0;

}

Приложение Б. Листинг программы задания 2

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <conio. h>

#include <windows. h>

#pragma argsused

int main (int argc, char* argv [])

{

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

unsigned long long int n;

int k;

cout<<"Натуральное число = "; cin>>n;

k=n % 10;

cout<<"Последняя цифра числа = "<<k;

getch ();

return 0;

}

Приложение В. Листинг программы задания 3

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <windows. h>

#include <conio. h>

#include <math. h>

#pragma argsused

int main (int argc, char* argv [])

{

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

double p,s,a,r;

cout<<"Площадь треугольника = "; cin>>p;

cout<<"Площадь круга = "; cin>>s;

r=sqrt (s/M_PI);

a=sqrt (4*p/sqrt (3));

if (r<= (a*sqrt (3) /6))

cout<<"Круг поместится в треугольник";

else

if (r>= (a*sqrt (3) /3))

cout<<"Треугольник поместится в круг";

else

cout<<"Фигуры не поместятся друг в друга";

getch ();

return 0;

}

Приложение Г. Листинг программы задания 4

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <windows. h>

#include <conio. h>

#pragma argsused

int main (int argc, char* argv [])

{

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

int n, i;

int long s;

cout<<"n = "; cin>>n;

s=0;

for (i=n; i>0; i--)

s=s+i;

cout<<"Сумма = "<<s;

getch ();

return 0;

}

Приложение Д. Листинг программы задания 5

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <windows. h>

#include <conio. h>

#include <math. h>

#pragma argsused

int main (int argc, char* argv [])

{

const N=40;

int y, i;

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

clrscr ();

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

{

y=int ( (sin (2*M_PI*i/N) +1) *10);

gotoxy (i*2+1,24-y);

cout<<"*";

}

getch ();

return 0;

}

Приложение Е. Листинг программы задания 6

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <windows. h>

#include <conio. h>

#pragma argsused

int main (int argc, char* argv [])

{

const N=10;

int a [N],a1 [N], i,j,m,k;

bool t;

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

cout<<"Введите элементы массива (N=10)"<<endl;

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

{

cout<<"a ["<<i+1<<"] = ";

cin>>a [i];

}

t=true; j=N-1; k=0;

while (t)

{

k++;

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

a1 [i] =a [i+1] - a [i];

t=false;

m=a1 [0];

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

if (a [j]! =m)

t=true;

if (t)

{

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

a [i] =a1 [i];

j=j-1;

}

}

cout<<"Вычисления закончились на "<<k<<"-м шаге"<<endl;

cout<<"Константа = "<<m;

getch ();

return 0;

}

Приложение Ж. Листинг программы задания 7

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <windows. h>

#include <conio. h>

#include <time. h>

#pragma argsused

int main (int argc, char* argv [])

{

const int n=6;

const int n1=6;

int** a=new int* [n];

int i,j, imax, imin,max,min,k;

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

randomize ();

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

a [i] =new int [n1];

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

for (j=1; j<=n1; j++)

a [i-1] [j-1] =random (100) - 50;

cout<<"Исходная матрица А"<<endl;

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

{

for (j=0; j<n1; j++)

{

cout. width (5);

cout<<a [i] [j] <<" ";

}

cout<<endl;

}

min=a [0] [0]; imin=0;

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

for (j=0; j<n1; j++)

if (a [i] [j] <min)

{

min=a [i] [j]; imin=i;

}

cout<<"Минимум = "<<min<<" находится в "<<imin+1<<" строке"<<endl;

max=a [0] [0]; imax=0;

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

for (j=0; j<n1; j++)

if (a [i] [j] >max)

{

max=a [i] [j]; imax=i;

}

cout<<"Максимум = "<<max<<" находится в "<<imax+1<<" строке"<<endl;

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

{

k=a [imin] [i];

a [imin] [i] =a [imax] [i];

a [imax] [i] =k;

}

cout<<"Преобразованная матрица А"<<endl;

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

{

for (j=0; j<n1; j++)

{

cout. width (5);

cout<<a [i] [j] <<" ";

}

cout<<endl;

}

getch ();

return 0;

}

Приложение И. Листинг программы задания 8

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <windows. h>

#include <conio. h>

#include <stdlib. h>

#include <string. h>

#pragma argsused

char *udal_gl (char *str);

char gl [9] ={'а','е','и','о','у','ы','э','ю','я'};

int main (int argc, char* argv [])

{

char s [100],*s1;

int i;

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

cout<<"Введите слово для преобразования: ";

cin>>s;

s1=udal_gl (s);

cout<<"Результат = "<<s1;

getch ();

return 0;

}

char *udal_gl (char str [])

{

char* temp,*p,*temp1;

int i,j,j1,k,r;

temp=new char [strlen (str)];

temp1=new char [strlen (str)];

for (i=0; i<strlen (str); i++)

temp [i] =str [i]; j1=0;

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

{

p=strchr (temp,gl [i]);

if (p)

{

j=p-&temp [0];

for (k=j+1; k<strlen (temp); k++)

if (temp [k] ==gl [i])

temp [k] ='*';

}

}

j=0; i=0;

while (j<=strlen (temp))

{

if (temp [j]! ='*')

{

temp1 [i] =temp [j]; i=i+1;

}

j=j+1;

}

temp [i+1] ='\0';

return temp1;

}

Приложение К. Листинг программы задания 9

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <windows. h>

#include <conio. h>

double ver [3] [3];

bool pr (double x,double y);

#pragma argsused

int main (int argc, char* argv [])

{

double x,y;

int i;

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

cout<<"Введите координаты вершин треугольника"<<endl;

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

{

cout<<i+1<<"-я вершина"<<endl;

cout<<"x = "; cin>>ver [i] [0];

cout<<"y = "; cin>>ver [i] [1];

}

cout<<"Введите координаты точки"<<endl;

cout<<"x = "; cin>>x;

cout<<"y = "; cin>>y;

if (pr (x,y))

cout<<"Точка принадлежит треугольнику";

else

cout<<"Точка не принадлежит треугольнику";

getch ();

return 0;

}

bool pr (double x,double y)

{

double q1,q2,q3;

bool t;

q1=x* (ver [1] [1] - ver [0] [1]) +y* (ver [0] [0] - ver [1] [0]) +ver [0] [1] *ver [1] [0] - ver [0] [0] *ver [1] [1];

q2=x* (ver [2] [1] - ver [1] [1]) +y* (ver [1] [0] - ver [2] [0]) +ver [1] [1] *ver [2] [0] - ver [1] [0] *ver [2] [1];

q3=x* (ver [0] [1] - ver [2] [1]) +y* (ver [2] [0] - ver [0] [0]) +ver [2] [1] *ver [0] [0] - ver [2] [0] *ver [0] [1];

t= ( (q1>=0) && (q2>=0) && (q3>=0)) || ( (q1<0) && (q2<0) && (q3<0));

return t;

}

Приложение Л. Листинг программы задания 10

#include <vcl. h>

#pragma hdrstop

#include <iostream. h>

#include <windows. h>

#include <conio. h>

#include <stdio. h>

#pragma argsused

int main (int argc, char* argv [])

{

char f [20],name [20],otch [20],data [10],addr [20];

char fio [30];

int det,rab,cena;

double zar;

FILE* file,*file1;

SetConsoleCP (1251);

SetConsoleOutputCP (1251);

file=fopen ("d: \data. txt", "r+");

file1=fopen ("d: \data1. txt", "w+");

while (! feof (file))

{

fscanf (file,"%s%s%s%s%s%d%d%d\n",f,name,otch,data,addr,&det,&rab,&cena);

cout<<f<<" "<<name<<" "<<otch<<" "<<data<<" "<<addr<<" "<<det<<" "<<rab<<" "<<cena<<endl;

strcpy (fio,f); fio [strlen (f)] =' '; fio [strlen (f) +1] =name [0];

fio [strlen (f) +2] ='. '; fio [strlen (f) +3] =otch [0];

fio [strlen (f) +4] ='. '; fio [strlen (f) +5] ='\0';

zar=rab*cena-rab*cena* (0.13-0.01*det);

fprintf (file1,"%s %10.2f\n",fio,zar);

}

fclose (file);

fclose (file1);

getch ();

return 0;

}

Размещено на Allbest.ru


Подобные документы

  • Реализация программного кода "Organizer 1.0". Разработка приложений баз данных с помощью Borland C++ Builder 6. Компоненты системы программирования для работы по технологии InterBase. Программный код и интерфейс "Organizer 1.0", структура приложения.

    курсовая работа [466,9 K], добавлен 28.07.2009

  • Разработка приложения "Ведомость начисления заработной платы" в среде программирования C++Builder. Алгоритм и сценарий работы программы. Проектирование интерфейса пользователя. Написание программных модулей и результаты тестирования данной программы.

    курсовая работа [597,4 K], добавлен 31.01.2016

  • Создание консольных приложений с использованием графического интерфейса пользователя. Содержание палитры компонентов программы С++ Builder. Использование возможностей объектно-ориентированного программирования, особенности редактора кода и форм в С++.

    лекция [27,0 K], добавлен 22.12.2010

  • Применение программных систем при анализе медицинских изображений. Разработка программной структуры, описывающей текстовую составляющую формата DICOM, осуществляющей обработку и анализ его при помощи интегрированной среды программирования C++ Builder.

    дипломная работа [4,6 M], добавлен 28.10.2013

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

    курсовая работа [191,5 K], добавлен 07.01.2015

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

    лабораторная работа [1,2 M], добавлен 01.05.2014

  • Характеристика программных продуктов: MySQL, MSSQL, MSAccess. Разработка базы данных в среде C++Builder. Описание таблиц и установление связей между ними. Реализация функций просмотра, добавления, редактирования БД с применением языка запросов SQL.

    курсовая работа [393,0 K], добавлен 13.06.2015

  • Визуальная разработка приложений баз данных. Характеристика визуальных компонентов среды разработки Builder 6.0, используемых в данном приложении. Программная реализация приложения, разработка форм и вкладок. Тестирование приложения, листинг программы.

    курсовая работа [3,1 M], добавлен 28.03.2011

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

    отчет по практике [1,2 M], добавлен 16.09.2012

  • Разработка программы для сбора и анализа информации об автобусах на парковке. Назначение и область применения. Алгоритм в словесной форме. Состав технических и программных средств. Разработка приложения в среде визуального программирования C++Builder 6.

    курсовая работа [1,5 M], добавлен 06.09.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.