Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Блок-схема функцииvoidMain()




 

Таблица 2 – Описание переменных функцииvoidMain()

 

Переменная Назначение переменной
args Рабочая переменная

 

Блок-схема:

 

 

Рис.1Блок-схема функции voidMain()

 

 


 


Описание функции voidWriteFile()

 

Таблица 3 – Описание переменных функцииvoidWriteFile()

Переменная Назначение переменной
aFileName Имя загружаемого файла
FileName рабочая переменная

 

 

 

Рис.2Блок-схемафункцииvoidWriteFile()

Описание функции voidaddLineinFile()

 

Таблица 4 - Описание переменных функцииvoidaddLineinFile()

 

Переменная Назначение переменной
aFileName Имя загружаемого файла
aStr рабочая переменная

 

 

Рис.3Блок-схемафункцииvoidaddLineinFile()


 


Описание функции voidsearchforalineinfile()

Таблица 5 - Описаниефункцииvoidsearchforalineinfile()

 

Локальные переменные назначение
aFileName Имя загружаемого файла
List<string>ListStr указатель на список

 

Блок схема:

 

 

 

Рис.4Описаниефункции void searchforalineinfile()

Описаниефункцииvoid sortingline()

Таблица 6 - описаниефункцииvoid sortingline()

 

Локальные переменные Назначение
List<string>ListStr указатель на список
aFileName Имя загружаемого файла

 

Блок схема:

 

 

Рис.5Описание функции voidsortingline()

Описание функции voidediting()

Таблица 7 - Описаниефункцииstaticvoidediting()

 

Локальные переменные

назначение

aFileName

Имя загружаемого файла

aNumLine

Рабочая переменная

i

Переменная для подсчета

List<string>ListStr

указатель на список

str

Рабочая переменная
     

 

Блок-схема:

 

Рис.6Описание функции voidediting()

Описаниефункцииstatic void deleteLine()

Таблица 8 – ОписаниефункцииstaticvoiddeleteLine()

 

Локальные переменные назначение
aFileName Имя загружаемого файла
List<string>ListStr указатель на список
aNumLineDel Рабочая переменная

 

Блок схема:

 

 

 

