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

Разработка программ на языке программирования С и на языке Borland 5.0. Стандартные функции и стандартные объекты языка Borland 5.0. Возможности языка C++ Borland 5.0, используемые для алгоритма. Результаты расчета, анализ и тестирование программы.

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

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

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

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

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

Введение

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

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

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

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

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

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

Данная программа написана на языке программирования Builder 5.0. Это сделано для лучшего понимания пользователем необходимого материала. С удобным графическим интерфейсом пользователю будет легче получать информацию.

Программа на языке Builder 5.0.

программа алгоритм язык borland

Unit1.cpp

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

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

#include "Unit2.h"

#include "Unit3.h"

#include "Unit4.h"

#include "Unit5.h"

#include "Unit6.h"

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

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

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

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

}

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

void __fastcall TForm1::Image2Click(TObject *Sender)

{

Form2->Visible=1;

Form1->Visible=0;

}

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

void __fastcall TForm1::Image3Click(TObject *Sender)

{

Form1->Visible=0;

Form3->Visible=1;

}

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

void __fastcall TForm1::Image4Click(TObject *Sender)

{

Form1->Visible=0;

Form4->Visible=1;

}

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

void __fastcall TForm1::Image6Click(TObject *Sender)

{

dialog1->Visible=1;

}

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

void __fastcall TForm1::Image5Click(TObject *Sender)

{

dialog2->Visible=1;

}

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

Unit2.cpp

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

#include <vcl.h>

#pragma hdrstop

#include "Unit2.h"

#include "Unit1.h"

#include "Unit3.h"

#include "Unit4.h"

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

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm2 *Form2;

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

__fastcall TForm2::TForm2(TComponent* Owner)

: TForm(Owner)

{

}

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

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

{

Form1->Close();

}

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

void __fastcall TForm2::Button1Click(TObject *Sender)

{

Form2->Visible=0;

Form1->Visible=1;

}

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

Unit3.cpp

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

#include <vcl.h>

#pragma hdrstop

#include "Unit3.h"

#include "Unit1.h"

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

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm3 *Form3;

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

__fastcall TForm3::TForm3(TComponent* Owner)

: TForm(Owner)

{

}

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

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

{

Form1->Close();

}

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

void __fastcall TForm3::Button1Click(TObject *Sender)

{

Form3->Visible=0;

Form1->Visible=1;

}

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

Unit4.cpp

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

#include <vcl.h>

#pragma hdrstop

#include "Unit4.h"

#include "Unit1.h"

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

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm4 *Form4;

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

__fastcall TForm4::TForm4(TComponent* Owner)

: TForm(Owner)

{

}

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

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

{

Form1->Close();

}

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

void __fastcall TForm4::Button1Click(TObject *Sender)

{

Form4->Visible=0;

Form1->Visible=1;

}

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

Unit5.cpp

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

#include <vcl.h>

#pragma hdrstop

#include "Unit5.h"

#include "Unit1.h"

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

#pragma resource "*.dfm"

Tdialog1 *dialog1;

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

__fastcall Tdialog1::Tdialog1(TComponent* AOwner)

: TForm(AOwner)

{

}

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

void __fastcall Tdialog1::OKBtnClick(TObject *Sender)

{

dialog1->Visible=0;

}

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

Unit6.cpp

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

#include <vcl.h>

#pragma hdrstop

#include "Unit6.h"

#include "Unit1.h"

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

#pragma resource "*.dfm"

Tdialog2 *dialog2;

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

__fastcall Tdialog2::Tdialog2(TComponent* AOwner)

: TForm(AOwner)

{

}

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

void __fastcall Tdialog2::OKBtnClick(TObject *Sender)

{

dialog2->Visible=0;

}

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

Описание языка Builder 5.0. для реализации алгоритма

