- •Тема 1.3. Лабораторная работа «Структура программы на c# и функции. Средства программирования алгоритмов линейной структуры»
- •1.3.1. Вопросы, подлежащие изучению
- •1.3.2. Задание
- •1.3.3. Варианты задания
- •Тема и название работы
- •Задание на разработку проекта и вариант задания
- •Формализация и уточнение задания
- •Разработка приложения:
- •Разработать графический интерфейс пользователя
- •Установка свойств объектов
- •Разработка схемы алгоритма
- •Написание программного кода с использованием процедур
- •Выполнение приложения и получение результатов
- •Доказательство правильности результата
- •1.3.6. Контрольные вопросы по теме «Структура программ на c# и функции. Средства программирования алгоритмов линейной структуры»
- •Тема 1.3. Лр «Структура программ на c# и функции Страница 33
Разработка схемы алгоритма
Рис. 1.3-2
|
|
Рис. 1.3.3
Написание программного кода с использованием процедур
Программный код представлен на рис. 1.3-4.
-
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//функция ввода в TextBox действительного числа
double vvod(TextBox textbox)
{
return Convert.ToDouble(textbox.Text);
}
//функция вывода в TextBox действительного числа
void vivod(TextBox textbox, double c)
{
textbox.Text = Convert.ToString(c);
}
//функция вычисления длины стороны
double storona(double x1,double y1,double x2,double y2)
{
return Math.Sqrt(Math.Pow(x1 - x2, 2) + Math.Pow(y1 - y2, 2));
}
//функция вычисления периметра и площади
double PS(double x1, double y1, double x2, double y2, double x3,
double y3,ref double P)
{ double a = storona(x1, y1, x2, y2), b = storona(x3, y3, x2, y2),
c = storona(x1, y1, x3, y3);
P = a + b + c;
double p = P / 2;
return Math.Sqrt(p*(p-a)*(p-b)*(p-c));
}
private void button1_Click(object sender, EventArgs e)
{
double x1 = vvod(textBox1),y1 = vvod(textBox2),
x2 = vvod(textBox3), y2 = vvod(textBox4),
x3 = vvod(textBox5),y3 = vvod(textBox6),p=0;
double s=PS(x1, y1, x2, y2, x3, y3,ref p);
vivod(textBox7, p);
vivod(textBox8, s);
}
private void button2_Click(object sender, EventArgs e)
{
Close();
}
}
}
Рис. 1.3-4
Выполнение приложения и получение результатов
Результат приведен на рис. 1.3-5.
.
Рис. 1.3-5
Доказательство правильности результата
1.3.6. Контрольные вопросы по теме «Структура программ на c# и функции. Средства программирования алгоритмов линейной структуры»
Что представляет собой математическая модель?
Какие основные этапы включает в себя решение задач на компьютере?
Какие этапы компьютерного решения задач осуществляются без участия компьютера?
Что называют математической моделью объекта или явления?
Из каких последовательных действий состоит процесс разработки программы?
Что называется алгоритмом?
Какими основными свойствами должен обладать алгоритм?
Какие существуют способы описания алгоритмов?
Какими графическими символами принято изображать в схемах алгоритма?
Как работает интерпретатор?
Как работает компилятор?
Какой алгоритм называется линейным?
Какой алгоритм называется циклическим?
Какой алгоритм называется разветвляющимся?
В чем отличие передачи результатов выполнения функций и процедур?
В чем отличие циклической структуры с предусловием от циклической структуры с постусловием?
Что такое параметр цикла?
В чем отличие регулярной циклической структуры от итеративной?
Доказывает ли получение правдоподобного результата правильность программы?
Какие ошибки могут остаться не выявленными, если не провести проверку (просмотр, прокрутку) программы?
Чем тестирование программы отличается от её отладки?
Можно ли с помощью тестирования доказать правильность программы?
На какой стадии работы над программой вычисляются эталонные результаты тестов?
Назовите основные этапы процесса тестирования.
В чём отличие синтаксических ошибок от семантических?
О чём свидетельствует отсутствие сообщений машины о синтаксических ошибках?
Какие разновидности ошибок транслятор не в состоянии обнаружить?
Что такое программа?
На каком этапе происходит поиск и устранение ошибок в программе?
Что такое система программирования?
Что такое функция?
Какими преимуществами обладает программа, имеющая функции?
Какие средства процедурного программирования имеются в языке C#?
Каким образом происходит обмен данными между отдельными процедурами программы?
Что такое фактические и формальные параметры?
Каким образом передать в качестве параметра: константу, переменную, массивы различных типов, выражение?
Как используются глобальные переменные?
Как используются локальные переменные?
Что происходит при вызове функции?
Каким образом параметры могут передаваться в функцию?
Какие параметры передаются по значению?
Какие параметры передаются по адресу?
Что относится к средствам процедурного программирования?
Что является результатом выполнения функции?
Каким образом надо объявить отдельные переменные, чтобы внутри функции они были локальными?
Какой оператор используется для досрочного выхода из функции?
Что контролируется при вызове функций?
Каким образом осуществляется вызов функции из вызывающей программы?
Где могут находиться описания функций?
Где будет доступна переменная, объявленная с помощью оператора Public?
Где может находиться оператор Private?
Какой правильный формат записи функции InputBox( )?
Как используются функций для ввода и вывод?
Какой правильный формат записи функции MessageBox( )?
Что такое комментарий и правила его записи?
Из каких частей (блоков) строится программа на C#?
Когда необходимо описывать все переменные?
Какие значения имеют переменные в начале программы?
Для чего описываются (определяются) функции?
