АиСД / АиСД2
.DOCXМИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«КАЗАНСКИЙ (ПРИВОЛЖСКИЙ) ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»
НАБЕРЕЖНОЧЕЛНИНСКИЙ ИНСТИТУТ (ФИЛИАЛ)
КАФЕДРА ИНФОРМАЦИОННЫХ СИСТЕМ
ЛАБОРАТОРНАЯ РАБОТА № 2
«Использование библиотек»
По дисциплине
«Алгоритмы и структуры данных»
Выполнил:
Студент группы 2161121
Золотых С.В.
Проверил:
Каримов Т.Н.
Набережные Челны
2018
Задание
-
Создать библиотеку и консольное приложение
Создать в библиотеке класс, который принимает Сумму, Срок вклада, Процентную ставку и возвращает массив, который содержит сумму вклада на каждый месяц. Консольное приложение позволяет ввести параметры и вывести массив сумм по месяцам. Параметры класса можно задать только при создании объекта. Массив вычисляется только один раз.
-
Квадратное уравнение
Написать класс, который находит корни квадратного уравнения. Параметры A, B, C вводятся с консоли пользователем. При отрицательном дискриминанте искать комплексные корни. Ответ выводить в консоль в виде
Ax^2 + Bx + C = 0 (A,B,C заменить на введенные значения).
X1 = значение_первого_корня
X2 = значение_второго_корня
Листинг Программы
Задание №2
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Numerics;
namespace АиСД2_2
{
class Program
{
static void Main(string[] args)
{
// Ввод данных уравнения - значения a, b и c
// После ввода данных мы обрезаем лишние пробелы по краям методом Trim()
// и преобразовываем тип string во float
Console.Write("Введите значение a = ");
double a = double.Parse(Console.ReadLine());
Console.Write("Введите значение b = ");
double b = double.Parse(Console.ReadLine());
Console.Write("Введите значение c = ");
double c = double.Parse(Console.ReadLine());
Reshenie one = new Reshenie(a, b, c);
one.raschet();
// Ждем нажатия клавиши, чтобы завершить выполнение программы
Console.ReadLine();
}
class Reshenie
{
private double a;
private double b;
private double c;
private double D;
private double x1;
private double x2;
public Reshenie(double a, double b, double c)
{
this.a = a;
this.b = b;
this.c = c;
}
public void raschet()
{
D = Math.Pow(b, 2) - 4 * a * c;
if (D > 0 || D == 0)
{
x1 = (-b + Math.Sqrt(D)) / (2 * a);
x2 = (-b - Math.Sqrt(D)) / (2 * a);
Console.WriteLine("x1= {0}\n x2= {1}", x1, x2);
Console.ReadKey();
}
else
{
Complex Dobl = new Complex(D*(-1),-1);
string x1_d =Convert.ToString( -b / (2 * a));
string x1_m = Convert.ToString(Complex.Sqrt(Dobl) / (2 * a));
string x2_d = Convert.ToString(-b / (2 * a));
string x2_m = Convert.ToString(Complex.Sqrt(Dobl) / (2 * a));
Console.WriteLine("x1= {0}+{1}\n x2= {2}-{3}",x1_d ,x1_m ,x2_d,x2_m);
Console.WriteLine();
Console.ReadKey();
}
}
}
}
}
Результат выполнения программы
Задание №2:
Вывод
Были реализованы два алгоритма сортировки: сортировка слиянием и методом обмена (пузырьком).