Программирование на языке С#
Заказать уникальную курсовую работу- 28 28 страниц
- 6 + 6 источников
- Добавлена 07.09.2012
- Содержание
- Часть работы
- Список литературы
- Вопросы/Ответы
Аннотация
Введение
1.Анализ технического задания
2.Программная реализация
3.Описание программы
4.Руководство программиста
5.Методика испытаний
6.Заключение
7.Список литературы
Приложение
Текст программы
tbCodedText.Size = new System.Drawing.Size(384, 249);this.tbCodedText.TabIndex = 7;// // btDecoding// this.btDecoding.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));this.btDecoding.Location = new System.Drawing.Point(6, 153);this.btDecoding.Name = "btDecoding";this.btDecoding.Size = new System.Drawing.Size(162, 23);this.btDecoding.TabIndex = 9;this.btDecoding.Text = "Расшифрование";this.btDecoding.UseVisualStyleBackColor = true;this.btDecoding.Click += new System.EventHandler(this.btDecoding_Click);// // splitContainer1// this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;this.splitContainer1.Location = new System.Drawing.Point(0, 0);this.splitContainer1.Margin = new System.Windows.Forms.Padding(2);this.splitContainer1.Name = "splitContainer1";// // splitContainer1.Panel1// this.splitContainer1.Panel1.AutoScroll = true;this.splitContainer1.Panel1.Controls.Add(this.splitContainer2);// // splitContainer1.Panel2// this.splitContainer1.Panel2.Controls.Add(this.splitContainer3);this.splitContainer1.Size = new System.Drawing.Size(771, 473);this.splitContainer1.SplitterDistance = 384;this.splitContainer1.SplitterWidth = 3;this.splitContainer1.TabIndex = 10;// // splitContainer2// this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;this.splitContainer2.Location = new System.Drawing.Point(0, 0);this.splitContainer2.Name = "splitContainer2";this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal;// // splitContainer2.Panel1// this.splitContainer2.Panel1.Controls.Add(this.lblBiginText);this.splitContainer2.Panel1.Controls.Add(this.tbBeginText);// // splitContainer2.Panel2// this.splitContainer2.Panel2.Controls.Add(this.label1);this.splitContainer2.Panel2.Controls.Add(this.btnCode);this.splitContainer2.Panel2.Controls.Add(this.tbKey);this.splitContainer2.Size = new System.Drawing.Size(384, 473);this.splitContainer2.SplitterDistance = 273;this.splitContainer2.TabIndex = 5;// // splitContainer3// this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill;this.splitContainer3.Location = new System.Drawing.Point(0, 0);this.splitContainer3.Name = "splitContainer3";this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal;// // splitContainer3.Panel1// this.splitContainer3.Panel1.Controls.Add(this.label4);this.splitContainer3.Panel1.Controls.Add(this.tbCodedText);// // splitContainer3.Panel2// this.splitContainer3.Panel2.Controls.Add(this.label2);this.splitContainer3.Panel2.Controls.Add(this.tbDecogingText);this.splitContainer3.Panel2.Controls.Add(this.btDecoding);this.splitContainer3.Size = new System.Drawing.Size(384, 473);this.splitContainer3.SplitterDistance = 276;this.splitContainer3.TabIndex = 10;// // tbDecogingText// this.tbDecogingText.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right)));this.tbDecogingText.Location = new System.Drawing.Point(0, 23);this.tbDecogingText.Multiline = true;this.tbDecogingText.Name = "tbDecogingText";this.tbDecogingText.Size = new System.Drawing.Size(384, 124);this.tbDecogingText.TabIndex = 5;// // label2// this.label2.AutoSize = true;this.label2.Location = new System.Drawing.Point(12, 7);this.label2.Name = "label2";this.label2.Size = new System.Drawing.Size(125, 13);this.label2.TabIndex = 5;this.label2.Text = "Дешифрованныйтекст";// // MainForm// this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;this.ClientSize = new System.Drawing.Size(771, 473);this.Controls.Add(this.splitContainer1);this.Name = "MainForm";this.Text = "Курсовой проект - система шифрования Вижинера";this.Load += new System.EventHandler(this.MainForm_Load);this.splitContainer1.Panel1.ResumeLayout(false);this.splitContainer1.Panel2.ResumeLayout(false);this.splitContainer1.ResumeLayout(false);this.splitContainer2.Panel1.ResumeLayout(false);this.splitContainer2.Panel1.PerformLayout();this.splitContainer2.Panel2.ResumeLayout(false);this.splitContainer2.Panel2.PerformLayout();this.splitContainer2.ResumeLayout(false);this.splitContainer3.Panel1.ResumeLayout(false);this.splitContainer3.Panel1.PerformLayout();this.splitContainer3.Panel2.ResumeLayout(false);this.splitContainer3.Panel2.PerformLayout();this.splitContainer3.ResumeLayout(false);this.ResumeLayout(false); } #endregionprivate System.Windows.Forms.Button btnCode;private System.Windows.Forms.TextBox tbBeginText;private System.Windows.Forms.TextBox tbKey;private System.Windows.Forms.Label lblBiginText;private System.Windows.Forms.Label label1;private System.Windows.Forms.Label label4;private System.Windows.Forms.TextBox tbCodedText;private System.Windows.Forms.Button btDecoding;private System.Windows.Forms.SplitContainer splitContainer1;private System.Windows.Forms.SplitContainer splitContainer2;private System.Windows.Forms.SplitContainer splitContainer3;private System.Windows.Forms.Label label2;private System.Windows.Forms.TextBox tbDecogingText;}}Файл: ViginerClass.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Viginer{classViginerClass {//Конструкторклассаpublic ViginerClass() { gen_tab_vig();}//Закрытый массив класса, содержащий алфавит для шифрованияprivatestaticchar[] mas_alf;//Закрытый массив класса, содержащий таблицу Виженераprivatechar[,] tab_vig = newchar[188, 188];//Закрытый метод класса, формирующий таблицу Виженераprivatevoid gen_tab_vig() {//Генерируемалфавитstring str = "";for (int i = 0; i <= 'z'; i++) { str = str + Convert.ToChar(i); }for (int i = 'А'; i <= 'я'; i++) { str = str + Convert.ToChar(i);}///в строке str содержится алфавит///преобразуем строку в массив одельных символов mas_alf = str.ToCharArray();///Используя алфавит, заполняем массив tab_vig///Получаем таблицу Виженераint k = 0, n = 0;for (int i = 0; i < mas_alf.Length; i++) { k = n;for (int j = 0; j < mas_alf.Length; j++) {if (k == mas_alf.Length) k = 0; tab_vig[i,j] = mas_alf[k];k++; } n++; } }//Открытый метод класса, шифрованиеpublicstring ViginerCoding(string key, string text) {int stroka = 0, stolbec = 0;string code = string.Empty;//приступаем к процессу шифрования//формируем строку ключа, ее длина должна быть//равна или больше длины сообщенияwhile(key.Length < text.Length) { key = key + key; }//преобразуем строки в массивы символовchar[] chArrayText = text.ToCharArray();char[] chArrayKey = key.ToCharArray();for (int i = 0; i < text.Length; i++){ stroka = 0; stolbec = 0;///Определяем строку и столбец таблицы Виженера, соответствующую ///символам ключа и исходного текстаwhile ((stolbec < mas_alf.Length)&& (mas_alf[stolbec] != chArrayText[i]))stolbec++;while ((stroka < mas_alf.Length) && (mas_alf[stroka] != chArrayKey[i])) stroka++;if ((stroka < mas_alf.Length) && (stolbec < mas_alf.Length)){///Если символ определен по таблице, то добавляем символ///кстрокешифра code = code + tab_vig[stolbec, stroka];}// Если символ от сутствуе в алфавите , то выдаем ///соответствующее сообщениеelsereturn"Отсутствует символ в таблице Вижинера"; }return code; }//Открытый метод класса, дешифрованиеpublicstring ViginerDecoding(string key, string code) {string text = string.Empty;int stroka = 0, stolbec = 0;while (key.Length < code.Length) { key = key + key; }char[] chArrayCode = code.ToCharArray();char[] chArrayKey = key.ToCharArray();for (int i = 0; i < code.Length; i++) { stroka = 0; stolbec = 0;while ((mas_alf[stroka] != chArrayKey[i]) && (stroka < mas_alf.Length)) stroka++;while ((tab_vig[stolbec, stroka] != chArrayCode[i]) && (stolbec < mas_alf.Length)) stolbec++;if ((stroka < mas_alf.Length) && (stolbec < mas_alf.Length)) { text = text + mas_alf[stolbec];}elsereturn"Отсутствует символ в таблице Вижинера"; }return text; } }}
1.Ч. Уэзрелла «Этюды программирования» Пер. с англ. – М.: Мир, 1982. – 288 с., ил.
2.«Информатика и программирование. Методические указания к курсовой работе» - Муром, 2007. – 10 с.
3.ГОСТ 19.101-77
4.ГОСТ 2.105-95
5.Грос К. «C#. 2008» Пер. с англ. – СПб.: БХВ-Петербург, 2009 – 576 с., ил.
6.К. Нейгел, Б. Ивьен и др. «C# 2008 и платформа .Net 3.5 для профессионалов»: Пер. с англ.: ООО «И.Д. Вильямс», 2009 – 1392 с., ил.
Вопрос-ответ:
Что такое программирование на языке С?
Программирование на языке С - это процесс создания программных решений с использованием языка программирования С.
Какие задачи решаются при анализе технического задания?
В процессе анализа технического задания выясняются требования к программе, анализируется структура данных, определяются алгоритмы решения задач и т. д.
Что такое программная реализация?
Программная реализация - это процесс создания программы на основе технического задания и спецификаций.
Какое описание программы содержится в статье?
В статье содержится описание программы, включающее информацию о функциях и особенностях программы.
Какова методика испытаний программы?
Методика испытаний программы включает в себя шаги по проверке ее работы, выявлению ошибок и проверке соответствия требованиям.
Какие компоненты программы описаны в статье?
В статье описываются компоненты такие, как аннотация, анализ технического задания, программная реализация, описание программы, руководство программиста и методика испытаний.
Какие задачи решает программа описанная в статье?
Описанная программа решает задачу кодирования и декодирования текста.
Какие функции выполняет компонент tbCodedText?
Компонент tbCodedText выполняет функцию ввода и вывода закодированного текста.
Какие языки программирования используются в программе описанной в статье?
Язык программирования C используется для реализации программы, а язык программирования System Drawing используется для использования компонента Size.
Какие действия требуется выполнить, чтобы начать использовать программу?
Для начала использования программы необходимо ввести текст в компонент tbCodedText и нажать на кнопку btDecoding.
Что такое программирование на языке С?
Программирование на языке С - это процесс создания компьютерных программ с использованием языка программирования C. Язык C является одним из самых популярных языков программирования и широко используется для разработки операционных систем, приложений, драйверов и другого программного обеспечения.
Какие этапы включает программная реализация?
Программная реализация включает несколько этапов, включающих анализ технического задания, разработку программы, написание кода, отладку и тестирование. На каждом этапе программисты работают над определенными задачами, чтобы создать работающую программу, соответствующую требованиям заказчика.