Главная /
C#: ООП и классы /
Исходный модуль содержит код: internal class Point { public double x,y; public Point(double x, double y) { this.x = x; y = y; } public void Move(double d){ x+=d; y+=d;} } class Program { static void Main() { Point p = new Point(1,1); p.Move(1); System.Con
Исходный модуль содержит код:
internal class Point
{
public double x,y;
public Point(double x, double y) { this.x = x; y = y; }
public void Move(double d){ x+=d; y+=d;}
}
class Program
{
static void Main()
{
Point p = new Point(1,1);
p.Move(1);
System.Console.Write("{0} {1}", p.x, p.y);
}
}
Метод Main
разрабатывался для перемещения точки по обеим координатам на 1.
При запуске программы выведены значения 2 1
вместо ожидаемых значений 2 2
. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
Правильный ответ:
значение полей
x
и y
не определено
значение поля
y
может быть изменено только конструктором
локальная переменная
y
скрывает поле y
метод
Move
должен вызываться как метод объекта, а не метод класса
в классе
Point
не определен конструктор без параметров Сложность вопроса
28
Сложность курса: C#: ООП и классы
79
Оценить вопрос
Комментарии:
Аноним
Зачёт сдал. Мчусь выпивать отмечать 4 за тест интуит
15 янв 2018
Аноним
Какой студент ищет вот эти тесты с интуитом? Это же очень просты вопросы
21 фев 2017
Другие ответы на вопросы из темы программирование интуит.
- # Исходный модуль содержит классы Class и Program: class Class { private int x, y; public Class(int x, int y) { this.x = x; this.y = y; } public static Class operator ++(Class a) { return new Class(a.x+1, a.y);} public void View(){System.Console.Write("{0} {1} ",x,y);} } В классе Program определен метод Main, в теле которого находится код: Class a = new Class(4,3),b; b = a++; b.View(); a.View(); Укажите результат вывода на консоль после выполнения метода 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():
- # Приведенному ниже коду доступны пространства имен System и System.Collections. public static void Main() { Hashtable ht = new Hashtable(); ht.Add("ВУЗ", "МГУ"); ht.Add("Птица", "чиж"); ht.Add("Ветер", "пассат"); ht.Sort(); foreach (string str in ht.Keys) Console.Write(str + ": " + ht[str] + ". "); } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
- # В классе Test определен приведенный ниже код: public delegate int CallBackMethod(int a1, int a2); public static void Main() { int s = 0; if (System.Console.ReadLine() == "1") s = CallMethod(new CallBackMethod(CBMethod1)); else s = CallMethod(new CallBackMethod(CBMethod2)); System.Console.WriteLine(s); } public static int CallMethod(CallBackMethod cbMethod) { return cbMethod(33, 22); } public static int CBMethod1(int a1, int a2) { return a1 + a2; } public static int CBMethod2(int a1, int a2) { return a1 - a2; } Пользователь собирается после запуска программы ввести цифру 1. Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
- # Проанализируйте приведенную ниже программу и укажите результат после попытки запустить программу на компиляцию и выполнение: 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Зарплата); нач.Получите(); нач.Начислить();} }