При написании данной программы использовались стандартные функции и стандартные объекты языка Builder 5.0. Каждая новая страничка выполнялась на новой форме. Визуализация объектов выполнялась с помощью стандартного класса системного таймера Timer. Практически все кнопки в программе выполнены с помощью класса Button. Все остальные выполнены при помощи BitButton. Все картинки в программе использовались с Image. Вспомогательный текст и примеры программ написаны в ListBox. AboutBox выполнен как диалоговое окно с одной кнопкой.

Теперь немного о Builder 5.0.

С++ Builder 5.0. - это новый продукт фирмы Borland, предназначенный для быстрой разработки приложений (RAD rapid application development) на языке С++. С помощью С++ Builder вы сможете создавать программы на языке С++ быстрее и проще чем когда-либо ранее. Вы сможете создавать как консольные приложения Win32, так и использовать графический интерфейс пользователя (GUI graphical user interface). При создании GUI-приложений Win32 c помощью С++ Builder вам доступна вся мощь языка С++, заключенная в среду RAD. Это означает, что вы можете создавать интерфейс пользователя (меню, диалоговые окна, главное окно и т.д.), используя технику drag- and-drop. Вы можете также помещать в формы элементы управления ОСХ для создания в считанные минуты специализированных приложений, таких как Web-браузеры. При этом вы не жертвуете скоростью выполнения программ, потому что вся мощь языка С++ по прежнему остается в вашем распоряжении.

Результаты расчета, анализ и тестирование

Интерфейс программы:

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

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

Приятной работы.

Заключение

Язык "C"(произносится "си") - это универсальный язык программирования, для которого характерны экономичность выражения, современный поток управления и структуры данных, богатый набор операторов. Язык "C" не является ни языком "очень высокого уровня", ни "большим" языком, и не предназначается для некоторой специальной области применения. но отсутствие ограничений и общность языка делают его более удобным и эффективным для многих задач, чем языки, предположительно более мощные. Язык "C", первоначально предназначавшийся для написания операционной системы "UNIX" на ЭВМ DEC PDP-11, был разработан и реализован на этой системе Деннисом Ричи. Операционная система, компилятор с языка "C" и по существу все прикладные программы системы "UNIX" (включая все программное обеспечение, использованное при подготовке этой книги) написаны на "C". Коммерческие компиляторы с языка "C" существуют также на некоторых других ЭВМ, включая IBM SYSTEM/370, HONEYWELL 6000, INTERDATA 8/32. Язык "C", однако, не связан с какими-либо определенными аппаратными средствами или системами, и на нем легко писать программы, которые можно пропускать без изменений на любой ЭВМ, имеющей "C"-компилятор.

А что же такое С++?

С++ - это универсальный язык программирования, задуманный так, чтобы сделать программирование более приятным для серьезного программиста. За исключением второстепенных деталей С++ является надмножеством языка программирования C. Помимо возможностей, которые дает C, С++ предоставляет гибкие и эффективные средства определения новых типов. Используя определения новых типов, точно отвечающих концепциям приложения, программист может разделять разрабатываемую программу на легко поддающиеся контролю части. Такой метод построения программ часто называют абстракцией данных.

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

Ключевым понятием С++ является класс. Класс - это тип, определяемый пользователем. Классы обеспечивают сокрытие данных, гарантированную инициализацию данных, неявное преобразование типов для типов, определенных пользователем, динамическое задание типа, контролируемое пользователем управление памятью и механизмы перегрузки операций. С++ предоставляет гораздо лучшие, чем в C, средства выражения модульности программы и проверки типов. В языке есть также усовершенствования, не связанные непосредственно с классами, включающие в себя символические константы, inline-подстановку функций, параметры функции по умолчанию, перегруженные имена функций, операции управления свободной памятью и ссылочный тип. В С++ сохранены возможности языка C по работе с основными объектами аппаратного обеспечения (биты, байты, слова, адреса и т.п.). Это позволяет весьма эффективно реализовывать типы, определяемые пользователем.

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

Замечания для программистов на C.

