Top.Mail.Ru
Ответы

С# Выполнить практические задание

С помощью с# Visual Studio 2022 и Access и вииндоус форм ( C# net.Framework)
1. Разработать класс «Полином», в котором информация о коэффициентах хранится в виде списка. Реализовать для класса методы ввода-вывода, сложения и умножения полиномов, умножения полинома на число, интегрирования и дифференцирования полинома.
2. Описать класс «Предметный указатель». Каждый компонент указателя содержит слово и номера страниц, на которых это слово встречается. Предусмотреть возможность формирования указателя с клавиатуры и из файла, печати предметного указателя, сохранения в файл, вывода номеров страниц для заданного слова, добавления и удаления элемента из указателя.
3. Описать класс «Каталог библиотеки». Каждая запись каталога содержит информацию о книге – название, автор, количество экземпляров, количество экземпляров «на руках». Предусмотреть возможность формирования каталога с клавиатуры и из файла, печати каталога, сохранения в файл, поиска книги по какому-либо признаку (например, автору или названию), добавления книг в библиотеку, удаления книг из нее, операции получения или возврата книги читателем.
4. Описать класс «Расписание занятий». Каждая запись содержит день недели, время, название учебной дисциплины, аудиторию. Предусмотреть возможность формирования расписания с клавиатуры и из файла, печати всего расписания и расписания на конкретный день (печать должна быть осуществлена в хронологическом порядке), добавления и удаления записей, сохранения в файл.
5. Описать класс «Расписание приема пациентов». Каждая запись содержит дату, время, фамилию пациента. Время приема одного пациента должно быть равно одному часу. Предусмотреть возможность формирования расписания с клавиатуры и из файла, печати всего расписания, или расписания в конкретный день, добавления и удаления записей, сохранения в файл. При добавлении записи следует учитывать, что время записи должно быть свободно (не существует уже созданной записи с этим же временем).

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Искусственный Интеллект
5мес

Это достаточно серьезные задания. Либо ты сделаешь их самостоятельно, либо к хренам засыпешься на сдаче на первом же вопросе. Я тебе подарю первое - разберись, как там и что работает, и сделай остальные сам по данному образцу:

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
 public class Polinome 
{ 
    private List<double> Coefficients; 
    public Polinome(IEnumerable<double> _Coefficients, bool _DoNotReduce = false) 
    { 
        Coefficients = _Coefficients.Reverse().ToList(); 
        if (!_DoNotReduce) 
            ReducePower(); 
    } 
 
    public override string ToString() 
    { 
        string Result = string.Empty; 
        for (int i = Coefficients.Count - 1; i >= 0; i--) 
        { 
            if (Coefficients[i] == 0d && i > 0) 
                continue; 
            if (i != Coefficients.Count - 1 && Coefficients[i] >= 0d) 
                Result += "+"; 
            Result += Coefficients[i].ToString(); 
            if (i != 0) 
                Result += "x"; 
            if (i > 1) 
                Result += $"^{i}"; 
        } 
        return Result; 
    } 
 
    public int Power { get => Coefficients.Count - 1; } 
    private void ReducePower() 
    { 
        while (Coefficients.Count > 0 && Coefficients[Coefficients.Count-1]==0d)  
            Coefficients.RemoveAt(Coefficients.Count-1); 
    } 
 
    public static Polinome operator +(Polinome a, Polinome b) 
    { 
        int NewSize = Math.Max(a.Power, b.Power) + 1; 
        Polinome Result = new Polinome(Enumerable.Range(0, NewSize).Select(x => 0d), true); 
        for (int i = 0; i < NewSize; i++) 
        { 
            if (i <= a.Power) 
                Result.Coefficients[i] += a.Coefficients[i]; 
            if (i <= b.Power) 
                Result.Coefficients[i] += b.Coefficients[i]; 
        }             
        Result.ReducePower(); 
        return Result; 
    } 
 
    public static Polinome operator *(double a, Polinome b) 
    { 
        Polinome Result = new Polinome(Enumerable.Range(0, b.Power + 1).Select(i => b.Coefficients[i] * a).Reverse()); 
        Result.ReducePower(); 
        return Result; 
    } 
 
    public static Polinome operator *(Polinome a, Polinome b) 
    { 
        int NewSize = (a.Power + 1) * (b.Power + 1); 
        Polinome Result = new Polinome(Enumerable.Range(0, NewSize).Select(x => 0d), true); 
        for (int i = 0; i <= a.Power; i++) 
            for (int j = 0; j <= b.Power; j++) 
                Result.Coefficients[i * j] += a.Coefficients[i] * b.Coefficients[j]; 
        Result.ReducePower(); 
        return Result; 
    } 
 
    public void Differenciate() 
    { 
        for (int i = 0; i < Coefficients.Count; i++) 
            Coefficients[i] *= i; 
        Coefficients = Coefficients.Skip(1).ToList(); 
    } 
 
    public void Integrate(double _C) 
    { 
        Coefficients.Insert(0, _C); 
        for (int i = 1; i < Coefficients.Count; i++) 
            Coefficients[i] /= i;             
    } 
}