Рис.7ОписаниефункцииstaticvoiddeleteLine(

Блок схема графического задания

Рис.8Описание функции графического задания()

Руководство по эксплуатации программы

При загрузке программы выводится кнопки с действиями.

Для продолжения работы нужно нажать на кнопку “Вывести таблицу”.

 

Рис 9 - Экранная форма загрузка программы

 

При нажатии на кнопку «вывести таблицу» будет выведена таблица загруженной БД.

Рис 10 - Экранная форма Вывода таблицы.

При редактировании необходимо нажать 2 раза ЛКМ на нужную строку и поле для редактирования. После нужно нажать на кнопку сохранить.

 

Рис11- Экранная форма Редактирования записи

 

Для добавления новой записи нужно нажать на кнопку добавить строку и заполнить ее, после нажать кнопку “Сохранить”.

 

Рис12 - Экранная форма Добавление новой записи.

 

Для удаления необходимо нажать на строку которую хотим удалить, после нажать на кнопку ”Удалить строку”.

Рис 13 - Экранная форма Удаления строки

 

При выборе кнопки поиск нужно написать признак и нажать поиск.

Рис 14 - Экранная форма Поиска записи в таблице

 

 

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

Основная литература

1 Роберт Седжвик. Алгоритмы на C++. Изд: Вильямс, 2011 г. 1056 стр.

2 Литвиненко Н. А. Технология программирования на С++. Изд: БХВ-Петербург,2012 г. 281стр

3 Х. М. Дейтел, П. Дж. Дейтел. Как программировать на C++. Изд: Бином-Пресс, 2013 г., 800 стр.

4 Герберт Шилдт. C++. Методики программирования Шилдта. Изд: Вильямс, 2011 г., 480 стр.

5 Крис Х. Паппас, Уильям Х. МюррейIII. Отладка в С++. Руководство для разработчиков. Изд: Бином-Пресс, 2012 г., 510 стр.

 

Дополнительная литература

 1 Макс Шлее. Профессиональное программирование на С++. Изд: БХВ-Петербург, 2011 г. 883 стр.

2 Борис Пахомов. С/С++ и MSVisualC++ 2010 начинающих .Изд: БХВ-Петербург, 2011 г. 726 стр.

3 АйвонХортон . VisualC++ 2010. Полный курс. Изд: Вильямс,тр 2011 г. 1216 с.

4 Герберт Шилдт. Искусство программирования на С++. Изд: БХВ-Петербург, 2012 г. 506 стр.

5 Стефан Р. С++ для чайников. Изд: Компьютерное издательство «Диалектика». 2013г. 337стр.

Интернет источники

1https://msdn.microsoft.com/

2 www.cyberforum.ru

3 www.cplusplus.com

 

Заключение

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

 

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

 

Инструментальной средой разработки программ стала MS VisualStudio 2017.

    В первом задании курсовой работы были рассмотрены такие методы как связанные списки. Заданныесписки должны были храниться в файле БД, извлекаться и сохраняться. При выполнении данного задания использовались связанные списки класса List<T>, которые представляет строго типизированный список объектов, доступных по индексу и поддерживают методы для поиска по списку, выполнения сортировки и других операций со списками.

 

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

 

 

Приложение А.Листинг программы БД «Банк»

using System;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Linq;

usingSystem.Text;

usingSystem.Windows.Forms;

using System.IO;

usingWMPLib;

 

namespace WindowsFormsApplication1

{

publicpartialclassForm1 : Form

{

WMPLib.WindowsMediaPlayerpla = newWMPLib.WindowsMediaPlayer();

 

public Form1()

   {

//System.Media.SoundPlayer player = new System.Media.SoundPlayer();

InitializeComponent();

       pla.URL = "C:/Users/ILNUR/Downloads/WindowsFormsApplication1 (1)/WindowsFormsApplication1/WindowsFormsApplication1/bin/Debug/music.mp3";

pla.controls.stop();

 

this.Load += newEventHandler(Form1_Load);

   }

 

privatevoid Form1_Load(object sender, EventArgs e)

   {

 

   }

 

privatevoid dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)

   {

 

   }

 

privatevoid button1_Click(object sender, EventArgs e)

   {

 

StreamReadermyRead = newStreamReader(@"C:\Users\ILNUR\Downloads\WindowsFormsApplication1 (1)\WindowsFormsApplication1\WindowsFormsApplication1\banks.txt", System.Text.Encoding.Default);

string[] str;

intnum = 0;

try

               {

 

string[] str1 = myRead.ReadToEnd().Split('\n');

num = str1.Count();

                   dataGridView1.RowCount = num + 1 ;

for (int i = 0; i <num; i++)

                   {

                       {

 

str = str1[i].Split(' ');

for (int j = 0; j < dataGridView1.ColumnCount; j++)

                           {

try

                               {

                                   dataGridView1.Rows[i].Cells[j].Value = str[j];

                               }

 

catch (Exception ex)

                               {

//MessageBox.Show(ex.Message);

                               }

                           }

                       }

                   }

               }

 

catch (Exception ex)

               {

MessageBox.Show(ex.Message);

               }

myRead.Close();

           }

 

privatevoid button2_Click(object sender, EventArgs e)

   {

string path = @"C:\Users\ILNUR\Downloads\WindowsFormsApplication1 (1)\WindowsFormsApplication1\WindowsFormsApplication1\banks.txt";

StreamWritermyWriter = newStreamWriter(path,false, System.Text.Encoding.Default);

try

       {

for (int i = 0; i < dataGridView1.RowCount - 1; i++)

           {

for (int j = 0; j < dataGridView1.ColumnCount; j++)

               {

myWriter.Write(dataGridView1.Rows[i].Cells[j].Value.ToString());

if ((dataGridView1.ColumnCount - j) != 1) myWriter.Write(" ");

               }

 

if (((dataGridView1.RowCount - 1) - i - 1) != 0) myWriter.WriteLine();

           }

       }

catch (Exception ex)

       {

MessageBox.Show(ex.Message);

       }

finally

       {

myWriter.Close();

       }

myWriter.Close();

   }

 

privatevoid button3_Click(object sender, EventArgs e)

   {

for (int i = 0; i < dataGridView1.RowCount; i++)

       {

           dataGridView1.Rows[i].Selected = false;

for (int j = 0; j < dataGridView1.ColumnCount; j++)

if (dataGridView1.Rows[i].Cells[j].Value != null)

if (dataGridView1.Rows[i].Cells[j].Value.ToString().Contains(textBox1.Text))

                   {

DataGridViewCell cell = dataGridView1.Rows[i].Cells[j];

 

                       dataGridView1.Rows[i].Selected = true;

                       dataGridView1.CurrentCell = cell;

break;

                   }

       }

   }

 

privatevoid button4_Click(object sender, EventArgs e)

   {

int a = dataGridView1.CurrentRow.Index;

dataGridView1.Rows.Remove(dataGridView1.Rows[a]);

   }

 

 

privatevoid button6_Click(object sender, EventArgs e)

   {

pla.controls.play();

   }

 

privatevoid button7_Click(object sender, EventArgs e)

   {

pla.controls.pause();

   }

 

privatevoid button5_Click(object sender, EventArgs e)

{

       dataGridView1.RowCount = dataGridView1.RowCount +1;

   }

}

}

ПриложениеБ.Листингпрограммыграфическиепримитивы

