Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Юрченко Практика.doc
Скачиваний:
14
Добавлен:
07.06.2015
Размер:
1.09 Mб
Скачать

36

МRectangle 213ИНИСТЕРСВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

ДОНБАССКАЯ ГОСУДАРСТВЕННАЯ

МАШИНОСТРОИТЕЛЬНАЯ АКАДЕМИЯ

КАФЕДРА КИТ

ОТЧЕТ

по ознакомительной практике

Выполнила: ст.гр.ИТ 12-1 Руководитель практики:

Юрченко Р.Ю. Парфёнова И.Н

01.07.13-12.07.13

Оценка

Дата

Подпись

Краматорск 2013

Rectangle 219

РЕФЕРАТ

Отчет по ознакомительной практике содержит 39 страниц машинного текста, 2 таблицы, рисунка 44.

Цель ознакомительной практики - ознакомится с объектно-ориентированным языком программирования С#. Познакомиться со средой разработки MicrosoftVisualStudio. Изучить синтаксис языка, познакомиться со структурой работы программы, получить практические навыки по использованию инструментария. Ознакомиться с математическим пакетом MathCAD. Изучить инструментарий программы MathCAD 15. На практике использовать инструменты и функции заложенные в среде MathCAD 15.

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

С #, МАТЕМАТИЧЕСКИЙ ПАКЕТ MATHCAD, ВИРТУАЛЬНЫЕ ФУНКЦИИ, КЛАССЫ, ИНТЕГРАЛЫ, СОЗДАНИЕ СОБСТВЕННЫХ ФУНКЦИЙ, ПОИСК КОРНЯ СИСТЕМЫ УРАВНЕНИЙ, ВЫЧИСЛЕНИЕ И ОБРАБОТКА ОПРЕДЕЛИТЕЛЯ, ПОСТРОЕНИЕ ГРАФИКА.

Группа 1СОДЕРЖАНИЕ

ВВЕДЕНИЕ 5

СРЕДА РАЗРАБОТКИ MICROSOFT VISUAL С# 7

1.1 Описание С# 7

1.2. Практическая работа по С# 9

1.2.1 Интегрированная среда разработки Visual Studio.Net 9

1.2.2 Разработка элементарных программ на

языке программирования C# 11

1.2.3 Массивы и операторы циклов for, foreach,

while и do-while в языке программмирования C# 12

1.2.4 Объекты и классы (наследование,

конструкторы, деструкторы). 13

1.2.5 Разработка на языке с# Windows – приложений 16

1.2.6 Разработка элементарных программ на языке программирования C# с использованием Windows Forms 19

2. ИЗУЧЕНИЕ МАТЕМАТИЧЕСКОГО ПАКЕТА MATHCAD 22

2.1 Описание математического пакета MathCAD 22

2.2 Практическая работа по MathCAD 24

2.2.1 Вычисление интегралов, сумм и произведений 24

2.2.2 Вектора и матрицы, функции работы с ними 27

2.2.3 Решение уравнений, систем уравнений 29

ОБЩИЕ ВЫВОДЫ 36

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 37

ВВЕДЕНИЕ

ООП возникло в результате развития идеологии процедурного программирования, где данные и подпрограммы (процедуры, функции) их обработки формально не связаны. Для дальнейшего развития объектно-ориентированного программирования часто большое значение имеют понятия события (так называемое событийно-ориентированное программирование) и компонента (компонентное программирование, КОП).

Первым языком программирования, в котором были предложены принципы объектной ориентированности, была Симула. В момент своего появления (в 1967 году), этот язык программирования предложил поистине революционные идеи: объекты, классы, виртуальные методы и др., однако это всё не было воспринято современниками как нечто грандиозное. Тем не менее, большинство концепций были развиты Аланом Кэйем и Дэном Ингаллсом в языке Smalltalk. Именно он стал первым широко распространённым объектно-ориентированным языком программирования.

