МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ІКТА
кафедра ЗІ
З В І Т
до лабораторної роботи №2
з курсу: «Алгоритмічні мови та програмування»
на тему: «Програми з розгалуженими та циклічними алгоритмами»
Варіант №12
Виконав: ст. гр. ЗІ-12
Прийняв:
Львів - 2011
ЗАВДАННЯ
Скласти блок-схему алгоритму та програму мовою C# для табулювання функції, представленої сумою ряду. Табулювання здійснювати на інтервалі [1, 2] з кроком табуляції 0.1 та абсолютною похибкою 0.001. Оцінку похибки здійснювати за значенням чергового члена ряду.
Забезпечити ввід значень аргументів з клавіатури і вивід результату розрахунку на дисплей.
БЛОК-СХЕМА АЛГОРИТМУ
Блок-схема методу Main ()
1
2
3
Блок-схема методу Input()
1
2
3
4
3
5
6
7
8
Блок-схема методу Count()
1
x=a,b ; x=x+h
2
3
4
5
9 6
7
10
8
СПИСОК ІДЕНТИФІКАТОРІВ КОНСТАНТ, ЗМІННИХ, ФУНКЦІЙ, ВИКОРИСТАНИХ У БЛОК-СХЕМІ АЛГОРИТМУ І ПРОГРАМІ, ТА ЇХ ПОЯСНЕННЯ
x, a, b, h, dE, d – змінні дійсного типу;
n – змінна цілого типу;
y – змінна дійсного типу, якій надається значення результату обчислення виразу;
Main() – головний метод;
Input() – метод, в якому вводяться дані;
Count() – метод, в якому обчислюється вираз і виводиться його значення на екран;
Console.WriteLine () – метод виводу даних, який належить класу Console;
Console.ReadLine() – метод вводу даних який належить класу Console;
Convert.ToDouble() – метод перетворення типу змінної в тип double;
Math.Pow(x,y) – математичний метод обчислення xy;
new – оператор, який створює об’єкт;
class Values – базовий клас Values, який містить метод Input();
class Obch() – похідний клас Obch від класу Values, який містить метод Count();
class the_Engine – клас the_Engine, який містить метод Main().
ТЕКСТ ПРОГРАМИ
using System;
class Values
{
double a, b, h, d;
public void Input()
{
string val;
Console.WriteLine("Vvedit' nyzhnju mezhu intervaly");
val = Console.ReadLine();
a = Convert.ToDouble(val);
Console.WriteLine("Vvedit' verhnju mezhu intervaly");
val = Console.ReadLine();
b = Convert.ToDouble(val);
Console.WriteLine("Vvedit' krok");
val = Console.ReadLine();
h = Convert.ToDouble(val);
Console.WriteLine("Vvedit' pohybku");
val = Console.ReadLine();
d = Convert.ToDouble(val);
}
class Obch : Values
{
public void Count()
{
int n;
double y, x, dE;
for (x = a; x < b + h / 7.0; x += h)
{
n = 1;
y = 0.0;
do
{
dE = Math.Pow(-1.0, n) * Math.Pow(Math.Cos(Math.Pow(2.0, n) * x), 4.0) / Math.Pow(2.0, 2.0 * n);
y += dE;
n++;
} while (Math.Abs(dE) >= d) ;
Console.Write("X=" + x);
Console.Write("\tS="+y);
Console.Write("\tpohubka=" + dE);
Console.Write("\n");
}
}
}
class the_Engine
{
public static void Main()
{
Obch Go = new Obch();
Go.Input();
Go.Count();
Console.ReadLine();
}
}
}
РЕЗУЛЬТАТ РОБОТИ ПРОГРАМИ
ВИСНОВКИ
Під час лабораторної роботи я ознайомився з таким принципом
об’єктно-орієнтованого програмування, як успадкування і використав його в програмі, яка табулює функцію, представлену сумою ряду.