#include<stdio.h>#include <stdlib.h>#include <conio.h>#include <graphics.h>#include <dos.h> void A(){          intx,y;          x=getmaxx();          y=getmaxy();          setviewport(0,0,x,y,1); setbkcolor (LIGHTGRAY); //Zemlasetfillstyle(1, BROWN);rectangle(1,400,1000,500);bar (1,400,1000,500); //Seivsetfillstyle(1,RED);rectangle(10,300,60,400);bar (10,300,60,400); // Oknosetfillstyle(1,LIGHTBLUE);rectangle(350,250,200,100);bar (350,250,200,100);line(350,160,200,160);line(275,160,275,250); //Solncesetfillstyle(1,YELLOW);fillellipse (325,130,20,20); //Textsettextstyle(SANS_SERIF_FONT, HORIZ_DIR, 7);setcolor(YELLOW);outtextxy(400, 150, "Bank"); //Dokument }voidbachok(){          setcolor(RED);setfillstyle(1,RED);rectangle(60,350,80,370);bar (60,350,80,370);}voidchel(int x){          //Chelovek1          A();setcolor(GREEN);setfillstyle(1,GREEN);fillellipse (430-x,310,20,20);setlinestyle(0,0,3);line(430-x,310,430-x,375);setlinestyle(0,0,3);line(430-x,350,460-x,360);setlinestyle(0,0,3);line(400-x,350,430-x,350);setlinestyle(0,0,3);line(400-x,400,430-x,375);setlinestyle(0,0,3);line(430-x,375,460-x,400);setcolor(WHITE);setfillstyle(1,WHITE);fillellipse (422-x,306,1,1);setcolor(WHITE);setfillstyle(1,WHITE);fillellipse (438-x,306,1,1);setfillstyle(1,WHITE);fillellipse (430-x,317,2,1);setfillstyle(1,WHITE);rectangle(395-x,350,410-x,365);bar (395-x,350,410-x,365); }void chel2(){A();          setcolor(GREEN);setfillstyle(1,GREEN);fillellipse (100,310,20,20);setlinestyle(0,0,3);line(100,310,100,375);setlinestyle(0,0,3);line(70,350,100,360);setlinestyle(0,0,3);line(100,350,130,350);setlinestyle(0,0,3);line(70,400,100,375);setlinestyle(0,0,3);line(100,375,130,400);setcolor(WHITE);setfillstyle(1,WHITE);fillellipse (92,306,1,1);setcolor(WHITE);setfillstyle(1,WHITE);fillellipse (108,306,1,1);setfillstyle(1,WHITE);fillellipse (100,317,2,1);} void chel3(int u){A();          setcolor(GREEN);setfillstyle(1,GREEN);fillellipse (100+u,310,20,20);setlinestyle(0,0,3);line(100+u,310,100+u,375);setlinestyle(0,0,3);line(70+u,350,100+u,360);setlinestyle(0,0,3);line(100+u,350,130+u,350);setlinestyle(0,0,3);line(70+u,400,100+u,375);setlinestyle(0,0,3);line(100+u,375,130+u,400);setcolor(WHITE);setfillstyle(1,WHITE);fillellipse (92+u,306,1,1);setcolor(WHITE);setfillstyle(1,WHITE);fillellipse (108+u,306,1,1);setfillstyle(1,WHITE);fillellipse (100+u,317,2,1);}int main(){intgd, gm, error, i;detectgraph (&gd,&gm);initgraph (&gd, &gm, "c:\\borlandc\\bgi");error=graphresult ();if (error !=grOk){puts (grapherrormsg (error)); exit (-1);}A();for (int j=0;j<320; j=j+80){clearviewport();chel(j); sleep(1);}for (int d=320; d<400; d=d+80){          clearviewport();          chel(d);          bachok();          sleep(1);}{clearviewport();          chel2();}for(int b=0; b<720; b=b+80){          clearviewport();          chel3(b);          sleep(1); }getch();closegraph ();return 0;}

 


  Рис.21. Экраннаяформатестированияпрограммысиспользованиемграфическихпримитивов

 

Рис.22. Экраннаяформатестированияпрограммысиспользованиемграфическихпримитивов

 

Рис.23. Экраннаяформатестированияпрограммысиспользованием

графическихпримитивов

 

 

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

 

public partial class Form1 : Form

{

WMPLib.WindowsMediaPlayerpla = new WMPLib.WindowsMediaPlayer();

 

public Form1()

   {

       //System.Media.SoundPlayer player = new System.Media.SoundPlayer();

InitializeComponent();

       pla.URL = " C:/Users/ILNUR/Downloads/WindowsFormsApplication1 (1)/WindowsFormsApplication1/WindowsFormsApplication1/bin/Debug/music.mp3";

pla.controls.stop();

 

this.Load += new EventHandler(Form1_Load);

}

private void button6_Click(object sender, EventArgs e)

   {

pla.controls.play();

   }

 

private void button7_Click(object sender, EventArgs e)

{

pla.controls.pause();}

 










Последнее изменение этой страницы: 2018-05-10; просмотров: 240.

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