Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
с1# (Восстановлен).doc
Скачиваний:
247
Добавлен:
07.02.2015
Размер:
3.82 Mб
Скачать

2.6 Лабораторная работа №6

Тема: Двумерные массивы. Window проект

Цель занятия: Изучить структуру программ, основные операторы VB.NET для вычислений, отличительные признаки языка программирования VB и VB.NET. Получить навыки работ по составлению простейших программ в консольном варианте.

1. построение словесных алгоритмов

2. Построение алгоритмов в виде блок-схем

3. Разработка программы в консольном варианте .

4.Разработка программ на основе основных математических операторов

2.7

Public Class Form2

Private Sub назадToolStripMenuItem_Click(ByVal sender

Form1.Show()

Me.Hide()

End Sub

Private Sub вывестиToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles вывестиToolStripMenuItem.Click

Dim n, m, i, j As Integer

Dim a(100, 100) As Integer

Dim min, max As Double

Dim k As String

n = Val(TextBox1.Text)

m = Val(TextBox2.Text)

k = «»

For i = 1 To n

For j = 1 To m

a(i, j) = Int(Rnd(1) * (-200) + 100)

k = k + « « + Str(a(i, j))

Next

ListBox1.Items.Add(k)

k = «»

Next

min = a(1, 1)

For i = 1 To n

For j = 1 To m

If a(i, j) > max Then max = a(i, j)

If a(i, j) < min Then min = a(i, j)

Next Next

TextBox3.Text = Str(min)

TextBox4.Text = Str(max)

End Sub

End Class

Графика

Лабораторная работа №2

Тема: Графика.

Цель занятия: Изучить структуру программ, основные операторы С#.NET для. Построения графических фигур. Получить навыки работ по составлению простейших графических программ

Условие задачи. Нарисовать на форме желтого цвета прямоугольник зеленного цвета и эллипс красного цвета

using

System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

namespace Brush

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void Form1_Paint(object sender, PaintEventArgs e)

{

//Задаем тип и цвет кисти

SolidBrush myBrush = new SolidBrush(System.Drawing.Color.Green);

//Объявляем объект myRectangle и создаем Экземпляр этого объекта

Rectangle myRectangle = new Rectangle(10, 15, 150, 200);

//рисуем и заполняем фигуру

e.Graphics.FillRectangle(myBrush,myRectangle);

//Высвобождаем память, выделенную объекту myBrush

myBrush.Dispose();

}

private void pictureBox1_Paint(object sender,PaintEventArgs e)

{

//Задаем тип и цвет кисти

SolidBrush myBrush = new SolidBrush(System.Drawing.Color.Red);

//Объявляем объект myRectangle и создаем Экземпляр этого объекта

Rectangle myRectangle = new Rectangle(10, 15, 150, 200);

e.Graphics.FillEllipse(myBrush, myRectangle);

//Высвобождаем память, выделенную объекту myBrush

myBrush.Dispose();

}

Лабораторная работа 2. Графика. Нарисовать и закрасить вставленные фигуры

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

namespace _llabb

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void Form1_Paint(object sender, PaintEventArgs e)

{

Pen myPen = new Pen(Color.Black, 3);

SolidBrush myB1 = new SolidBrush(System.Drawing.Color.Blue);

SolidBrush myB2 = new SolidBrush(System.Drawing.Color.Red);

e.Graphics.FillRectangle(myB2, 0,0,1280,1024);

e.Graphics.DrawLine(myPen, 240, 60, 120, 220);

e.Graphics.DrawLine(myPen, 240, 60, 360, 220);

e.Graphics.DrawLine(myPen, 120, 220, 360, 220);

e.Graphics.FillPolygon(myB1, new Point[]

{

new Point(240,60),

new Point(120,220),

new Point(360,220),

});

e.Graphics.DrawEllipse(myPen, 190, 115, 100, 100);

e.Graphics.FillEllipse(myB2, 190, 115, 100, 100);

myPen.Dispose();

myB1.Dispose();

myB2.Dispose();

}

private void exitToolStripMenuItem_Click(object sender, EventArgs e)

{

Close();

}

private void authorToolStripMenuItem_Click(object sender, EventArgs e)

{

Form2 frm = new Form2();

frm.Show();

}

private void aboutToolStripMenuItem_Click(object sender, EventArgs e)

{

Form3 rfm = new Form3();

rfm.Show();

}

}

}

С++

/ grafDlg.cpp : implementation file

//

#include "stdafx.h"

#include "graf.h"

#include "grafDlg.h"

#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILE

static char THIS_FILE[] = __FILE__;

#endif

/////////////////////////////////////////////////////////////////////////////

// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog

{

public:

CAboutDlg();

// Dialog Data

//{{AFX_DATA(CAboutDlg)

enum { IDD = IDD_ABOUTBOX };

//}}AFX_DATA

// ClassWizard generated virtual function overrides

//{{AFX_VIRTUAL(CAboutDlg)

protected:

virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support

//}}AFX_VIRTUAL

// Implementation

protected:

//{{AFX_MSG(CAboutDlg)

//}}AFX_MSG

DECLARE_MESSAGE_MAP()

};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)

{

//{{AFX_DATA_INIT(CAboutDlg)

//}}AFX_DATA_INIT

}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)

