p align="left">2.1 Структура кода в моделирование Код на С# представляет собой последовательность операторов, каждый из которых оканчивается точкой с запятой. С# -- язык, обладающий блочной структурой; другими словами, каждый оператор является частью некоторого блока кода. Эти блоки, для обозначения начала и конца которых используются фигурные скобки { и }, могут содержать произвольное количество операторов или не содержать их вовсе. Обратите внимание, что фигурные скобки не сопровождаются точками с запятой. Итак, простой блок программы на С# может иметь следующий вид: { Строка кода 1, оператор 1; … Строка кода х, оператор y; } В этом простом примере кода использованы отступы, чтобы сделать запись на С# более наглядной. Блоки могут быть вложены друг в друга (т. е. блоки могут содержать в себе другие блоки), и в таком случае величина отступа у вложенных блоков должна быть больше: { Строка кода 1, оператор 1; { Строка кода 2, оператор 2; Строка кода 3, оператор 3; } Строка кода 4, оператор 4; } В коде на С# необходимо использовать комментарии. Для того чтобы обозначить комментарии по первому способу, используют сочетания символов /* в начале комментария, и */ в конце комментария. Другой подход к оформлению комментария состоит в использовании в качестве его начала символов //. /* Длинный комментарии */ // Короткие комментарии Переменные Переменные тесно связаны с хранением данных. По существу, переменные в памяти компьютера можно представить в виде коробочек, лежащих на полке. Такие коробочки могут использоваться для того, чтобы что-нибудь в них класть, а затем вынимать обратно, или же можно просто заглянуть в них и узнать, есть там что-то или нет. Все это относится и к переменным, в которые мы можем помещать данные, а затем брать их оттуда или просматривать по мере необходимости. Эти коробочки можно представить различных размеров и форм, причем разные объекты могут помещаться только в специально предназначенные для них коробочки. Для того чтобы использовать коробочку (переменную) её необходимо объявить. Это означает, что ей должны быть присвоены имя и тип. Как только переменная объявлена, она может использоваться как хранилище для данных того типа, который указан в ее объявлении. Объявления переменных: { тип переменной, её имя; } В табл. 2.1 приводятся некоторые имена типов и указывается, какому типу в библиотеке .NET Framework они соответствуют. Таблица 2.1 Имена некоторых типов переменных |
Тип | Тип .NET Framework | Допустимые значения | | sbусе | System.SByte | Целое в диапазоне от -128 до 127 | | byte | System.Byte | Целое в диапазоне от 0 до 255 | | short | System.Int16 | Целое в диапазоне от -32 768 до 32 767 | | uahort | System.UInt16 | Целое в диапазоне от 0 до 65 535 | | int | System.Int32 | Целое в диапазоне от -2 147 483 648 до 2 147 483 647 | | uint | System.UInt32 | Целое в диапазоне от 0 до 4 294 967 295 | | |
Буква "u", встречающаяся перед некоторыми из имен, является сокращением от слова "unsigned" ("без знака"). Это говорит о том, что в переменных соответствующего типа не могут храниться отрицательные значения. Естественно, что кроме целых чисел нам требуется хранить значения с плавающей запятой, которые представляют нецелые числа табл. 2.2. Таблица 2.2 Имена некоторых типов переменных с плавающей запятой |
Тип | Тип .NET Framework | Допустимые значения | | float | System.Single | от 1,5х10-45 до 3,4х1038 | | double | System.Double | от 5,0х10-324 до 1,7х10308 | | |
Кроме численных типов, существует еще простые типы переменных табл. 2.3. Таблица 2.2 Имена простых типов переменных |
Тип | Тип .NET Framework | Допустимые значения | | string | System.String | Последовательность символов | | bool | System.Boolean | Логическое значение (Boolean), которое может принимать значения true (истина) или false (ложь) | | |
Логический тип bool -- один из наиболее часто используемых в С# типов переменной; аналогичные типы часто встречаются в кодах на других языках программирования. Использование переменной, которая может принимать только два значения -- либо true, либо false,-- создает очень важную возможность ветвления логики приложения. В качестве простого примера представьте себе, какое огромное количество вопросов допускают d качестве ответа true или false ("да" или "нет"). Сравнение значений переменных и проверка допустимости введенной информации как раз представляют собой примеры программного использования логических переменных (эти примеры вскоре станут предметом нашего изучения). Пример использования переменных: Имена переменные. В качестве имени переменной можно использовать произвольную последовательность символов. Основные правила при именовании переменных следующие: · Первый символ в имени переменной должен быть либо буквой, либо символом подчеркивания _; · Последующими символами могут быть буквы, символ подчеркивания или цифры. Кроме того, существуют определенные ключевые слова, которые обладают особым смыслом с точки зрения компилятора С#, например, waste или raw, Если по ошибке используется одно из них, компилятор выразит свое недовольство. Следующие имена переменных являются правильными: myRawGOST GOST1 _waste Не правильные имена переменных: usernamespace 56Raw I' go-All-Over Пример использование имент переменных: Код программы: static void Main(string[] args) { int myNumber; string myRaw; MyNumber = 320; MyRaw = "Количество горбуши на складе"; Console.WriteLine("{0} {1} кг.", MyRaw, MyNumber); } Результат выполнения: Количество горбуши на складе 320 кг. Для продолжения нажмите любую клавишу… Описание работы программы: Объявление переменных осуществляет следующий код: int MyNumber; string MyRaw; Следующие присваиваем им значения: MyNumber = 320; MyRaw = "Количество горбуши на складе; Переменные выводятся с помощью следующей строки: Console.WriteLine("{0} {1} кг.", MyRaw, MyNumber); Это простой метод вывода текста на консоль, которым приводился в первом примере, но на этот раз выводим переменные. Строка, которую выводим - "{0} {1} кг.", - в примере, приведенном выше, значение {0} принадлежит переменной MyRaw, а значение {1} соответсвенно MyNumber. Этим методом пользуются для вывода на консоль. Практическая часть В практической части студент выполняет работы в зависимости от количества заработанных баллов. В работе представлены шесть практических работ начиная от моделирования приема сырья и заканчивая моделированием режимов его обработки и выпуском заданного вида продукта. Перечень практических работ 1. Моделирование процесса приема сырья 2. Моделирование продуктового расчета 3. Совершенствование существующих программ (tex, исследователь, и др.) 4. Моделирование технологических режимов 5. Моделирование качество готового сырья 6. Моделирование (рыбо- мясо- молоко- перерабатывающего) производства Цель практических работ Научится применять компьютерное моделирование на практике своего направления Используйте для создания программ методологию стандартных блоков. Избегайте заново изобретать колесо. Используйте существующие кусочки программ -- это называется повторным использованием кодов и служит основой объектно-ориентированного программирования. Практическая работа 1 Цель работы - изучить нормативную документацию и создать модель приема сырья и вывода его качественных показателей. Задачи - изучить нормативную документацию согласна выбранного варианта - использую операторы из первой главы спроектировать модель приема сырья Варианты работы |
Вариант | Наименование сырья | Способ обработки | | 1 | Горбуша | сырец, мороженая, охлажденная | | 2 | Минтай | тоже | | 3 | Треска | тоже | | 4 | Навага | тоже | | 5 | Камбала | тоже | | 6 | Креветка | живая, охлажденная | | 7 | Еж морской | тоже | | |
Пример выполнения работы 1. Создайте новый проект консольного приложения, выбрав пункт файл создать проект рис. р.1.1. Рис. р.1.1 Создание нового проекта 2. В окне создания проекта выберите консольное приложение и задайте ему имя например «Project1» рис. p.1.2. Рис. р.1.2. Выбор шаблона и задание имя проекта 3.Нажмите на кнопку ОК. 4. После того как проект будет инициализирован добавляете в файл свои строки. Ниже приведен пример модели приема сырья карася и сазана мороженого код. p.1.1. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Rabota1 { class Program { static void Main(string[] args) { * программа модели приема сырья */ Console.WriteLine("Программа для моделирования приема сырья \n"); Console.WriteLine("Прием сырья:"); Console.WriteLine("1. Крась мороженый (ГОСТ 1168-86)"); Console.WriteLine("2. Сазан мороженый (ГОСТ 1168-86)"); Console.Write("Выбирите принятую рыбу на производство, 1 или 2: "); int var = Convert.ToInt16(Console.ReadLine()); if (var == 1) { //код программы карась Console.WriteLine("Выбрано сырье карась мороженый"); half: Console.WriteLine("----------------------------------------"); Console.WriteLine("1. Инвормацию о нормативном докумете"); Console.WriteLine("2. Принять сырье"); Console.Write("Выберите пункт: "); int var1 = Convert.ToInt16(Console.ReadLine()); if (var1 == 1) else { int indic1, indic2, indic3, indic4; //объявим переменные int indic11, indic12, indic13, indic14; Console.Write("Поверхность рыбы чистая, естественной окраски? 0-НЕТ 1-ДА "); indic1 = Convert.ToInt16(Console.ReadLine()); if (indic1 == 1) { Console.Write("Поверхность потускневшая? 0-НЕТ 1-ДА"); indic11 = Convert.ToInt16(Console.ReadLine()); if (indic11 == 1) { Console.WriteLine("Сырье второго сорта"); } else { } } else { Console.WriteLine("Разделка 2 см? 0-НЕТ 1-ДА"); Console.WriteLine("Консистенция плотная? 0-НЕТ 1-ДА"); Console.WriteLine("Консистенция ослабевшая? 0-НЕТ 1-ДА"); Console.WriteLine("Запах свойственный свежей рыбе? 0-НЕТ 1-ДА"); Console.WriteLine("Кисловатый запах в жабрах? 0-НЕТ 1-ДА"); } } // ввывод данных о сырье Console.WriteLine("Сырье первого сорта"); Console.WriteLine("Сырье второго сорта"); Console.WriteLine("Сырье на кормовую муку"); } else { //код тот же что и у карася } } } } Код. p.1.1. Модель приема сырья карася и сазана мороженого Для наглядности моделирования приема сырья приведен алгоритм построения программы рис.p.1.3. Рис. р.1.3 Алгоритм компьютерной модели приема сырья Компьютерное моделирование Цель работы: рассчитать воспроизводимость опыта Термины
Машинный язык -- это «природный язык» определенного компьютера. Язык ассемблера - аббревиатуры, напоминающие английский язык Компиляторы - программы трансляции, которые преобразуют программы на языках высокого уровня в машинные коды, называются Языки высокого уровня - который выглядит почти так же, как повседневный английский, и используют общепринятую математическую нотацию C# -- разработан Бьерном Строустропом в начале 80-х годов в Bell Laboratories. Это гибридный язык, он предоставляет возможность программировать и в стиле структурного программирования, и в объектно-ориентированном стиле, и в обоих стилях сразу Литеральная строка - содержит информацию, без изменения выводимую в отчет. Язык Smalltalk - разработанный в Центре Исследований Palo Alto компании Xerox. Это чистый объектно-ориентированный язык. Microsoft Visual Studio (по-русски обычно произносится [майкрософт вимзуал стумдио]) -- линейка продуктов компании Майкрософт, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. C# (произносится си-шарп) -- язык программирования, сочетающий объектно-ориентированные и аспектно-ориентированные концепции. Разработан в 1998--2001 годах группой инженеров под руководством Андерсa Хейлсбергa в компании Microsoft как основной язык разработки приложений для платформы Microsoft .NET. Компилятор с C# входит в стандартную установку самой .NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств вроде Visual Studio. Linux (полное название GNU/Linux, произносится «гну слэш лимнукс») общее название UNIX-подобных операционных систем на основе одноимённого ядра и собранных для него библиотек и системных программ, разработанных в рамках проекта GNU. Краткое название Linux распространено потому, что первой, наиболее популярной и единственной системной библиотекой, использовавшейся в системах на базе ядра Linux, была GNU C Library (glibc). Microsoft Windows (произносится /?w?ndo?z/) -- семейство проприетарных операционных систем компании Майкрософт (Microsoft). Microsoft .NET Framework -- программная технология, предназначенная для создания как обычных программ, так и веб-приложений (в качестве платформы для разработок впервые предложена корпорацией Microsoft). Стьюдент - это псевдоним английского математика и химика Госсета Приложение2 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace проверка_воспроизводимости class Program { static void Main(string[] args) { *Пример эксперимента выхода вареной рыбы y(%), зависячая от двух факторов: тепературы и времени запекания*/ int temp1=60, temp2=70, temp3=80, temp4=90; int time1=15, time2=18, time3=10, time4=12; double make1 = 95.5, make2 = 96.8; double make3 = 98.8, make4 = 96.1; double make5 = 75.4, make6 = 76.1; double make7 = 65.5, make8 = 74.1; double yi1 = (make1 + make2) / 2; double yi2 = (make3 + make4) / 2; double yi3 = (make5 + make6) / 2; double yi4 = (make7 + make8) / 2; double s1 = System.Math.Round((1 / 2 - 1) * System.Math.Pow((make1 - yi1), 2) * System.Math.Pow((make2 - yi1), 2), 2); double s2 = System.Math.Round((1 / 2 - 1) * System.Math.Pow((make3 - yi2), 2) * System.Math.Pow((make4 - yi2), 2), 2); double s3 = System.Math.Round((1 / 2 - 1) * System.Math.Pow((make5 - yi3), 2) * System.Math.Pow((make6 - yi3), 2), 2); double s4 = System.Math.Round((1 / 2 - 1) * System.Math.Pow((make7 - yi4), 2) * System.Math.Pow((make8 - yi4), 2), 2); double s1b = s1 - s1 - s1; double s2b = s2 - s2 - s2; double s3b = s3 - s3 - s3; double s4b = s4 - s4 - s4; таблица для вывода результатов Console.WriteLine("-------------------------------------------------------"); Console.WriteLine("| Номер | Условия | Результаты | _ | |"); Console.WriteLine("| серии | опытов | измерений | уi,% | Si^2 |"); Console.WriteLine("| опытов|------|------ |------|------| | |"); Console.WriteLine("| | Темп | Время | 1 | 2 | | |"); Console.WriteLine("-------------------------------------------------------"); Console.WriteLine("| 1 | {0} | {1} | {2} | {3} | {4} | {5} |", + temp1, time1, make1, make2, yi1, s1b); Console.WriteLine("| 2 | {0} | {1} | {2} | {3} | {4} | {5} |", + temp2, time2, make3, make4, yi2, s2b); Console.WriteLine("| 3 | {0} | {1} | {2} | {3} | {4} | {5} |", + temp3, time3, make5, make6, yi3, s3b); Console.WriteLine("| 4 | {0} | {1} | {2} | {3} | {4} | {5} |", + temp4, time4, make7, make8, yi4, s4b); Console.WriteLine("-------------------------------------------------------"); double MaxS1 = System.Math.Max(s1b, s2b); double MaxS2 = System.Math.Max(s3b, s4b); double MaxS0 = System.Math.Max(MaxS1, MaxS2); double Gp = System.Math.Round(MaxS0 / (s1b + s2b + s3b + s4b),3); if (Gp <= 0.907) { Console.WriteLine("Эксперимент воспроизводим {0}<0.907",Gp); } else { Console.WriteLine("Эксперимент не воспроизводим {0}>0.907", Gp); } } } Литература· Эндрю Троелсен Язык программирования C# 2005 (Си Шарп) и платформа .NET 2.0 = Pro C# 2005 and the .NET 2.0 Platform. -- 3-е изд. -- М.: «Вильямс», 2007. -- С. 1168. -- ISBN 1-59059-419-3 · Кристиан Нейгел, Билл Ивьен, Джей Глинн, Карли Уотсон, Морган Скиннер C# 2008 и платформа .NET 3.5 для профессионалов = Professional C# 2008. -- М.: «Диалектика», 2008. -- ISBN 978-5-8459-1458-3 · Робинсон С., Корнес О. и др. C# для профессионалов//М., Лори, 2005 - С.123. ISBN 1-86100-499-0 · Гордон Хогенсон C++/CLI: язык Visual C++ для среды .NET = C++/CLI Primer. -- М.: «Вильямс», 2007. -- С. 464. -- ISBN 1-59059-705-2 · http://ru.wikipedia.org/wiki/Ubuntu - Ubuntu Linux · http://ru.wikipedia.org/wiki/Windows_7 - Microsoft Windows 7 · http://ru.wikipedia.org/wiki/Microsoft_Windows - Microsoft Windows · http://ru.wikipedia.org/wiki/.NET_Framework - .NET Framework · http://customize.ru/ themes_stylexp4.html - Скриншоты Windows Vista · http://www.linux.org.ru/view-news.jsp?year=1999&month=11§ion=3 - Архив скриншотов Linux 1999 ноябрь
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
|