Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пантелеева_БСТ1904.docx
Скачиваний:
9
Добавлен:
04.03.2022
Размер:
16.2 Mб
Скачать

7 Разработка блок-схемы

Разработаем блок-схему функции Gen(int n, params int[] masPrt) и представим на рисунке 1.

Рисунок 1 – Блок схемы функции Gen()

Разработаем блок-схему функции Kall(int n, ref int k, TextBox t, int[] masPrt) и представим на рисунке 2.

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

Разработаем блок-схему метода Vivod(int n, int k, DataGridView grid, params int[] rezmas) и представим на рисунке 3.

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

Разработаем блок-схему функции, которая создает результирующий массив void NewMass(int n, int k, int[] masPrt, params int[] rezmas) и представим на рисунке 4.

Рисунок 4 – Блок-схема функции NewMass()

Разработаем блок-схему событийного метода button1_Click и представим на рисунке 5.

Рисунок 5 – Блок-схема событийной функции button1_Click

Разработаем блок-схему событийного метода button7_Click и представим на рисунке 6.

Рисунок 6 – Блок-схема событийной функции button7_Click

8 Код программы

Form1.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace _3semectr

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

Form2 f = new Form2();

this.Hide();

f.ShowDialog();

}

private void button2_Click(object sender, EventArgs e)

{

Form5 f = new Form5();

this.Hide();

f.ShowDialog();

}

private void button3_Click(object sender, EventArgs e)

{

Form6 f = new Form6();

this.Hide();

f.ShowDialog();

}

private void button4_Click(object sender, EventArgs e)

{

Form23 f = new Form23();

this.Hide();

f.ShowDialog();

}

private void button5_Click(object sender, EventArgs e)

{

Form26 f = new Form26();

this.Hide();

f.ShowDialog();

}

}

}

Form26.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Data.OleDb;

using massivs;

using Microsoft.VisualBasic;

using iTextSharp;

namespace _3semectr

{

public partial class Form26 : Form

{

public Form26()

{

InitializeComponent();

}

public static int n { get; set; }

public static int[] mas { get; set; }

public static int[] rezmas { get; set; }

private void button1_Click(object sender, EventArgs e)

{

String g = Interaction.InputBox("Введите количество элементов массива = ", "", "", -1, -1);

n = Convert.ToInt32(g);

mas = new int[n];

LB4.Gen(n, mas);

LB4.Vivod(n, dataGridView1, mas);

int k = 0;

rezmas = new int[n];

LB4.Kall(n, ref k, textBox2, mas);

LB4.NewMass(n, k, mas, rezmas);

LB4.Vivod(n, dataGridView2, rezmas);

}

private void Form26_Load(object sender, EventArgs e)

{

}

private void button7_Click(object sender, EventArgs e)

{

int m = n;

int[] masPrt = mas;

int[] rezzz = rezmas;

int j = m;

LB4.add();

LB4.add_struct();

LB4.add_zap(ref masPrt, ref rezzz, n, j);

}

private void button4_Click(object sender, EventArgs e)

{

Form1 f = new Form1();

this.Hide();

f.ShowDialog();

}

}

}

massivs.dll

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.IO;

using PdfSharp.Pdf;

using PdfSharp;

using RazorPDF;

using iTextSharp;

using iTextSharp.text;

using iTextSharp.text.pdf;

using System.Data.OleDb;

using Microsoft.Office.Interop.Word;

using Font = iTextSharp.text.Font;

using Microsoft.Office.Interop.Excel;

namespace massivs

{

public class LB4

{

public static void Gen(int n, params int[] mas)

{

Random a = new Random();

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

mas[i] = (int)(a.Next(0, 1000));

}

public static void Kall(int n, ref int k, System.Windows.Forms.TextBox t, int[] mas)

{

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

if (mas[i] % 16 == mas[i] % 8)

k++;

t.Text = Convert.ToString(k);

}

public static void Vivod(int n, DataGridView grid, params int[] rezmas)

{

grid.RowCount = 2;

grid.ColumnCount = n;

grid.Rows.Add("Номер элемента", "Значение");

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

{

grid.Rows[0].Cells[i].Value = i + 1;

grid.Rows[1].Cells[i].Value = rezmas[i];

}

int Width = 0;

for (int s = 0; s < grid.ColumnCount; s++)

Width += grid.Columns[s].Width;

if (Width > 1000)

grid.Width = 1000;

else

grid.Width = Width;

}

public static void NewMass(int n, int k, int[] mas, params int[] rezmas)

{

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

{

int m = i;

if (m % 2 != 0)

rezmas[i] = k;

else

rezmas[i] = mas[i];

}

}

public static void add()

{

var k = new ADOX.Catalog();

try

{

k.Create("Provider=Microsoft.Jet.OLEDB.4.0; Data Source= F:\\ТП\\mas.mbd");

MessageBox.Show("БД успешно создана");

}

catch (System.Runtime.InteropServices.COMException sit)

{

MessageBox.Show(sit.Message);

}

finally

{

k = null;

}

}

public static void add_struct()

{

var p = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\ТП\\mas.mbd");

p.Open();

var c = new OleDbCommand("CREATE TABLE [MASSIVS]([Номер элемента] counter, [Исходный массив] char(200), [Результирующий массив] char (200))", p);

try

{

c.ExecuteNonQuery();

MessageBox.Show("Структура БД записана");

}

catch (Exception situation)

{

MessageBox.Show(situation.Message);

}

p.Close();

}

public static void add_zap(ref int[] mas, ref int[] rezmas, int len, int j)

{

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

{

var p = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\ТП\\mas.mbd");

p.Open();

if (i < j)

{

var c = new OleDbCommand("INSERT INTO [MASSIVS](" + " [Исходный массив],[Результирующий массив]) VALUES('" + mas[i] + "','" + rezmas[i] + "')");

c.Connection = p;

c.ExecuteNonQuery();

}

else

{

var c = new OleDbCommand("INSERT INTO [MASSIVS](" + " [Исходный массив],[Результирующий массив]) VALUES('" + mas[i] + "','')");

c.Connection = p;

c.ExecuteNonQuery();

}

p.Close();

}

MessageBox.Show("В таблицу БД была добвлена запись", "Информация", MessageBoxButtons.OK, MessageBoxIcon.None);

}

}

}

Соседние файлы в предмете Технологии программирования