Чем лучше кто-нибудь знает C, тем труднее окажется избежать писания на C++ в стиле C, теряя, тем самым, некоторые возможные выгоды C++. Там указывается на области, в которых C++ позволяет делать что-то лучше, чем C. Макросы (#define) в C++ почти никогда не бывают необходимы; чтобы определять провозглашаемые константы, используйте const или enum, и inline - чтобы избежать лишних расходов на вызов функции. Старайтесь описывать все функции и типы всех параметров - есть очень мало веских причин этого не делать. Аналогично, практически нет причин описывать локальную переменную не инициализируя ее, поскольку описание может появляться везде, где может стоять оператор, - не описывайте переменную, пока она вам не нужна. Не используйте malloc() - операция new делает ту же работу лучше. Многие объединения не нуждаются в имени - используйте безымянные объединения.

Эффективность и структура.

C++ был развит из языка программирования C и за очень немногими исключениями сохраняет C как подмножество. Базовый язык, C подмножество C++, спроектирован так, что имеется очень близкое соответствие между его типами, операциями и операторами и компьютерными объектами, с которыми непосредственно приходится иметь дело: числами, символами и адресами. За исключением операций свободной памяти new и delete, отдельные выражения и операторы C++ обычно не нуждаются в скрытой поддержке во время выполнения или подпрограммах.

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

Одним из первоначальных предназначений C было применение его вместо программирования на ассемблере в самых насущных задачах системного программирования. Когда проектировался C++, были приняты меры, чтобы не ставить под угрозу успехи в этой области.

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

Особое внимание, уделенное при разработке C++ структуре, отразилось на возрастании масштаба программ, написанных со времени разработки C. Маленькую программу (меньше 1000 строк) вы можете заставить работать с помощью грубой силы, даже нарушая все правила хорошего стиля. Для программ больших размеров это не совсем так. Если программа в 10 000 строк имеет плохую структуру, то вы обнаружите, что новые ошибки появляются так же быстро, как удаляются старые. C++ был разработан так, чтобы дать возможность разумным образом структурировать большие программы таким образом, чтобы для одного человека не было непомерным справляться с программами в 25 000 строк. Существуют программы гораздо больших размеров, однако те, которые работают, в целом, как оказывается, состоят из большого числа почти независимых частей, каждая из которых намного ниже указанных пределов. Естественно, сложность написания и поддержки программы зависит от сложности разработки, а не просто от числа строк текста программы, так что точные цифры, с помощью которых были выражены предыдущие соображения, не следует воспринимать слишком серьезно.

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

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

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

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

1. Бьерн Страуструп «Введение в язык С++».

2. Герберт Шилд «Программирование на Borland C++».

3. А. Л. Фридман “Основы объектно-ориентированного программирования на языке С++”.

4. Т.А.Павловская “Программирование на языке высокого уровня”.

5. К.Рейсдорф и К.Хендерсон “С++ Builder 5.0 освой самостоятельно”.

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

...

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

  • Формирование текстового документа с именем goto.cpp., содержимое которого взято из русифицируемой справки MSDN по оператору безусловного перехода. Выбор оптимального алгоритма решения задачи, разработка интерфейса, отладка и тестирование программы.

    курсовая работа [499,8 K], добавлен 10.11.2009

  • Разработка программы для поиска нужных сведений в телефонном справочнике с использованием языка программирования Borland C++, в качестве базы данных которого используется файл (base.txt). Реализация функции сортировки по фамилии в форматах (А-я) и (Я-а).

    курсовая работа [261,8 K], добавлен 22.08.2013

  • Разработка программных продуктов на языке программирования Borland Delphi. Применяемые таблицы и связи между ними. Пользовательский интерфейс работы с базой данных. Алгоритм работы программы "Футбольные команды и игроки". Защита от ввода неверных данных.

    курсовая работа [788,1 K], добавлен 22.06.2011

  • Разработка обучающей программы на языке программирования Borland C++ Bilder 6.0 с использованием объектно-ориентированного подхода. Особенности алгоритмической и логической реализации выполняемых системой операций. Основные формы программы и ее функции.

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

  • Разработка программы автоматизации процесса проверки знаний учащихся. Использование языка программирования Borland Delphi 7.0, его свойства, компоненты для работы со строками. Создание обучающих тестов на знание лексики и грамматики английского языка.

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

  • Разработка программы в среде программирования Borland Pascal, которая является электронным тестирующим пособием в области химии для 8-10 классов. Написание алгоритма решения задачи, определение необходимых функций, процедур, модулей, файловых переменных.

    контрольная работа [389,3 K], добавлен 19.09.2010

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

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

  • Этапы написания программы на четырех языках программирования (Turbo Pascal 7.0, Borland C++ 3.11, Delphi 7, Builder C++ 6.0), которая выводит на экран имя и фамилию студента, используя стандартные средства графики и простейшие геометрические фигуры.

    контрольная работа [1,4 M], добавлен 05.06.2010

  • Среда разработки Borland Developer Studio, возможности использования в практике дополнительного обучения. Технологии создания электронных учебно-методических комплексов. Системные требования и установка программы, логическая структура и интерфейс.

    дипломная работа [1,8 M], добавлен 23.04.2015

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

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

  • Анализ временных рядов. Разработка программы для среды визуального проектирования Borland Delphi 7.0. Математическая формулировка задачи. Структурная схема программы. Описание реализации технологии COM, динамических библиотек, возможностей программы.

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

  • Программный комплекс для разработки программы транслирующей программу с языка Pascal на язык С++. Построение логической и арифметической модели решения. Разработка компилятора для программы. Методы отладки программы и создание для нее документации.

    курсовая работа [742,6 K], добавлен 03.07.2011

  • Разработка программы создания заметок в любом месте компьютера. Выбор технологии, языка и среды разработки приложения. Описание основных алгоритмов работы программного обеспечения. Проектирование пользовательского интерфейса. Выбор стратегии тестирования.

    отчет по практике [700,5 K], добавлен 24.11.2014

  • Разработка программы обработки типизированных файлов с кодом на языке Object Pascal, с использованием компонентов Delphi для ввода и вывода данных. Разработка экранных форм и алгоритма программы. Описание программных модулей и инструкция оператору.

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

  • Ознакомление с возможностями языка Си как средой программирования высокого уровня. Циклы программирования параметрического оператора for и функции форматированного ввода. Разработка программы средствами Си: блок-схема, текст и тестирование программы.

    контрольная работа [204,4 K], добавлен 26.01.2013

  • Borland и C++Builder 6.0 как совершенная интерактивная среда программирования на языке C++. Проектирование программы, глобальные переменные. Форма создания нового каталога. Объекты на Form Dialog Delete. Блок-схема взаимодействия компонентов программы.

    курсовая работа [836,2 K], добавлен 27.08.2014

  • Контроль знаний как форма педагогической деятельности. Особенности и классификация тестовых заданий. Разработка обучающе-контролирующей программы для контроля знаний обучающихся в среде программирования Borland Delphi 7.0 под управлением Windows XP.

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

  • Постановка задачи и алгоритм решения. Листинг программы, иллюстрирующей работу с символами, строками и блоками. Описание возможностей языка С, используемых для реализации алгоритма. Тестирование итоговой программы, анализ полученных результатов расчета.

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

  • Borland Delphi 7 как универсальный инструмент разработки, применяемый во многих областях программирования, функции: добавление информации об абитуриентах в базу данных, формирование отчетов. Рассмотрение и характеристика основных компонентов Delphi.

    контрольная работа [3,6 M], добавлен 18.10.2012

  • Проектирование программного модуля в среде программирования Borland Delphi 7.0. Схемы алгоритмов решения задач по темам "Символьные переменные и строки", "Массивы", "Работа с файлами", "Создание анимации". Реализация программного модуля, код программы.

    отчет по практике [961,6 K], добавлен 21.04.2012

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