В настоящее время количество прикладных языков программирования (список языков), реализующих объектно-ориентированную парадигму, является наибольшим по отношению к другим парадигмам. В области системного программирования до сих пор применяется парадигма процедурного программирования, и общепринятым языком программирования является язык C. Хотя при взаимодействии системного и прикладного уровней операционных систем заметное влияние стали оказывать языки объектно-ориентированного программирования. Например, одной из наиболее распространенных библиотек мультиплатформенного программирования является объектно-ориентированная библиотека Qt, написанная на языке C++.

Можем сделать вывод, что изучение ООП является первоочерёдной задачей для изучения современному программисту. В данном случае мы познакомимся с объектно-ориентированным языком С#.

Mathcad относится к системам компьютерной алгебры, то есть средств автоматизации математических расчетов. В этом классе программного обеспечения существует много аналогов различной направленности и принципа построения. Наиболее часто Mathcad сравнивают с такими программными комплексами, как Maple, Mathematica, MATLAB, а также с их аналогами MuPAD, Scilab, Maxima и др. Впрочем, объективное сравнение осложняется в связи с разным назначением программ и идеологией их использования.

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

Разработчики Mathcad сделали ставку на расширение системы в соответствии с потребностями пользователя. Для этого назначены дополнительные библиотеки и пакеты расширения, которые можно приобрести отдельно и которые имеют дополнительные функции, встраиваемые в систему при установке, а также электронные книги с описанием методов решения специфических задач, с примерами действующих алгоритмов и документов, которые можно использовать непосредственно в собственных расчетах. Кроме того, в случае необходимости и при условии наличия навыков программирования в C, есть возможность создания собственных функций и их прикрепления к ядру системы через механизм DLL.

Mathcad, в отличие от Maple, изначально создавался для численного решения математических задач, он ориентирован на решение задач именно прикладной, а не теоретической математики, когда нужно получить результат без углубления в математическую суть задачи. Впрочем, для тех, кому нужны символьные вычисления и предназначено интегрированное ядро Maple (с версии 14 — MuPAD).

Изучение программной среды Mathcad даёт возможность пользователю совершать громоздкие вычисления и автоматизировать работы с математическими функциями.

  1. СРЕДА РАЗРАБОТКИ MICROSOFT VISUAL С#

1.1 Описание С#

Язык C# появился на свет в июне 2000 г. в результате кропотливой работы большой группы разработчиков компании Microsoft, возглавляемой Андерсом Хейлсбергом (Anders Hejlsberg). Этот человек известен как автор одного из первых компилируемых языков программирования для персональных компьютеров IBM -- Turbo Pascal. Наверное, на территории бывшего Советского Союза многие разработчики со стажем, да и просто люди, обучавшиеся в той или иной форме программированию в вузах, испытали на себе очарование и удобство использования этого продукта. Кроме того, во время работы в корпорации Borland Андерс Хейлсберг прославился созданием интегрированной среды Delphi (он руководил этим проектом вплоть до выхода версии 4.0). [1]

С# и .NET являются той самой отправной точкой. Если говорить упрощенно, то .NET представляет собой новую платформу, новый API для программирования в Windows, а С# е новый язык, созданный с нуля, для работы с этой платформой, а также для извлечения всех выгод из прогресса сред разработки и нашего понимания принципов объектно-ориентированного программирования в течение последних 20 лет.

Необходимо отметить, что обратная совместимость не потеряна. Существующие программы будут выполняться, а платформа .NET была спроектирована таким образом, чтобы она могла работать с имеющимся программным обеспечением. Связь между компонентами в Windows сейчас почти целиком осуществляется при помощи СОМ. С учетом этого .NET обладает способностью (а) создавать оболочки (wrappers) вокруг существующих компонентов СОМ, так что компоненты .NET могут общаться с ними, и (б) создавать оболочки вокруг компонентов .NET, что позволяет им выглядеть как обычные СОМ-компоненты.

