инфа / Отчет Лаба 7.1
.docxЛабораторная работа №7.1
Выполнил студент группы БРТ 1301: Иванов Иван
-
Тема работы: «Регулярные циклы»
-
Текст задания: Получить таблицу значений функции y=f(x) при изменении х на отрезке [a;b] с шагом h
Sinx, если -1<=x<=1
Y= 5cosx, в противном случае
Отрезок [-2;2], шаг h=0.25
Структурированный исходный текст программы:
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 lab71
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Tablica tablica = new Tablica();
tablica.a = Convert.ToDouble(textBox1.Text);
tablica.b = Convert.ToDouble(textBox2.Text);
tablica.h = Convert.ToDouble(textBox3.Text);
tablica.listX = listBox1;
tablica.listY = listBox2;
tablica.calc();
}
}
class Tablica
{
public double a, b, h;
public int n;
public ListBox listX, listY;
public void calc()
{
double x = a, y;
n = Convert.ToInt32(Math.Floor((b - a) / h) + 1);
listX.Items.Clear();
listY.Items.Clear();
for (int i = 1; i <= n; i++)
{
y = f(x);
listX.Items.Add(x);
listY.Items.Add(y);
x = x + h;
}
}
public double f(double x)
{
double f;
if (x < 1 && x > -1) f = Math.Sin(x);
else f = 5 * Math.Cos(x);
return f;
}
}
}
Результаты тестирования программы: