Автор: Пользователь скрыл имя, 28 Октября 2013 в 20:52, курсовая работа
Данная работа посвящена созданию своего рода базы данных на языке программирования С++. База данных содержит информацию о сотрудниках этого предприятия, а именно: фамилию сотрудника и его заработную плату. Предусмотрена возможность, как создания новой базы, так и возможность работать с базой, ранее записанной в файл. Для работы с базой данных в программе предусмотрено меню, содержащее различные операции: добавить сотрудника, удалить сотрудника, сохранить базу данных в файл и т. д. Программа выполнена в виде консольного приложения.
ПОСТАНОВКА ЗАДАЧИ 3
ВВЕДЕНИЕ 4
1 ТЕОРЕТИЧЕСКИЕ ОСНОВЫ 5
2 ОПИСАНИЕ ПРОГРАММЫ 11
2.1 Описание разработанной структуры 11
2.2 Логика работы программы. 11
2.3 Схема алгоритма функции main() 14
3 РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ 15
ЗАКЛЮЧЕНИЕ 16
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 17
ПРИЛОЖЕНИЕ А Листинг программы 18
ПРИЛОЖЕНИЕ Б Распечатки результатов 20
file<<"Высота Н: "<<(*figure.sTRAP).H<<endl;
file<<"Площадь трапеции: "<<(*figure.sTRAP).S;
puts("Результат записан в файл `result.txt`");
system("pause");
break;
После выхода из подпрограммы программа возвращается к меню.
При выборе 2-го пункта меню программа предлагает ввод данных для расчёта треугольника рассчитывает площадь, затем выводит результат расчёта и предлагает занести результаты в файл.
case 2:
puts("Рассчёт площади Треугольника.");
puts("Сторона А:");
scanf("%u",&(*figure.sTREUG).
puts("Сторона В:");
scanf("%u",&(*figure.sTREUG).
puts("Угол:");
scanf("%u",&(*figure.sTREUG).
(*figure.sTREUG).S=0.5*(*
printf("Площадь треугольника равна %.2f\n",(*figure.sTREUG).S);
//запись в файл
file.open("result.txt");
file<<"Сторона А: "<<(*figure.sTREUG).A<<endl;
file<<"Сторона В: "<<(*figure.sTREUG).B<<endl;
file<<"Угол: "<<(*figure.sTREUG).Ugol<<" градусов"<<endl;
file<<"Площадь треугольника: "<<(*figure.sTREUG).S<<endl;
puts("Результат записан в файл `result.txt`");
system("pause");
break;
При выборе 3-го пункта меню программа завершает работу.
2.3 Схема алгоритма функции main()
Для запуска программы необходимо выбрать файл Course_Work_v.9.exe. После того как запустилась программа, пользователю предоставляется меню программы с выбором геометрической фигуры (трапеции (п.1) или треугольника (п.2)) или выхода из программы(п.3).
Что бы выбрать пункт меню, нужно ввести с клавиатуры номер пункта меню и нажать клавишу ENTER.
После выбора
пункта меню, пользователю предоставляется
ввести с клавиатуры исходные данные
для расчета площади
Программа производит расчёт площади геометрической фигуры, выводит результат на экран и предлагает записать данный результат в файл “y/n”. Если пользователь хочет записать данные в файл, то нужно нажать клавишу “y” и будет создан файл result.txt с данными, если нет, то клавишу “n”.
Для выхода из программы необходимо выбрать п.0 «Выход».
ЗАКЛЮЧЕНИЕ
Тестирование программы показало ее эффективную работу. Все пункты меню работают исправно. Вывод результата и запись их в файл происходит без ошибок и соответствует заданию.
Данный программный продукт может быть использован для вычисления геометрических величин различных фигур, если данный продукт будет модернизирован.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Самоучитель С++ с примерами и задачами; А.Н.Васильев – СПб.:Питер, 2010 г.
2. www.cyberforum.ru
3. http://www.realcoding.net
ПРИЛОЖЕНИЕ А
Листинг программы.
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <stdio.h>
using namespace std;
typedef unsigned int uint;
#define pi 3.14159265358979323846
struct TRAPEZIA{
uint A;
uint B;
uint H;
float S;
}trapezia;
struct TREUGOLNIK{
uint A;
uint B;
uint Ugol;
float S;
}treugolnik;
union FIGURE{
TREUGOLNIK*sTREUG;
TRAPEZIA*sTRAP;
}figure;
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(0,"");
int pMenu=0;//пункт меню
figure.sTRAP=&trapezia;//
figure.sTREUG=&treugolnik;//
ofstream file;//инициализация файловой переменной
puts("Выберите фигуру для расчёта площади:");
puts("1. Трапеция");
puts("2. Треугольник");
puts("0. Выход");
scanf("%i",&pMenu);
while(pMenu<0 || pMenu>2){
puts("Вы ввели неверное зачение, попробуйте ещё раз:");
scanf("%i",&pMenu);}
while(pMenu>0 && pMenu<=2){
switch(pMenu){
case 1:
puts("Рассчёт площади Трапеции.");
puts("Основание А:");
scanf("%u",&(*figure.sTRAP).A)
puts("Основание В:");
scanf("%u",&(*figure.sTRAP).B)
puts("Высота Н:");
scanf("%u",&(*figure.sTRAP).H)
printf("Площадь трапеции равна %.2f\n",(*figure.sTRAP).S);
//запись в файл
file.open("result.txt");
file<<"Основание А: "<<(*figure.sTRAP).A<<endl;
file<<"Основание В: "<<(*figure.sTRAP).B<<endl;
file<<"Высота Н: "<<(*figure.sTRAP).H<<endl;
file<<"Площадь трапеции: "<<(*figure.sTRAP).S;
puts("Результат записан в файл `result.txt`");
system("pause");
break;
case 2:
puts("Рассчёт площади Треугольника.");
puts("Сторона А:");
scanf("%u",&(*figure.sTREUG).
puts("Сторона В:");
scanf("%u",&(*figure.sTREUG).
puts("Угол:");
scanf("%u",&(*figure.sTREUG).
printf("Площадь треугольника равна %.2f\n",(*figure.sTREUG).S);
//запись в файл
file.open("result.txt");
file<<"Сторона А: "<<(*figure.sTREUG).A<<endl;
file<<"Сторона В: "<<(*figure.sTREUG).B<<endl;
file<<"Угол: "<<(*figure.sTREUG).Ugol<<" градусов"<<endl;
file<<"Площадь треугольника: "<<(*figure.sTREUG).S<<endl;
puts("Результат записан в файл `result.txt`");
system("pause");
break;
default:break;}
system("cls");//очистка экрана
puts("Выберите фигуру для расчёта площади:");
puts("1. Трапеция");
puts("2. Треугольник");
puts("0. Выход");
scanf("%i",&pMenu);
}
return 0;
}
ПРИЛОЖЕНИЕ Б
Распечатки результатов.
Информация о работе Разработка консольного приложения на языке С++