Авторы C# стремились создать язык, сочетающий простоту и выразительность современных объектно-ориентированных языков (вроде Java) c богатством возможностей и мощью C++. По словам Андерса Хейлсберга, C# позаимствовал большинство своих синтаксических конструкций из C++ (см. Таблица 1). В частности, в нем присутствуют такие удобные типы данных, как структуры и перечисления (другой потомок C++ -- Java -- лишен этих элементов, что создает определенные неудобства при программировании). Синтаксические конструкции С# унаследованы не только от C++, но и от Visual Basic. Например, в С#, как и в Visual Basic, используются свойства классов. Как C++, С# позволяет производить перегрузку операторов для созданных вами типов Java не поддерживает ни ту, ни другую возможность). С# — это фактически гибрид разных языков. При этом С# синтаксически не менее (если не более) чист, чем Java, так же прост, как Visual Basic, и обладает практически той же мощью и гибкостью, что и C++.

Таблица 1 - Элементы синтаксиса С#

Комментарии, которые не могут быть вложенными

/* ... */

Регистрозависимость

да

Регулярное выражение идентификатора переменной

[_a-zA-Z][_a-zA-Z0-9]*

Присваивание значения переменной

=

Объявление переменной

type variable

Объявление переменной с присваиванием значения

type variable = value

Группировка выражений

( ... )

Блок

{ ... }

Тождественное равенство

==

Тождественное неравенство

!=

Сравнение

< > <= >=

Определение функции

returntype f (type1 p1, type2 p2, ... ) { ... }

Вызов функции

f(a, b, ...)

Если - то

if (condition) ...

Если - то - иначе

if (condition) ... else ...

Бесконечный цикл

while (!0) ...

Цикл с предусловием

while (condition) ...

Цикл с постусловием

do ... while (!condition)

    1. Практическая работа С#

      1. Интегрированная среда разработки Visual Studio.Net

Цель работы: Изучение основных возможностей среды разработки на примере простейшей программы на языке Microsoft Visual C#.

Ход работы

Вывести на экран сообщение и задать имя классу.

Таблица 2 – Индивидуальное задание

№Варианта

Текст

Имя программы

Инициалы

23

Библиотека базовых классов

Класс

Головачёва В.А

Описание функций:

Console.WriteLine();-вывод текста на консоль

Console.Read();-считывание текста с консоли

Листинг программы представлен на рисунке 3.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace App1

{

class Klass

{

static void Main(string[] args)

{

Console.WriteLine("Библиотека базовых классов");

Console.Read();

}

}

}

Рисунок 3– Листинг программы

Результат работы:

Рисунок 4 – Результат работы программы

1.2.2 Разработка элементарных программ на языке

программирования C#.

Цель работы: Познакомиться с базовыми особенностями языка программирования C# и разработки программ с использованием среды Visual Studio.Net.

Ход работы

Реализовать функцию вычисления частного двух вещественных чисел.

Описание функций:

Console.WriteLine(); - вывод текста на консоль

Console.Read(); - считывание текста с консоли

Листинг программы представлен на рисунках 5,6:

using System;

using System.Collections.Generic;

using System.Linq;

Рисунок 5 – Листинг программы

using System.Text;

namespace App1

{

class Klass

{

static void Main(string[] args)

{

double a, b;

a = 15.45; b = 3.345;

Console.WriteLine(a-b);

Console.Read();

}

}

}

Рисунок 6 – Листинг программы

Результат работы:

Рисунок 7 – Результат работы программы

1.2.3 Массивы и операторы циклов for, foreach, while и do-while в языке программмирования C#

Цель работы: Изучить способы задания и инициализации массивов и

работу операторов циклов for, foreach, while и do-while в языке

программмирования C#

Ход работы

Задайте число P, если P < 0,то значение Y вычислить по формуле Y = P^2, если P > 0, то Y = P^3.

Описание функций:

Console.WriteLine(); - вывод текста на консоль

Console.Read(); - считывание текста с консоли

Int32.Parse() - конвертация в целый тип

Листинг программы представлен на рисунке 8:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace App1

