Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Комаров КУРСОВАЯ ПРОГРАММИРОВАНИЕ.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
789.5 Кб
Скачать

Заключение

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

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

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

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

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

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

Темой четвертого задания курсовой работы стала работа с методами. При выполнении задания была составлена программа вызова метода с помощью которого было решено условие данного задания.

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

По окончанию курсовой работы можно сказать, что нами были изучены и закреплены следующие задачи:

- ставить задачу и разрабатывать алгоритм её решения;

- использовать прикладные системы программирования;

- разрабатывать основные программные документы;

- работать с современными системами программирования, включая объектно-ориентированные;

- языками процедурного и объектно-ориентированного программирования, навыками разработки и отладки программ не менее, чем на одном из алгоритмических процедурных языков программирования высокого уровня,

- методами и средствами разработки и оформления технической документации.

Список использованной литературы

  1. Хейлсберг А., Торгерсен М., Вилтамут С., Голд П. Язык программирования С#. Классика Computers Science. - СПБ.: Питер, 2012

  2. Хорев П. Б. Технологии объектно-ориентированного программирования: Учебное пособие для вузов. - М.: Академия, 2004

  3. Орлов С. А. Технологии разработки программного обеспечения: Учебник для вузов. – 3-е изд., СПб.: Питер, 2004

  4. Мартин Р., Быстрая разработка программ: принципы, примеры, практика: Пер. с англ., М.: Издат. дом «Вильямс», 2004

  5. Побегайло А.П. С/С++ для студента. - СПБ.: БХВ-Петербург, 2006

ПРИЛОЖЕНИЕ 1

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace Вариант_11_1

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

int[,] a = new int[10, 10];

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

{

for (int j = 0; j < 10; j++)

{

if (i >= j)

{

a[i, j] = (j + 1) * (j + 1);

}

else

{

a[i, j] = Convert.ToInt32((i + 1).ToString() + (i + 1).ToString());

}

}

}

int sek7 = 0;

double skkce = 0;

string s = "i=\\j= \t";

for (int j = 0; j < 10; j++) s = s + j.ToString() + "\t";

s = s + "\n";

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

{

s = s + "\n" + i.ToString() + "\t";

for (int j = 0; j < 10; j++)

{

if (a[i, j] % 7 == 0)

{

sek7 = sek7 + a[i, j];

}

if ( a[i, j] % 2== 0)

{

skkce = skkce + Math.Sqrt(a[i, j]);

}

s = s + a[i, j].ToString() + "\t";

}

s = s + "\n";

}

richTextBox1.Text = s;

richTextBox1.AppendText("\nСумма квадратных корней чётных эле¬ментов матрицы " + skkce.ToString());

richTextBox1.AppendText("\nСумма элементов матрицы, кратных 7 равна " + sek7.ToString());

}

}

}ПРИЛОЖЕНИЕ 2

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace _11_2

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

richTextBox1.Clear();

double n = 1;

double a = (20 * n - n * n * n) / n;

double z = n;

double sp = 0;

while (a > 0)

{

sp = sp + a;

richTextBox1.AppendText("a" + n.ToString() + " = " + a.ToString() + "\n");

n = n + 1;

z = z * n;

a = (20 * n - n * n * n) / z;

}

richTextBox1.AppendText("Индекс первого отрицательного " + n.ToString() + "\n");

richTextBox1.AppendText("Значение первого отрицательного " + a.ToString() + "\n");

richTextBox1.AppendText("Корень квадратный суммы " + Math.Sqrt(sp) + "\n");

}

}

}

ПРИЛОЖЕНИЕ 3

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Text.RegularExpressions;

namespace Вариант_11_4

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

int[,] a = new int[10, 10];

int[,] b = new int[10, 10];

int n = 0;

int m = 0;

int n1 = 0;

int m1 = 0;

static int funk(int [,] a,int m,int n,int [,] b,int m1,int n1)

{

int sd = 0;

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

{

sd = sd + a[i, i] + a[i, n - i - 1];

}

int sd2 = 0;

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

{

sd2 = sd2 + b[i, i] + b[i, n - i - 1];

}

if (sd < sd2)

return 1;

else

return 2;

}

private void button1_Click(object sender, EventArgs e)

{

richTextBox3.Clear();

string s = "";

string[] MS; // массив строк

string razdel = @"[\s]+"; // разделитель любое число пробельных, знаков табуляции, перевода строки, новой страницы

Regex r = new Regex(razdel); // определить разделитель

int i = 0;

int j = 0;

// чтение из блкнота и запись в массив

for (i = 0; i < richTextBox1.Lines.Length; i++)

{

s = richTextBox1.Lines[i];

if (i != 0 && richTextBox1.Lines[i - 1].Length == 0) goto стоп;

s = s.Trim();

MS = r.Split(s); // разделить на подстроки

for (j = 0; j < MS.Length; j++)

{

try

{

a[i, j] = Convert.ToInt32(MS[j]);

}

catch (Exception ex)

{

}

}

}

стоп:

//размерность массива

m = i - 1;

n = r.Split(richTextBox1.Lines[1]).Length;

//********************************

s = "";

string[] MS1; // массив строк

// string razdel = @"[\s]+"; // разделитель любое число пробельных, знаков табуляции, перевода строки, новой страницы

// Regex r = new Regex(razdel); // определить разделитель

i = 0;

j = 0;

// чтение из блкнота и запись в массив

for (i = 0; i < richTextBox2.Lines.Length; i++)

{

s = richTextBox2.Lines[i];

if (i != 0 && richTextBox2.Lines[i - 1].Length == 0) goto стоп1;

s = s.Trim();

MS1 = r.Split(s); // разделить на подстроки

for (j = 0; j < MS1.Length; j++)

{

try

{

b[i, j] = Convert.ToInt32(MS1[j]);

}