Модальные и немодальные формы
Первичным является понятие модального и немодального окна. Окно называется модальным, если нельзя закончить работу в открытом окне до тех пор, пока оно не будет закрыто. Модальное окно не позволяет, если оно открыто, временно переключиться на работу с другим окном. Выйти из модального окна можно, только закрыв его. Немодальные окна допускают параллельную работу в окнах. Форма называется модальной или немодальной в зависимости от того, каково ее окно. Метод Show открывает форму как немодальную, а метод ShowDialog - как модальную. Название метода отражает основное назначение модальных форм - они предназначены для организации диалога с пользователем, и пока диалог не завершится, покидать форму не разрешается.
1. Написать программу для решения уравнения ах+в=0
· При а=0 и b<>0 уравнение не имеет решения.
· При а=0 и b=0 уравнение имеет бесконечное множество решений.
· При а<>0 уравнение имеет единственное решение х=- b/а.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
double a, b, x;
a = double.Parse(textBox1.Text);
b = double.Parse(textBox2.Text);
b = double.Parse(textBox2.Text);
if (a == 0 && b!=0) label3.Text = "Нет решения";
if (a == 0 && b == 0) label3.Text = "Бесконечное множество решений";
if (a != 0)
{
x = -b / a;
label3.Text = "Результат: х= " + x.ToString();
}
}
private void button2_Click(object sender, EventArgs e)
{
textBox1.Text = "";
textBox2.Text="";
label3.Text="";
}
}
}
Пример 2. Протабулировать функцию y = на отрезке [a,b] с шагом h.
Private void button1_Click(object sender, EventArgs e)
{
Double a, b, h, x, y;
a = double.Parse(textBox1.Text);
b = double.Parse(textBox2.Text);
h = double.Parse(textBox3.Text);
x = a;
label4.Text ="| x | y |"+(char)13;
while (x <= b)
{
y = (x * Math.Sin(3 * x) + x * x * x + 5 * Math.Cos(x)) / Math.Sqrt(x * x + 3);
y = Math.Round(y, 3);
x = x + h;
label4.Text = label4.Text + "| " + x.ToString() + "| " + y.ToString() + "|" + (char)13;
}
}
Private void button2_Click(object sender, EventArgs e)
{
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
label4.Text = "";
}
Задания для самостоятельного выполнения:
1.Вычислить значение функции:
2.Вычислить сумму .
3. Вычислить сумму .
4. Протабулировать функцию y= на отрезке [a,b] с шагом h.
5. Вычислить сумму s = с точностью до члена меньшего e.