Главная /
C#: ООП и классы /
Проанализируйте приведенный код. class Rectangle { public int x = 10, y = 20; public Rectangle(int x, int y) { this.x = x; this.y = y; } public virtual int Zoom { get { return x * y; } set { x += value; y += value; } } } class Параллепипед : Rectangle { p
Проанализируйте приведенный код.
class Rectangle
{ public int x = 10, y = 20;
public Rectangle(int x, int y) { this.x = x; this.y = y; }
public virtual int Zoom
{ get { return x * y; } set { x += value; y += value; } }
}
class Параллепипед : Rectangle
{ public int z;
public Параллепипед(int x, int y, int z) : base(x, y) { this.z = z; }
public override int Zoom
{ get { return x*y*z; } set { x+=value; y+=value; z+=value; } }
}
class Program
{ static void Main()
{ Rectangle парал = new Параллепипед(6, 8, 10);
парал.Zoom = -5; System.Console.Write(парал.Zoom); }
}
Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
вопрос
Правильный ответ:
программа завершится аварийно
3
15
375
будет обнаружена синтаксическая ошибка, связанная с попыткой присвоить ссылке типа
Rectangle
адрес объекта типа Параллепипед
Сложность вопроса
54
Сложность курса: C#: ООП и классы
79
Оценить вопрос
Комментарии:
Аноним
Экзамен сдан на пять. лол
15 дек 2019
Аноним
Зачёт всё. Иду в бар отмечать экзамен интуит
06 авг 2018
Другие ответы на вопросы из темы программирование интуит.
- # Исходный модуль содержит код: class Сотрудник { private int id; private float зарплата; public Сотрудник(int i, float z) { id = i; зарплата = z; } public float Зарплата(int номер) { return номер < id ? зарплата : -1; } public void Зарплата(int номер, ref float зарпл) { if (номер < id) { float зрпл = зарплата; зарплата = зарпл; зарпл = зрпл; } } } class Program { static void Main() { Сотрудник Иванов = new Сотрудник(12, 40000.0f); float z = 45000.0f; Иванов.Зарплата(10, ref z); System.Console.Write("Зарплата Иванова = " + z); } } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
- # Проанализируйте приведенный код. class Круг { protected double r = 5; public Круг(double r) { this.r = r; } public virtual int Фигура() { return (int)(3.14*r*r); } } class Цилиндр : Круг { double h = 10; public Цилиндр(double r, double h) : base(r) { this.h = h; } public override int Фигура() { return (int)(3.14*r*r*h); } } class Конус : Круг { double h = 10; public Конус(double r, double h) : base(r) { this.h = h; } public override int Фигура() { return (int)(3.14*r*r*h/3.0); } } class Program { static void Param(Круг fig) { System.Console.Write(fig.Фигура()+" "); } static void Main() { Param(new Цилиндр(2, 1)); } } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
- # Проанализируйте приведенный код. interface Интерфейс { int Метод(); } class Класс1 : Интерфейс { int len; public Класс1(int l) { len = l; } public virtual int Метод() { return len * len; } } class Класс2 : Класс1 { int w, h; public Класс2(int w1, int h1) : base (w1) { w = w1; h = h1; } public override int Метод() { return w * h; } } class Test { public static void Main() { Класс2 объект1 = new Класс2(5, 10); Интерфейс объект2 = объект1; System.Console.WriteLine("Значение1={0} Значение2={1}", объект1.Метод(), объект2.Метод()); } } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
- # Проанализируйте приведенный код. public static void Main() { System.Collections.Queue q = new System.Collections.Queue(); q.Enqueue(11); q.Enqueue(22); q.Enqueue(33); ___________________ q.Enqueue(44); foreach (int i in q) System.Console.Write(i + " "); } Требуется вывести числа 22 33 44. Среди перечисленных ниже кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания позволяет получить программу, решающую поставленную задачу:
- # Проанализируйте приведенный код. static void Main() { int a = 0; try { a = Devide(a); } catch (System.SystemException) { System.Console.Write(" Ошибка в данных! "); } finally { System.Console.Write(" Программа завершена!"); } System.Console.Write(" a=" + a); } static int Devide(int b) { if (b == 0) throw new System.FormatException(); else b = 100 / b; return b; } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение: