М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Derbeshto
Derbeshto
20.04.2020 19:25 •  Информатика

C#. Задание массивное и интересное.
Описать класс "Библиотека".


C#. Задание массивное и интересное.Описать класс Библиотека.

👇
Ответ:
DanyaHD
DanyaHD
20.04.2020

Осуществил с того что я умею, сложного не использовал ибо еще не дошел до него . Тут 2 класса идут в двух разных .cs .

Единственные нюансы: 1) не осуществил год до нашей эры, т.е если год вводится -2 (2 до н.е) выводится 2.

2) запутанность жесткая, ибо использовал goto и много переменных разных. с моими текущими знаниями я не мог использовать что то попроще, возможно оптимизируете.

1 класс:

using System;

namespace HomeLibrary

{

   class ListOfBooks

   {

       static string Author, Category, Name; static int Year;

       public static bool Indicate, SecondIndicate, ThirdIndicate;

       public static string SetAuthor

       {

           get

           {

               return Author;

           }

           set

           {

               if (string.IsNullOrWhiteSpace(value) || int.TryParse(value, out int WrongValue))

               {

                   Indicate = true;

               }

               else

               {

                   Author = value;

               }

           }

       }

       public static int SetYear

       {

           get

           {

               return Year;

           }

           set

           {

               if(value >= 0 && value <= 2022)

               {

                   Year = value;

               }

           }

       }

       public static string SetCategory

       {

           get

           {

               return Category;

           }

           set

           {

               if (string.IsNullOrWhiteSpace(value) || int.TryParse(value, out int WrongValue))

               {

                   SecondIndicate = true;

               }

               else

               {

                   Category = value;

               }

           }

       }

       public static string SetName

       {

           get

           {

               return Name;

           }

           set

           {

               if (string.IsNullOrWhiteSpace(value) || int.TryParse(value, out int WrongValue))

               {

                   ThirdIndicate = true;

               }

               else

               {

                   Name = value;

               }

           }

       }

   }

}

2 класс.

using System;

using System.Collections.Generic;

namespace HomeLibrary

{

   class Program

   {

       static void SecondMenue(int SecondChoise)

       {

           switch(SecondChoise)

           {

               case 2:

                   List<string> Books = new List<string>();

                   TryAgain4:

                   Console.WriteLine("Введите название книги.");

                   ListOfBooks.SetName = Console.ReadLine();

                   if (ListOfBooks.ThirdIndicate == true)

                   {

                       Console.WriteLine("Попробуйте ещё раз. Некорректное значение.");

                       ListOfBooks.ThirdIndicate = false;

                       Console.ReadLine();

                       goto TryAgain4;

                   }

                   TryAgain:

                   Console.WriteLine("Введите имя/псевдоним автора.");

                   ListOfBooks.SetAuthor = Console.ReadLine();

                   if ( ListOfBooks.Indicate == true)

                   {

                       Console.WriteLine("Попробуйте ещё раз. Некорректное значение.");

                       ListOfBooks.Indicate = false;

                       Console.ReadLine();

                       goto TryAgain;

                   }

                   TryAgain2:

                   string YearString;

                   Console.WriteLine("Введите год выпуска книги.");

                   YearString = Console.ReadLine();

                   if (!(int.TryParse(YearString, out int Year)))

                   {

                       Console.WriteLine("Попробуйте ещё раз. Некорректное значение.");

                       Console.ReadLine();

                       goto TryAgain2;

                   }

                   ListOfBooks.SetYear = Year;

                   TryAgain3:

                   Console.WriteLine("Введите категорию книги.");  

                   ListOfBooks.SetCategory = Console.ReadLine();

                   if (ListOfBooks.SecondIndicate == true)

                   {

                       Console.WriteLine("Попробуйте ещё раз. Некорректное значение.");

                       ListOfBooks.SecondIndicate = false;

                       Console.ReadLine();

                       goto TryAgain3;

                   }

                   Books.Add($"Книга: {ListOfBooks.SetName}, Автор: {ListOfBooks.SetAuthor}, Год: {ListOfBooks.SetYear}, Категория: {ListOfBooks.SetCategory}.");

                   Console.WriteLine("Книга успешно добавлена в вашу библиотеку.");

                   string ChoiceAfter;

                   TryAgain5:

                   Console.WriteLine("Желаете добавить ещё книгу - 2 , посмотреть список книг - 3, закончить - 4 .");

                   ChoiceAfter = Console.ReadLine(); if (int.TryParse(ChoiceAfter, out int Choice) && Choice == 2) goto TryAgain4;

                   else if(Choice == 3)

                   {

                       Console.WriteLine("Список ваших книг:");

                       foreach(string Book in Books)

                       {

                           Console.Write($"\n{Book}");

                           Console.ReadLine();

                       }

                       goto TryAgain5;

                   }

                   else if(Choice == 4)

                   {

                       Console.WriteLine("Всего доброго!");

                       Console.ReadLine();

                       return;

                   }

           break;

               case 4:

                   Console.WriteLine("Всего доброго!");

                   Console.ReadLine();

                   return;

           }

       }