{

class Klass

{

static void Main(string[] args)

{

int p; double y;

Console.WriteLine("Ввести число");

p = Int32.Parse

(Console.ReadLine());

if (p < 0)

{

y = Math.Pow(p, 2);

Console.WriteLine(y); };

if (p > 0)

{

y = Math.Pow(p, 3);

Console.WriteLine(y);}

Console.ReadLine();

}

}

}

Рисунок 8 – Листинг программы

Результат работы:

Рисунок 9– Результат работы программы

1.2.4 Объекты и классы (наследование,конструкторы, деструкторы).

Цель работы: Познакомиться с основой объектного подхода в языке C#, созданием объектов, классов и механизмом наследования.

Ход работы

Построить иерархию классов в соответствии с вариантом задания:

место, область, город, мегаполис

Описание функций:

Console.WriteLine(); - вывод текста на консоль

Console.ReadLine(); - считывание текста с консоли

Листинг программы представлен на рисунках 10,11,12.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace App1

{

Рисунок 10 - Листинг программы

class Mesto

{

protected int x, y;

public Mesto(int x, int y)

{

this.x = x; this.y = y;

}

public void showKoord()

{

Console.WriteLine("Koordinati x={0} y={1}", x, y);

}

}

class oblast : Mesto

{

protected string name;

public oblast(int x, int y, string name)

: base(x, y)

{

this.name = name;

}

public void getname()

{

showKoord();

Console.WriteLine("Name " + name);

}

}

class city : oblast

{

private int population;

public city(int x, int y, string name, int population)

: base(x, y, name)

{

this.population = population;

}

public void showsity()

{

Console.WriteLine("Population=" + population);

showKoord();

getname();

}

}

class megacity : oblast

{

private int goods;

public megacity(int x, int y, string name, int goods)

Рисунок 11 – Листинг программы

: base(x, y, name)

{

this.goods = goods;

}

public void showmega()

{

Console.WriteLine("Resurce=" + goods);

showKoord();

getname();

}

}

class Klass

{

static void Main(string[] args)

{

city Kram = new city(23, 33, "Kramatorsk", 34000);

megacity Don = new megacity(100, 0, "Doneck", 200);

Kram.showsity();

Console.WriteLine("\n");

Don.showmega();

Console.ReadLine();

}

}

}

Рисунок 12 – Листинг программы

Результат работы:

Рисунок 13 – Результат работы программы

1.2.5 Разработка на языке С# Windows – приложений

Цель работы: изучить основы технологии создания на языке С# Windows – приложений.

Ход работы

Построить Windows-приложение «Вещественные типы» с 4-мя помеченными текстовыми окнами и двумя командными кнопками Пользователь вводит значения вещественных типов: float, double в первые 2 окна. По нажатию командной кнопки «Ввод значений» данные из текстовых окно становятся значениями переменных соответствующих типов. По нажатию командной кнопки «Вывод значений» значения переменных соответствующих типов передаются в текстовые окна, предназначенные для вывода значений. Проанализировать, что происходит при вводе значений, не соответствующих требуемому типу или выходящих за пределы интервала возможных значений типа.

Описание функций:

Console.WriteLine(); - вывод текста на консоль

Console.Read(); - считывание текста с консоли

Int32.Parse() - конвертация в целый тип

Convert.ToDouble(textBox2.Text); - конвертация в вещественный тип

Листинг программы представлен на рисунках 14,15.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

Рисунок 14 – Листинг программы

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace WindowsFormsApplication1

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

private void button1_Click(object sender, EventArgs e)

{

double x; float y;

y =Convert.ToInt32(textBox1.Text);

x = Convert.ToDouble(textBox2.Text);

}

private void button2_Click(object sender, EventArgs e)

{

textBox3.Text = textBox1.Text;

textBox4.Text = textBox2.Text;

}

}

}

Рисунок 15 – Листинг программы

Результат работы:

Рисунок 16 – Результат работы программы