{

CDialog::DoDataExchange(pDX);

//{{AFX_DATA_MAP(CAboutDlg)

//}}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)

//{{AFX_MSG_MAP(CAboutDlg)

// No message handlers

//}}AFX_MSG_MAP

END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////

// CGrafDlg dialog

CGrafDlg::CGrafDlg(CWnd* pParent /*=NULL*/)

: CDialog(CGrafDlg::IDD, pParent)

{

//{{AFX_DATA_INIT(CGrafDlg)

// NOTE: the ClassWizard will add member initialization here

//}}AFX_DATA_INIT

// Note that LoadIcon does not require a subsequent DestroyIcon in Win32

m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

}

void CGrafDlg::DoDataExchange(CDataExchange* pDX)

{

CDialog::DoDataExchange(pDX);

//{{AFX_DATA_MAP(CGrafDlg)

// NOTE: the ClassWizard will add DDX and DDV calls here

//}}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP(CGrafDlg, CDialog)

//{{AFX_MSG_MAP(CGrafDlg)

ON_WM_SYSCOMMAND()

ON_WM_PAINT()

ON_WM_QUERYDRAGICON()

ON_COMMAND(ID_MENUITEM32771, OnUslovie)

ON_COMMAND(ID_MENUITEM32772, OnAvtor)

ON_COMMAND(ID_MENUITEM32773, OnFigura)

ON_COMMAND(ID__OK, OnOk)

//}}AFX_MSG_MAP

END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////

// CGrafDlg message handlers

BOOL CGrafDlg::OnInitDialog()

{

CDialog::OnInitDialog();

// Add "About..." menu item to system menu.

// IDM_ABOUTBOX must be in the system command range.

ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);

ASSERT(IDM_ABOUTBOX < 0xF000);

CMenu* pSysMenu = GetSystemMenu(FALSE);

if (pSysMenu != NULL)

{

CString strAboutMenu;

strAboutMenu.LoadString(IDS_ABOUTBOX);

if (!strAboutMenu.IsEmpty())

{

pSysMenu->AppendMenu(MF_SEPARATOR);

pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);

}

}

// Set the icon for this dialog. The framework does this automatically

// when the application's main window is not a dialog

SetIcon(m_hIcon, TRUE); // Set big icon

SetIcon(m_hIcon, FALSE); // Set small icon

// TODO: Add extra initialization here

return TRUE; // return TRUE unless you set the focus to a control

}

void CGrafDlg::OnSysCommand(UINT nID, LPARAM lParam)

{

if ((nID & 0xFFF0) == IDM_ABOUTBOX)

{

CAboutDlg dlgAbout;

dlgAbout.DoModal();

}

else

{

CDialog::OnSysCommand(nID, lParam);

}

}

// If you add a minimize button to your dialog, you will need the code below

// to draw the icon. For MFC applications using the document/view model,

// this is automatically done for you by the framework.

void CGrafDlg::OnPaint()

{

if (IsIconic())

{

CPaintDC dc(this); // device context for painting

SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

// Center icon in client rectangle

int cxIcon = GetSystemMetrics(SM_CXICON);

int cyIcon = GetSystemMetrics(SM_CYICON);

CRect rect;

GetClientRect(&rect);

int x = (rect.Width() - cxIcon + 1) / 2;

int y = (rect.Height() - cyIcon + 1) / 2;

// Draw the icon

dc.DrawIcon(x, y, m_hIcon);

}

else

{

CDialog::OnPaint();

}

}

// The system calls this to obtain the cursor to display while the user drags

// the minimized window.

HCURSOR CGrafDlg::OnQueryDragIcon()

{

return (HCURSOR) m_hIcon;

}

void CGrafDlg::OnUslovie()

{

MessageBox("Нарисовать прямоугольник в окружности на фоне ромба ","Условие");

}

void CGrafDlg::OnAvtor()

{

// TODO: Add your command handler code here

MessageBox("студентка ФМФ гр.ИМ-3 Павлова Любовь","Автор");

}

void CGrafDlg::OnFigura()

{

// TODO: Add your command handler code here

CClientDC pDC(this);

CBrush b_red,b_zel,b_sin;

b_red.CreateSolidBrush(RGB(200,0,55));

b_zel.CreateSolidBrush(RGB(0,255,0));

b_sin.CreateSolidBrush(RGB(0,0,255));

pDC.SelectObject(b_red);

pDC.Ellipse(110,50,290,230);

pDC.SelectObject(b_zel);

pDC.Rectangle(150,100,250,180);

pDC.SelectObject(b_sin);

pDC.MoveTo(200,10);

pDC.LineTo(330,140);

pDC.MoveTo(330,140);

pDC.LineTo(200,270);

pDC.MoveTo(200,270);

pDC.LineTo(70,140);

pDC.MoveTo(70,140);

pDC.LineTo(200,10);

pDC.FloodFill(200,15,RGB(0,0,0));

b_red.DeleteObject();

b_zel.DeleteObject();

b_sin.DeleteObject();

}

void CGrafDlg::OnOk()

{

// TODO: Add your command handler code here

CDialog::OnOK();

}

Язык программирования VB.NET

Построить вложенные геометрические фигуры: окружность зеленного цвета, шестиугольник синего цвета и треугольник красного цвета

Public Class Form4

Dim g As Graphics

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Form1.Show()

Me.Hide()

End Sub

Private Sub Form_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Button1.Paint

Dim g As Graphics = CreateGraphics()

Dim myBrush As New SolidBrush(Color.DarkBlue)

g.TranslateTransform(50, 50)

g.FillEllipse(Brushes.DarkGreen, 120, -10, 150, 150)

Dim points As Point() = {New Point(195, 0), New Point(235, 23), New Point(245, 70), New Point(200, 110), New Point(143, 77), New Point(145, 25), New Point(195, 0)}

g.FillPolygon(myBrush, points)

Dim triangle As Point() = {New Point(150, 50), New Point(230, 70), New Point(230, 30), New Point(150, 50)}

g.FillPolygon(Brushes.DarkRed, triangle)

End Sub

Private Sub Form4_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing

Application.Exit()

End Sub

Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End SubEnd Class