       static void Menue(int UserNumber)

       {

           TryAgainX2:

           switch (UserNumber)

           {

               case 1:

                   string ChoiseString;

                   Console.WriteLine("Добавить книгу - 2 , Закончить работу - 4 .");

                   ChoiseString = Console.ReadLine();

                   int.TryParse(ChoiseString, out int Choise); if (Choise >= 2 && Choise <= 4) SecondMenue(Choise);

                   break;

               default:

                   Console.WriteLine("Некорректное значение");

           goto TryAgainX2;

           break;

           }

       }

       static void Main(string[] args)

       {

           TryAgain:

           string ChoiceFirst;

           Console.WriteLine("Здравствуйте, Вас приветсвует домашняя библиотека. Открыть меню команд - 1");

           ChoiceFirst = Console.ReadLine();

           if (int.TryParse(ChoiceFirst, out int Choice) && Choice == 1) Menue(Choice);

           else

           {

               Console.WriteLine("Неверное значение, попробуйте ещё раз.");

               goto TryAgain;

           }

           Console.ReadLine();

       }

   }

}


C#. Задание массивное и интересное.Описать класс Библиотека.
4,4(15 оценок)
Открыть все ответы
Ответ:
толя151
толя151
20.04.2020

ответ: Задание 1

#include <iostream>

#include <cmath>

double getArea(double side)

{

double S = pow(side, 2) * sqrt(3) / 4;

return S;

}

double getHeight(double side)

{

double H = sqrt(pow(side, 2) - pow(side, 2) / 4);

return H;

}

double getInR(double side)

{

double R = side / sqrt(12);

return R;

}

double getOutR(double side)

{

double R = side / sqrt(3);

return R;

}

int main()  

{

double sideA = 3.5; // длина одной из сторон треугольника, произвольное число;

double area = getArea(sideA);

double height = getHeight(sideA);

double R1 = getInR(sideA);

double R2 = getOutR(sideA);

std::cout << "S = " << area << '\n' << "H = " << height << '\n' << "R1 = " << R1 << '\n' << "R2 = " << R2;

return 0;

}

Задание 4:

#include <iostream>

double Pow(double num, int power)

{

double n = num;

for (int i = 1; i < power; i++)

 num *= n;

return num;

}

int main()  

{

double a = Pow(2, 5); // 2^5=32  

std::cout << a;

return 0;

}

4,7(40 оценок)
Ответ:

4. Раньше это называлось ПЗУ, "постоянное запоминающее устройство". Потом видов ПЗУ стало больше и стали называть каждое устройство по-своему. Во-первых, это локальные хранилища в компьютере: жесткие диски (HDD), либо SSD. Во-вторых, это внешние устройства, внешние накопители информации: также жесткие диски, флешки. Есть еще различные носители информации типа CD-ROM или дискет, но они сами не являются устройствами, устройства для считывания с них существуют отдельно. Есть и совсем специфические хранилища - хранилища на магнитных лентах, в них используются кассеты, типа магнитофонных. Не знаю, стоит ли их все упоминать, все они сейчас встречаются достаточно редко.

5. WIFI, Bluetooth, WiMax

4,5(51 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