Файл: Отчет по учебной практике пм. 01 Разработка программных модулей программного обеспечения для компьютерных систем.docx
Добавлен: 11.04.2024
Просмотров: 58
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Департамент образования и науки Курганской области
ГБПОУ «Шадринский политехнический колледж»
ОТЧЕТ
по учебной практике ПМ.01 «Разработка программных модулей программного обеспечения для компьютерных систем»
Группа № 320 ПК
Специальность: «Программирование в компьютерных системах»
___________________________________________________
(фамилия, имя, отчество)
Тематический план
Код ПК | Код и наименование профессионального модуля | Количество часов по ПМ | Виды работ | Наименования тем производственной практики | Количество часов по темам |
1 | 2 | 3 | | 4 | 5 |
ПК 1.1-1.6 | ПМ 01. Разработка программных модулей программного обеспечения для компьютерных систем | 216 | - разработка алгоритма поставленной задачи и реализация его средствами автоматизированного проектирования; - разработка кода программного продукта на основе готовой спецификации на уровне модуля - использование инструментальных средств на этапе отладки программного продукта - проведение тестирования программного модуля по определенному сценарию | Тема 1.1 Общее знакомство со средой программирования Visual C# | 6 |
Тема 1.2 Составление таблиц спецификации | 6 | ||||
Тема 1.3 Изучение основных конструкций среды программирования Visual C# | 18 | ||||
Тема 1.4. Работа с таблицами в Visual C# | 12 | ||||
Тема 1.5 Работа с файлами в Visual C# | 6 | ||||
Тема 1.6 Работа с графикой в Visual C# | 12 | ||||
Тема 1.7 Разработка многомодульных приложений | 6 | ||||
Тема 1.8 Оформление отчета | 6 | ||||
| ВСЕГО часов | | | | 72 |
Содержание
-
Теоретическая часть -
Практическая часть
Отчет
-
Теоретическая часть
Microsoft Visual Studio — линейка продуктов компании Microsoft, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также веб-сайты, веб-приложения, веб-службы как в родном, так и в управляемом кодах для всех платформ, поддерживаемых Windows, Windows Mobile, Windows CE, .NET Framework, Xbox, Windows Phone .NET Compact Framework и Silverlight.
Visual Studio включает в себя редактор исходного кода с поддержкой технологии IntelliSense и возможностью простейшего рефакторинга кода. Встроенный отладчик может работать как отладчик уровня исходного кода, так и отладчик машинного уровня. Остальные встраиваемые инструменты включают в себя редактор форм для упрощения создания графического интерфейса приложения, веб-редактор, дизайнер классов и дизайнер схемы базы данных. Visual Studio позволяет создавать и подключать сторонние дополнения (плагины) для расширения функциональности практически на каждом уровне, включая добавление поддержки систем контроля версий исходного кода (как, например, Subversion и Visual SourceSafe), добавление новых наборов инструментов (например, для редактирования и визуального проектирования кода на предметно-ориентированных языках программирования) или инструментов для прочих аспектов процесса разработки программного обеспечения (например, клиент Team Explorer для работы с Team Foundation Server).
Visual C#
Это реализация языка C# корпорацией Майкрософт. Поддержка Visual C# в Visual Studio обеспечивается с помощью полнофункционального редактора кода, компилятора, шаблонов проектов, конструкторов, мастеров кода, мощного и удобного отладчика и многих других средств. Библиотека классов .NET Framework предоставляет доступ ко многим службам операционной системы и другим полезным, правильным классам, что существенно ускоряет цикл разработки.
Ниже перечислены основные преимущества IDE-среды Visual Studio:
-
Встроенный Web-сервер. Для обслуживания Web-приложения ASP.NET необходим Web-сервер, который будет ожидать Web-запросы и обрабатывать соответствующие страницы. -
Поддержка множества языков при разработке. Visual Studio позволяет писать код на своем языке или любых других предпочитаемых языках, используя все время один и тот же интерфейс (IDE). -
Меньше кода для написания. Для создания большинства приложений требуется приличное количество стандартного стереотипного кода, и Web-страницы ASP. NET тому не исключение. -
Интуитивный стиль кодирования. По умолчанию Visual Studio форматирует код по мере его ввода, автоматически вставляя необходимые отступы и применяя цветовое кодирование для выделения элементов типа комментариев. -
Более высокая скорость разработки. Многие из функциональных возможностей Visual Studio направлены на то, чтобы помогать разработчику делать свою работу как можно быстрее. -
Возможности отладки. Предлагаемые в Visual Studio инструменты отладки являются наилучшим средством для отслеживания загадочных ошибок и диагностирования странного поведения. -
Visual Studio также имеет и множество других функций: возможность управления проектом; встроенная функция управления исходным кодом; возможность рефакторизации кода; мощная модель расширяемости.
-
Практическая часть
Задача 1. Создайте приложение, которое переводит мили в километры.
ButtonOk – Click
double mile, km;
mile=Convert.ToDouble(textBoxMile.Text);
km=mile*1.609344;
labelRes.Text=mile.ToString(“n”)+” miles – “ +km.ToString(“n”) + “ км”;
Задача 2. Создайте приложение, которое переводит фунты в килограммы.
Инициализация формы
buttonTran.Enabled = false;
textBoxFunt_TextChanged
labelRes.Text = "";
if (textBoxFunt.Text.Length == 0)
buttonTran.Enabled = false;
else buttonTran.Enabled = true;
buttonTran_Click
double funt, kg;
funt = Convert.ToDouble(textBoxFunt.Text);
kg = funt * 0.4095;
labelRes.Text = funt.ToString("N") + " ф. - " + kg.ToString("N") + " кг";
Задача 3. Создать приложение, которое переводит цену в нужный пользователю курс.
Инициализация формы
buttonTran.Enabled = false;
textBoxPrice_KeyPress
if ((e.KeyChar >= '0') && (e.KeyChar <= '9'))
return;
if (e.KeyChar >= '.')
e.KeyChar = ',';
if (e.KeyChar == ',')
if (sender.Equals(textBoxPrice)){
if ((textBoxPrice.Text.IndexOf(',') != -1) || (textBoxPrice.Text.Length == 0)){
e.Handled = true;}
else{
if ((textBoxPrice.Text.IndexOf(',') != -1) || (textBoxPrice.Text.Length == 0)){
e.Handled = true;}}
return;}
if (Char.IsControl(e.KeyChar)){
if (e.KeyChar==(char)Keys.Enter){
if (sender.Equals(textBoxPrice)) textBoxRate.Focus();
else buttonOk.Focus();}
return;}
e.Handled = true;
buttonOk_Click
double Prise, Rate;
Prise = Convert.ToDouble(textBoxPrice.Text);
Rate = Convert.ToDouble(textBoxRate.Text);
Rate = Prise / Rate;
labelRes.Text = Prise.ToString("N") + " начальная цена - " + Rate.ToString("N") + " результат";
textBoxRate_KeyPress
if ((e.KeyChar >= '0') && (e.KeyChar <= '9'))
return;
if (e.KeyChar >= '.')
e.KeyChar = ',';
if (e.KeyChar == ',')
if (sender.Equals(textBoxRate)){
if ((textBoxRate.Text.IndexOf(',') != -1) || (textBoxRate.Text.Length == 0)){
e.Handled = true;}
else{
if ((textBoxRate.Text.IndexOf(',') != -1) || (textBoxRate.Text.Length == 0)){
e.Handled = true;}}
return;}
if (Char.IsControl(e.KeyChar)){
if (e.KeyChar == (char)Keys.Enter){
if (sender.Equals(textBoxRate)) buttonOk.Focus();}
return;}
e.Handled = true;
textBoxPrice_TextChanged
labelRes.Text = "";
if ((textBoxPrice.Text.Length != 0) && (textBoxRate.Text.Length != 0))
buttonOk.Enabled = true;
else buttonOk.Enabled = false;
textBoxRate_TextChanged
labelRes.Text = "";
if ((textBoxRate.Text.Length != 0) && (textBoxPrice.Text.Length != 0))
buttonOk.Enabled = true;
else buttonOk.Enabled = false;
Задача 4. Создать приложение, которое в зависимости от выбранного формата фотографии и количества выдает конечную сумму.
buttonOk_Click
double cena=0 ,sum;
int n;
if (radioButton9Na12.Checked) cena = 8.50;
if (radioButton10Na15.Checked) cena = 10;
if (radioButton18Na24.Checked) cena = 15.50;
n = Convert.ToInt32(textBoxQuan.Text);
sum = n * cena;
labelRes.Text = n.ToString("n") + " колич. - " + sum.ToString("n") + " цена.";
Задача 5. Создать приложение, которое определяет по выбранным флажкам конечную сумму стоимости выбранного комплекта.
buttonOK_Click
double dop=0, discount, total, cena=415000;
string st;
if (checkBoxMat.Checked) dop += 1200;
if (checkBoxSump.Checked) dop += 4500;
if (checkBoxBus.Checked) dop += 12000;
if (checkBoxDisk.Checked) dop += 12000;
total = cena + dop;
st = "Цена в выбраной комплектации: " + total.ToString("C");
if (dop != 0) st += "\n В том числе доп. оборудование: " + dop.ToString("C");
if ((checkBoxMat.Checked) && (checkBoxSump.Checked) && (checkBoxBus.Checked) && (checkBoxDisk.Checked))
{
discount = dop * 0.1;
total -= discount;
st += "\n Скидка на доп. оборудование (10%):" + discount.ToString("C") + "\nИтого: " + total.ToString("C");
}
else
st +="\nИтого: " + total.ToString("C");
labelRes.Text = st;
checkBoxMat_Click
labelRes.Text = "";
checkBoxSump_Click
labelRes.Text = "";
checkBoxBus_Click
labelRes.Text = "";
checkBoxDisk_Click
labelRes.Text = "";
Задача 6. Создать приложение, которое по заданным разметкам и выбранному материалу вычисляет итоговую сумму.
Инициализация формы
comboBoxMaterial.DropDownStyle = ComboBoxStyle.DropDownList;
comboBoxMaterial.Items.Add("пластик");
comboBoxMaterial.Items.Add("алюминий");
comboBoxMaterial.Items.Add("бамбук");
comboBoxMaterial.Items.Add("солома");
comboBoxMaterial.Items.Add("текстиль");
comboBoxMaterial.SelectedIndex = 0;
buttonOk.Enabled = false;
buttonOk_Click
double cena=0,sum;
double w = Convert.ToDouble(textBoxWidth.Text);
double h = Convert.ToDouble(textBoxHeight.Text);
switch (comboBoxMaterial.SelectedIndex){
case 0: cena = 100; break;
case 1: cena = 250; break;
case 2: cena = 170; break;
case 3: cena = 170; break;
case 4: cena = 120; break;}
sum = (w * h) / 10000 * cena;
labelRes.Text = "Размер: " + w + " * " + h + " см.\n" + "Цена (р./м.кв.):" + cena.ToString("C") + "\n Сумма: " + sum.ToString("C");
comboBoxMaterial_SelectedIndexChanged
labelRes.Text = "";
textBoxWidth_KeyPress
if ((e.KeyChar >= '0') && (e.KeyChar <= '9'))
return;
if (e.KeyChar >= '.')
e.KeyChar = ',';
if (e.KeyChar == ',')
if (sender.Equals(textBoxWidth)){
if ((textBoxWidth.Text.IndexOf(',') != -1) || (textBoxWidth.Text.Length == 0)){
e.Handled = true;}
else{
if ((textBoxWidth.Text.IndexOf(',') != -1) || (textBoxWidth.Text.Length == 0)){
e.Handled = true;}}
return;}
if (Char.IsControl(e.KeyChar)){
if (e.KeyChar == (char)Keys.Enter){
if (sender.Equals(textBoxWidth)) textBoxHeight.Focus();
else buttonOk.Focus();}
return;}
e.Handled = true;
textBoxHeight_KeyPress
if((e.KeyChar >= '0') && (e.KeyChar <= '9'))
return;
if (e.KeyChar >= '.')
e.KeyChar = ',';
if (e.KeyChar == ',')
if (sender.Equals(textBoxHeight)){
if ((textBoxHeight.Text.IndexOf(',') != -1) || (textBoxHeight.Text.Length == 0)){
e.Handled = true;}
else{
if ((textBoxHeight.Text.IndexOf(',') != -1) || (textBoxHeight.Text.Length == 0)){
e.Handled = true;}}
return;}
if (Char.IsControl(e.KeyChar)){
if (e.KeyChar == (char)Keys.Enter){
if (sender.Equals(textBoxHeight)) textBoxWidth.Focus();
else buttonOk.Focus();}
return;}
e.Handled = true;
textBoxWidth_TextChanged
if ((textBoxWidth.Text.Length != 0) && (textBoxHeight.Text.Length != 0))
buttonOk.Enabled = true;
else buttonOk.Enabled = false;
textBoxHeight_TextChanged
if ((textBoxHeight.Text.Length != 0) && (textBoxWidth.Text.Length != 0))
buttonOk.Enabled = true;
else buttonOk.Enabled = false;
Задача 7. Создать приложение, которое делает расчет на указанное количество месяцев оплату кредита.
Инициализация формы
buttonOk.Enabled = false;
buttonOk_Click
float value, rate, dept, suminterest, interest, paying;
int period;
string st;
value = Convert.ToSingle(textBoxSum.Text);
period = Convert.ToInt32(textBoxPeriod.Text);
rate = Convert.ToSingle(textBoxRate.Text);
dept = value;
suminterest = 0;
for(int i=1; i
interest = dept * (rate / 12 / 100);
suminterest += interest;
paying = value / period + interest;
st = i.ToString() + " " + dept.ToString("c") + " " + interest.ToString("c") + "" + paying.ToString("c");
listViewCalc.Items.Add(i.ToString());
listViewCalc.Items[i - 1].SubItems.Add(dept.ToString("c"));
listViewCalc.Items[i - 1].SubItems.Add(interest.ToString("c"));
listViewCalc.Items[i - 1].SubItems.Add(paying.ToString("c"));
dept = dept - value / period;}}
textBoxSum_TextChanged
this.listViewCalc.Items.Clear();
if ((textBoxSum.Text.Length != 0) && (textBoxPeriod.Text.Length != 0) && (textBoxRate.Text.Length != 0))
buttonOk.Enabled = true;
else buttonOk.Enabled = false;
textBoxPeriod_TextChanged
this.listViewCalc.Items.Clear();
if ((textBoxPeriod.Text.Length != 0) && (textBoxSum.Text.Length != 0) && (textBoxRate.Text.Length != 0))
buttonOk.Enabled = true;
else buttonOk.Enabled = false;
textBoxRate_TextChanged
this.listViewCalc.Items.Clear();
if ((textBoxRate.Text.Length != 0) && (textBoxSum.Text.Length != 0) && (textBoxPeriod.Text.Length != 0))
buttonOk.Enabled = true;
else buttonOk.Enabled = false;
Задача 8. Создать приложение, которое реализует головоломку Ллойда «Собери 50».
buttonOk_Click
int sum= 0;
listBoxRes.Items.Clear();
for (int i = 0; i < checkedListBoxNamber.CheckedItems.Count; i++)
listBoxRes.Items.Add(checkedListBoxNamber.CheckedItems[i].ToString());
for (int i = 0; i < listBoxRes.Items.Count; i++){
sum += int.Parse(checkedListBoxNamber.CheckedItems[i].ToString());
labelRes.Text = "Сумма: " + sum.ToString();}
if (sum==50){
checkedListBoxNamber.Enabled = false;
listBoxRes.Enabled = false;
buttonOk.Enabled = false;
Задача 9. Создать приложение, которое ведет подсчет секунд и минут.
public partial class Form1 : Form
int m = 0, s = 0;
buttonStart_Click
if (timer1.Enabled){
timer1.Enabled = false;
buttonStart.Text = "Пуск";
buttonStart.Enabled = true;
labelCol.Visible = true;}
else{
timer1.Enabled = true;
buttonStart.Text = "Стоп";
buttonRes.Enabled = false;}
timer1_Tick
if (labelCol.Visible==true){
if (s<59){
s++;
if (s < 10) labelSec.Text = "0" + s.ToString();
else labelSec.Text = s.ToString();}
else{
if (m<59){
m++;
if (m < 10) labelMin.Text = "0" + m.ToString();
else labelMin.Text = m.ToString();
s = 0;
labelSec.Text = "00";}
else{
m = 0;
labelMin.Text = "00";}}}
buttonRes.Enabled = true;
buttonRes_Click
s = 0;
m = 0;
labelMin.Text = "00";
labelSec.Text = "00";
Задача 10. Создать приложение, которое выводит на поверхность формы флаг Италии.
Заключение преподавателя, проверившего практику и отчет
-
В какой степени выполнена программа практики
__________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
-
Общая оценка практики
________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
М.П. Руководитель практики ____________ /Волосникова Л.В./
подпись