Автор работы: Пользователь скрыл имя, 26 Марта 2012 в 20:34, курсовая работа
Язык программирования С# был создан в конце 1990-х годов и стал частью общей .NET-стратегии Microsoft. Впервые он увидел свет в качестве b-версии в середине 2000 года. Главным архитектором С# был Андерс Хейлсберг - один из ведущих специалистов в области языков программирования, получивший признание во всем мире. Достаточно сказать, что в 1980-х он был автором весьма успешного продукта Turbo Pascal, изящная реализация которого установила стандарт для всех будущих компиляторов.
Введение
1 ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
2 Работа с массивами на С#
2.1 Работа с многомерными массивами
2.2 Условие задачи
3 Работа с массивами на Delphi
3.1 Работа с многомерными массивами
3.2 Условие задачи
Заключение
Список использованной литературы
Приложение №1
Приложение №2
Приложение №3
Приложение №4
Приложение №5
Приложение №6
{
ArrayClass.ant(textBox3);
ArrayClass.Displayoutrow(
ArrayClass.summa(textBox2);
}
private void dataGridView2_
{
ArrayClass.summa(textBox2);
ArrayClass.Displayoutrow(
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void button5_Click(object sender, EventArgs e)
{
ArrayClass.st();
ArrayClass.displaysts(
}
}
}
Class2.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using System.Windows.Forms;
namespace ANTproject
{
class ArrayClass : object
{
private int n;
private int m;
private int[,] a;
private int[,] ta;
private int[,] tsa;
private int i;
private int j;
private int MaxR = 10;
private int Max = 0;
private int[] outrow;
private int t;
private int s;
private int x;
public ArrayClass(int n, int m)
{
this.n = (n <= Form2.n) ? n : Form2.n;
this.m = (m <= Form2.m) ? m : Form2.m;
a = new int[this.n, this.m];
//ta = new int[this.m, this.n];
ta = new int[5, 5];
tsa = new int[5, 5];
t = 0;
outrow = new int[this.m];
}
public void initarray()
{
Random rnd = new Random();
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
a[i, j] = rnd.Next(-10, MaxR);
for (t = 0; t < m; t++) ;
t = 0;
}
public void displayarray(DataGridView DataGridView)
{
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
{
DataGridView.CurrentCell = DataGridView[j, i];
DataGridView.CurrentCell.Value = Convert.ToString(a[i, j]);
}
}
public void DrawGraphics(PictureBox PictureBox)
{
Graphics Gr = PictureBox.CreateGraphics();
int k;
int[] B = new int[n * m];
float x0;
float y0;
int H;
Gr.Clear(Color.White);
k = 0;
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
{
B[k] = a[i, j];
k++;
}
Pen Redpen = new Pen(Color.Red, 3);
x0 = PictureBox.Size.Width / (n * m);
y0 = PictureBox.Size.Height / MaxR;
H = PictureBox.Size.Height;
for (k = 1; k < (n * m); k++)
Gr.DrawLine(Redpen, x0 * (k - 1), H - (B[k - 1] * y0), x0 * k, H - (B[k] * y0));
k = 0; for (t = 0; t < n; t++)
{
B[k] = outrow[t]; k++;
}
Pen Bluepen = new Pen(Color.Blue, 3);
x0 = PictureBox.Size.Width / (n * m);
y0 = PictureBox.Size.Height / MaxR;
H = PictureBox.Size.Height;
for (k = 1; k < n; k++)
Gr.DrawLine(Bluepen, x0 * (k - 1), H - (B[k - 1] * y0), x0 * k, H - (B[k] * y0));
}
public void clearArray()
{
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
a[i, j] = 0;
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
outrow[t] = 0;
}
public void summa(TextBox TextBox)
{
//транспонируем
for (j = 0; j < n; j++)
{
s = 0;
for (i = 0; i < m; i++)
{
//хахаха
ta[i, j] = a[j, i];
}
}
//считаем сумму
t = 0;
for (j = 0; j < n; j++)
{
s = 0;
for (i = 0; i < m; i++)
{
s = s + a[j, i];
}
outrow[t] = s;
t++;
{
Max = 0;
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
if (ta[i,j] > 0)
{
}
TextBox.Text = Convert.ToString(Max);
}
}
}
}
public void Displayoutrow(DataGridView DataGridView)
{
/*
for (t = 0; t < n; t++)
{
DataGridView.CurrentCell = DataGridView[t, 0];
DataGridView.CurrentCell.Value = Convert.ToString(outrow[t]);
}
* /
//Вывод ответа, выводим заместо суммы
/*
for (int ii = 0; ii < 2; ii++)
{
for (int jj = 0; jj < 5; jj++)
{
//DataGridView.CurrentCell = DataGridView[ii, jj];
DataGridView.CurrentCell = DataGridView[jj, ii];
//DataGridView.CurrentCell.
//DataGridView.CurrentCell.
DataGridView.CurrentCell.Value = Convert.ToString(ta[jj - 1, ii - 1]);
}
}
*/
/*
//хахаха
DataGridView.CurrentCell = DataGridView[0, 0];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[0,0]);//вы
DataGridView.CurrentCell = DataGridView[0, 1];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[0, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 0];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[1, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 1];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[1, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[2, 0];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[2, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[2, 1];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[2, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[3, 0];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[3, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[3, 1];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[3, 1]);//выводим данные в ячейку
*/
//хахаха
DataGridView.CurrentCell = DataGridView[0, 0];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[0, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 0];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[0, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[0, 1];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[1, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 1];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[1, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[0, 2];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[2, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 2];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[2, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[0, 3];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[3, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 3];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[3, 1]);//выводим данные в ячейку
}
public void st()
{
for (j = 0; j < n; j++)
{
for (i = 0; i < m; i++)
{
x = ta[i, 0];
ta[i, 0] = ta[i,n-1];
ta[i, n - 1] = x;
}
}
}
public void ant(TextBox TextBox)
{
o = 0;
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
if (ta[i,j] < 0)
{
}
TextBox.Text = Convert.ToString(o);
}
}
public void displaysts(DataGridView DataGridView)
{
DataGridView.CurrentCell = DataGridView[0, 0];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[0, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 0];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[0, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[0, 1];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[1, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 1];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[1, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[0, 2];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[2, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 2];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[2, 0]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[0, 3];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[3, 1]);//выводим данные в ячейку
DataGridView.CurrentCell = DataGridView[1, 3];//выделяет ячейку
DataGridView.CurrentCell.Value = Convert.ToString(ta[3, 0]);//выводим данные в ячейку
}
}
}
Приложение №5
Форма Form1
Приложение №6
Программный код формы Unit1.pas
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
Button1: TButton;
Edit3: TEdit;
StringGrid1: TStringGrid;
Button2: TButton;
Label3: TLabel;
Edit4: TEdit;
StringGrid2: TStringGrid;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
var
j, i, n, m, pred, sum: longint;
mas: array of array of int64;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
If (trim(edit1.text)='') or (StrToInt(edit1.text)=0) then ShowMessage('Параметр N задан неверно')
else
begin
If (trim(edit2.text)='') or (StrToInt(edit2.text)=0) then ShowMessage('Параметр M задан неверно')
else
begin
If Trim(edit4.text)='' then ShowMessage('Введите предел значений(Предел=100, то A[n,m]={-99,..,100})')
else
begin
n:=StrToInt(Edit1.Text);
m:=StrToInt(Edit2.text);
Stringgrid1.ColCount:=n;//
StringGrid1.RowCount:=m;//
Stringgrid2.ColCount:=m;//
StringGrid2.RowCount:=n;//
pred:=StrToInt(Edit4.text);
setlength(mas, n, m);
for i:=0 to n-1 do
begin
for j:=0 to m - 1 do
begin
mas[i,j]:=Random(pred*2)+1-
StringGrid1.Cells[i,j]:=
StringGrid2.Cells[j,i]:=intToS
end;
end;
end;
end;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Sum:=0;
for i:=0 to n-1 do
begin
for j:=0 to m - 1 do
begin
if mas[i,j]>0 then sum:=sum+mas[i,j];
end;
end;
Edit3.Text:='Сумма положительных элементов равна '+IntToStr(Sum);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Randomize;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Sum:=0;
for i:=0 to n-1 do
begin
for j:=0 to m - 1 do
begin
if mas[i,j]<0 then sum:=sum+mas[i,j];
end;
end;
Edit3.Text:='Сумма отрицательных элементов равна '+IntToStr(Sum);
end;
end.
2