Пример написания программы
Задание : составить программу вычисления для заданных зна- чений x, y, z арифметического выражения:
u tg2 (x y) eyz
Панель диалога программы организовать в виде, представленном на рис. 2.2.
Для вывода результатов работы программы в программе использу- ется текстовое окно, которое представлено обычным элементом управ- ления. После установки свойства Multiline в True появляется возмож- ность растягивать элемент управления не только по горизонтали, но и по вертикали. А после установки свойства ScrollBars в значение Both в окне появится вертикальная, а при необходимости и горизон- тальная полосы прокрутки.
Рис. 2.2. Внешний вид программы
Информация, которая отображается построчно в окне, находится в массиве строк Lines, каждая строка которого имеет тип string. Одна- ко нельзя напрямую обратиться к этому свойству для добавления новых строк, поскольку размер массивов в C# определяется в момент их ини- циализации. Для добавления нового элемента используется свойство Text, к текущему содержимому которого можно добавить новую строку:
textBox4.Text += Environment.NewLine + "Привет";
В этом примере к текущему содержимому окна добавляется символ перевода курсора на новую строку (который может отличаться в разных операционных системах и потому представлен свойством класса Environment) и сама новая строка. Если добавляется числовое значение, то его предварительно нужно привести в символьный вид методом ToString().
Работа с программой происходит следующим образом. Нажмите (щелкните мышью) кнопку «Выполнить». В окне textBox4 появляется результат. Измените исходные значения x, y, z в окнах textBox1– textBox3 и снова нажмите кнопку «Выполнить» – появятся новые ре- зультаты.
Полный текст программы имеет следующий вид:
using System;
using System.Windows.Forms;
namespace MyFirstApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// Начальное значение X textBox1.Text = "3,4";
// Начальное значение Y textBox2.Text = "0,74";
// Начальное значение Z textBox3.Text = "19,43";
}
private void button1_Click(object sender, EventArgs e)
{
// Считывание значения X
double x = double.Parse(textBox1.Text);
// Вывод значения X в окно
textBox4.Text += Environment.NewLine + "X = " + x.ToString();
// Считывание значения Y
double y = double.Parse(textBox2.Text);
// Вывод значения Y в окно
textBox4.Text += Environment.NewLine + "Y = " + y.ToString();
// Считывание значения Z
double z = double.Parse(textBox3.Text);
// Вывод значения Z в окно
textBox4.Text += Environment.NewLine + "Z = " + z.ToString();
// Вычисляем арифметическое выражение
double a = Math.Tan(x + y) * Math.Tan(x + y);
double b = Math.Exp(y ‐ z);
double c = Math.Sqrt(Math.Cos(x*x) + Math.Sin(z*z));
double u = a ‐b * c;
// Выводим результат в окно
textBox4.Text += Environment.NewLine + "Результат U = " + u.ToString();
}
}
}
Если просто скопировать этот текст и заменить им то, что было в редакторе кода Visual Studio, то программа не заработает. Правильнее будет создать обработчики событий Load у формы и Click у кнопки и уже в них вставить соответствующий код. Это замечание относится и ко всем последующим лабораторным работам.
Достарыңызбен бөлісу: |