0 / 0 / 0
Регистрация: 24.08.2018
Сообщений: 60
1

Правильно ли выполнено задание? ООП

09.09.2018, 22:36. Показов 642. Ответов 5
Метки нет (Все метки)

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
                                                                                                                                               *
//*Задание: Написать программу, в которой описан класс «Водное средство передвижения».                                                                                                   *
//*Реализовать методы ввода с клавиатуры, вывода на экран и один для работы с классом на выбор.                                                                                          *
//****************************************************************************************************************************************************************************************
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Практическая_работа_14
{
    class Program
    {
        class WaterVehicle//Объявление класса
        {   //Объявление переменных
            string Class, o, Classific;
            double Speed, weight;
            //Перевод из км/ч в узлы
            double Speedyz()
            {
                double speedyz = Speed * 0.54;
                return speedyz;
            }
            void Get()//Вывод значений
            {
                Console.Write("Хотите перевести км/ч в узлы? (да/нет): ");
                o = Console.ReadLine();
                if (o == "Да" || o == "да")
                {
                    Console.WriteLine("\nКласс корабля: {0}" + "\nВес: {1} кг" + "\nСкорость: {2} узлов" + "\nКлассификация: {3}", Class, weight, Speedyz(), Classific);
                }
                else
                {
                    if (o == "Нет" || o == "нет")
                    {
                        Console.WriteLine("\nКласс корабля: {0}" + "\nВес: {1} кг" + "\nСкорость: {2} км/ч" + "\nКлассификация: {3}", Class, weight, Speedyz(), Classific);
                    }
                    else
                    {
                        Console.Write("Вы ввели недопустимое значение. \nДля выхода из программы нажмите любую клавишу.");
                    }
                }
            }
            public void Set()//Инициализация значений
            {
                try
                {
                    Console.Write("\nКласс (Катер, Паром, Лайнер, Линкор, Линейный крейсер, Гидроцикл, Эсминец, Фрегат, Корвет, Тральщик и др.): ");
                    Class = Console.ReadLine();
                    if (Class.Length == 0)
                    {
                        Console.WriteLine("Вы ввели недопустимое значение, повторите попытку. Для выхода из программы нажмите любую клавишу.");
                        Console.ReadKey();
                        Environment.Exit(0);
                    }
                    Console.Write("Вес(в кг): ");
                    weight = Convert.ToDouble(Console.ReadLine());
                    Console.Write("Скорость(в км/ч): ");
                    Speed = Convert.ToDouble(Console.ReadLine());
                    Console.Write("Классификация(Военный, гражданский): ");
                    Classific = Console.ReadLine();
                    if (Classific != "Военный" && Classific != "военный" && Classific != "гражданский" && Classific != "Гражданский")
                    {
                        Console.WriteLine("Вы ввели недопустимое значение, повторите попытку. Для выхода из программы нажмите любую клавишу.");
                        Console.ReadKey();
                        Environment.Exit(0);
                    }
                    Get();
                }
                catch (Exception ex)//Обработчик исключений
                {
                    Console.WriteLine("Ошибка: {0}.\nДля выхода из программы нажмите любую клавишу.", ex.Message);
                    Console.ReadKey();
                }
            }
        }
        static void Main(string[] args)
        {
            do
            {
                Console.WriteLine("Практическая работа №14.");
                Console.WriteLine("Описание класса 'Водное средство передвижения'.");
                WaterVehicle ship = new WaterVehicle();//Создание экземпляра класса
                ship.Set();//Вызом метода Set класса WaterVehicle 
                Console.Clear();
                Console.WriteLine("Нажмите клавишу 'П' для повтора программы. Для выхода - любую другую.");
            }
            while (Console.ReadKey().Key == ConsoleKey.G);
        }
    }
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.09.2018, 22:36
Ответы с готовыми решениями:

Правильно ли выполнено задание? (Асинхронный вызов делегата)
Собственно, вот задание: Объявить делегат, который ссылается на произвольную бинарную операцию...

Правильно ли выполнено задание
Написать функцию, которая принимает на вход вектор строк и выводит их суммарную длину. #include...

Проверить правильно ли выполнено задание Наследование классов
Всем привет, не могу понять, правильно ли выполнено задание с наследованием. Просто в моём коде...

Правильно настроены ли связи и в целом выполнено задание?
Разработать объекты базы данных. Описание предметной области: Книжный магазин работает с...

5
Эксперт JS
6341 / 3810 / 1958
Регистрация: 14.06.2018
Сообщений: 6,697
09.09.2018, 23:06 2
Кривой комментарий //*
Надо использовать ///

Добавлено через 2 минуты
Данный код не даёт второго шанса оступившемуся...
C#
1
2
3
                        Console.WriteLine("Вы ввели недопустимое значение, повторите попытку. Для выхода из программы нажмите любую клавишу.");
                        Console.ReadKey();
                        Environment.Exit(0);
Добавлено через 5 минут
А вообще преподавателей за насильное навязывание Console.ReadLine() во всех местах надо ругать.

Кривая общая компоновка программы. Так программировать вообще нельзя. И в первую очередь виновато впихивание Console.ReadLine() и Console.WriteLine() в методах класса.
0
Модератор
2867 / 1723 / 175
Регистрация: 19.02.2011
Сообщений: 6,377
09.09.2018, 23:47 3
А в чем, собственно, ООП? В создании объекта со свойствами? Слишком учебный пример. К тому же, судя по коду, предполагается несколько разных средств передвижения. А где тогда наследование?
0
Эксперт JS
6341 / 3810 / 1958
Регистрация: 14.06.2018
Сообщений: 6,697
09.09.2018, 23:52 4
TanaTiX, тут другое печалит.
Человеку, не знающему, что делать, преподаватели насильно вбивают ложные навыки.

Сам по себе объект со свойствами и методами - не плохо. Он не ломает психику.
0
Неадекват
1445 / 1194 / 234
Регистрация: 02.04.2010
Сообщений: 2,730
10.09.2018, 00:34 5
Цитата Сообщение от Аня_Самойлова Посмотреть сообщение
Правильно ли выполнено задание? ООП
С точки зрения препода, да.
С точки зрения программиста, нет (мысль любого тимлида будет примерно такой - "ПЕРЕДЕЛАТЬ ВСЕ НА*** *** *********").
0
TanaTiX
10.09.2018, 01:08     Правильно ли выполнено задание? ООП
  #6

Не по теме:

Цитата Сообщение от amr-now Посмотреть сообщение
преподаватели насильно вбивают ложные навыки
Может и вбивают не ложные. На то они, ученики, и учатся. И видно, что делают только то, чему учат. А программирование в значительной мере предполагает самообучение и самосовершенствование (по крайней мере в моем представлении). Очень часто весь навык сводится к получению оценки.
Вот смотрю задачи по плюсам, по с# и пр. Математика, физика... Блин, да я одну такую месяц буду думать - может что и получится. Но какова практическая ценность? Только навык мало приспособленный к реалиям (т.е. получение зачета и то с помощью форума). Но это мое ИМХО, не претендующее на истинность, а я слишком отошел от темы.

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.09.2018, 01:08

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Правильно ли сделано задание по ООП С++, если нет - подправьте
Базовый класс: Работник с различными формами начисления заработной платы. Производные классы:...

Насколько корректно выполнено задание?
Скажите пожалуйста насколько корректно выполнил все, ибо боюсь научиться писать говно и писать так...

Как узнать выполнено ли задание?
Здравствуйте. Я пишу квест игру (в первый раз), как мне в Unity узнать выполнено ли определенное...

Правильно ли выполнено преобразование?
Подскажите, пожалуйста, верно ли выполнено преобразование?

Операторы цикла (задание должно быть выполнено всеми тремя типами циклов)
Вычислить значение функции у=cosx+cosx²+…+cosx30... Операторы цикла (задание должно быть выполнено...

Как правильно унаследовать TPoint2D от TPoint3D/ Правильно ли наследовать? ООП
Два пользовательских класса: Точка в 2D пространстве и точка в 3D пространстве. class TPoint3D{...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.