Главная /
C#: ООП и классы /
Проанализируйте приведенную ниже программу и укажите результат после попытки запустить программу на компиляцию и выполнение: public delegate void Выдать(ref int a); class Начисление{ int s = 100; public event Выдать Зарплата; public void Начислить() { Зар
Проанализируйте приведенную ниже программу и укажите результат после попытки запустить программу на компиляцию и выполнение:
public delegate void Выдать(ref int a);
class Начисление{
int s = 100;
public event Выдать Зарплата;
public void Начислить() { Зарплата(ref s); }
public void Получите() { System.Console.Write(s); }}
class БумТрест { public static void OnЗарплата(ref int s) { s = s + 10; } }
class БумСтрой { public static void OnЗарплата(ref int s) { s = s - 30; } }
class Совместитель{
static void Main(string[] args) {
Начисление нач = new Начисление();
нач.Зарплата += new Выдать(БумТрест.OnЗарплата);
нач.Зарплата += new Выдать(БумСтрой.OnЗарплата);
нач.Зарплата += new Выдать(БумТрест.OnЗарплата);
нач.Зарплата -= new Выдать(БумСтрой.OnЗарплата);
нач.Получите(); нач.Начислить();} }
вопрос
Правильный ответ:
100
110
220
200
возникает исключение при попытке обращения по
null
-ссылке Сложность вопроса
80
Сложность курса: C#: ООП и классы
79
Оценить вопрос
Комментарии:
Аноним
Я сотрудник деканата! Оперативно удалите сайт и ответы по интуит. Немедленно!
21 мар 2019
Другие ответы на вопросы из темы программирование интуит.
- # Программист определил тип как class MyOut {} Тип MyOut будет доступен
- # Исходный модуль содержит код классов MyMessage и Program. class MyMessage { private readonly string msg = "Ура!"; public MyMessage(string s) { msg = s; } public MyMessage() { msg = "Вперед"; } public string Msg() { return msg; } } В классе Program определен метод Main, в теле которого находится код: MyMessage m1 = new MyMessage("Назад!"); MyMessage m2 = new MyMessage(); MyMessage m3 = new MyMessage("Назад!"); System.Console.Write(m1.Msg() + m2.Msg() + m3.Msg()); Укажите результат вывода на консоль после выполнения метода Main():
- # Доступность поля из других классов может быть указана:
- # Исходный модуль содержит определения: interface IСмена { void Сменить(); } class Переключатель: IСмена { bool s; public Переключатель(bool s){this.s = s;} public void Сменить() { s = !s; System.Console.Write(" " + s); } } class Счетчик : IСмена { int s; public Счетчик(int s) { this.s = s; } public void Сменить() { s--; System.Console.Write(" " + s); } } В этом же модуле определен класс Program c методом Main(), в котором содержится следующий код: IСмена a = new Переключатель(true); IСмена b = new Счетчик(9),c; c = b; a.Сменить(); b.Сменить(); b = a; b.Сменить(); b = c; b.Сменить(); Укажите результат вывода на консоль после выполнения метода Main():
- # Проанализируйте приведенный код. class Вуз { public string название; public Вуз(string н) { название = н; } } class Student { private string фамилия; private Вуз вуз; public Student(string фам, Вуз уз) { фамилия = фам; вуз = уз; } public override string ToString() { return string.Format("{0} учится в {1}" ,фамилия, вуз.название) ; } } class Program { static void Main(string[] args) { Student[] студенты = new Student[2]; Вуз вуз1 = new Вуз("МГУ"); студенты[0] = new Student("Иванов", вуз1); вуз1 = new Вуз("ГУ-ВШЭ"); студенты[1] = new Student("Петров", вуз1); вуз1.название = "МВТУ"; System.Console.WriteLine(студенты[1]); } } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение: