Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

методички по информатике / Задания по ООП

.pdf
Скачиваний:
35
Добавлен:
27.05.2015
Размер:
790.62 Кб
Скачать

да. Если полученное значение <100, то принимается значение по умолчанию. Результирующее значение поля №1 равно значению поля №1 первого операнда;

2.-(<T>,<T>). Результирующее значение поля №1 получается путем удаления из значения поля №1 первого операнда букв, входящих в поле №1 второго операнда. Если результирующее значение поля №1 равно пустой строке, то принимается значение по умолчанию. Результирующее значение поля №2 получается путем нахождения разницы между полями №2 операндов. Если значение выходит за диапазон 100÷999, то оно принимает значение ближайшей границы диапазона;

3.!=(<T>,<T>). Истина, если имеется разница в значениях соответствующих полей операндов;

4.>(<T>,<T>). Истина, если значение поля №1 первого операнда больше значения поля №1 второго операнда, или значения полей №1 равны, а значение поля №2 первого операнда больше значения поля №2 второго операнда.

20.поля:

1.int, ≥0, по умолчанию 11;

2.double, ≥0, по умолчанию 7.3;

отображение: «<12><34.56>»;

перегруженные операторы:

1.+(<T>,<T>). Результирующее значение полей получается путем сложения соответствующих полей операндов;

2.-(<T>). Результирующее значение поля №1 равно целой части поля №2 операнда. Результирующее значение поля №2 равно сумме поля №1 и дробной части поля №2 операнда;

3.==(<T>,<T>). Истина, если сумма поля №1 и целой части поля №2 первого операнда равна сумме поля №1 и целой части поля №2 второго операнда;

4.<(<T>,<T>). Истина, если сумма поля №1 и целой части поля №2 первого операнда меньше суммы поля №1 и целой части поля №2 второго операнда.

21.поля:

1.double, ≥0, по умолчанию 4.8;

2.double, ≥0, по умолчанию 4.9;

отображение: «12.34 $ - 56.78 руб./$»;

перегруженные операторы:

1.-(<T>,int). Результирующее значение полей получается путем вычитания из значений полей первого операнда значения второго операнда. Если какое-либо результирующее поле <0, то оно принимает значение по умолчанию;

21

2.*(<T>,<T>). Результирующее значение полей получается путем перемножения полей операндов. Если какое-либо результирующее поле <0, то оно принимает значение по умолчанию;

3.==(<T>,<T>). Истина, если равны целые части соответствующих полей операндов;

4.>(<T>,<T>). Истина, если целая часть поля №1 первого операнда больше целой части поля №1 второго операнда, или целые части полей №1 равны, а целая часть поля №2 первого операнда больше целой части поля №2 второго операнда.

22.поля:

1.int, ≥0, по умолчанию 93;

2.string, не пустая, по умолчанию «м»;

отображение: «12 - абвг»;

перегруженные операторы:

1.+(<T>,<T>). Результирующие значения полей равны сумме значений соответствующих полей операндов;

2.-(<T>,int). Результирующее значение поля №1 равно разнице между значениями поля №1 первого операнда и второго операнда. Если результирующее значение поля №1 <0, то оно принимает значение по умолчанию. Результирующее значение поля №2 равно значению поля №2 первого операнда, из которого удалены последние буквы в количестве, равном значению второго операнда. Если значение второго операнда <0, то удаление не производится. Если результирующее значение поля №2 является пустой строкой, то оно принимает значение по умолчанию;

3.==(<T>,<T>). Истина, если сумма поля №1 и количества букв поля №2 первого операнда равна сумме поля №1 и количества букв поля №2 второго операнда;

4.<(<T>,<T>). Истина, если сумма поля №1 и количества букв поля №2 первого операнда меньше суммы поля №1 и количества букв поля №2 второго операнда.

23.поля:

1.string, не пустая, по умолчанию «н»;

2.string, не пустая, по умолчанию «о»;

отображение: «(абвг) - (дежз)»;

перегруженные операторы:

1.+(<T>,int). Результирующие значения полей получаются путем добавления к значению соответствующих полей первого операнда строк, длина которых равна значению второго операнда, а каждая буква равна первой букве соответствующего поля первого операнда. Если значение второго операнда <0, то добавляемая строка равная значению по умолчанию соответству-

22

ющего поля;

2.-(<T>). Результирующее поле №1 равно полю №2 операнда, а результирующее поле №2 равно полю №1 операнда;

3.!=(<T>,<T>). Истина, если имеются различия в значениях соответствующих полей;

4.>(<T>,<T>). Истина, если значение поля №1 первого операнда больше значения поля №1 второго операнда, или значения полей №1 равны, а значение поля №2 первого операнда больше значения поля №2 второго операнда.

24.поля:

1.double, ≥0, по умолчанию 6.1;

2.double, ≥0, по умолчанию 9.2;

отображение: «12.34 : 56.78»;

перегруженные операторы:

1.+(<T>,int). Результирующие значения полей получаются путем сложения целой части полей первого операнда с произведением дробной части полей первого операнда на второй операнд. Если результирующее значение какого-либо поля <0, то поле принимает значение по умолчанию;

2.-(<T>). Результирующие значения поля №1 получается путем сложения целой части поля №1 операнда с дробной частью поля №2. Результирующие значения поля №2 получается путем сложения целой части поля №2 операнда с дробной частью поля №1;

3.!=(<T>,<T>). Истина, если целая часть поля №1 первого операнда не равна целой части поля №1 второго операнда, или целая часть поля №2 первого операнда не равна целой части поля №2 второго операнда;

4.<(<T>,<T>). Истина, если целая часть поля №1 первого операнда меньше целой части поля №1 второго операнда, или целый части полей №1 равны, а целая часть поля №2 первого операнда меньше целой части поля №2 второго операнда.

25.поля:

1.int, трехзначное, ≥0, по умолчанию 123;

2.int, двухзначное, ≥0, по умолчанию 12;

отображение: «123 (45)»;

перегруженные операторы:

1.+(<T>,int). Результирующие значения полей получаются путем сложения значений полей первого операнда со значением второго операнда. Если результирующее значение какого-либо поля выходит за допустимый диапазон, то оно принимает значение ближайшей границы диапазона;

23

2.-(<T>,<T>). Результирующие значения полей получаются путем разности между значениями соответствующих полей первого и второго операндов. Если результирующее значение какоголибо поля выходит за допустимый диапазон, то оно принимает значение ближайшей границы диапазона;

3.!=(<T>,<T>). Истина, если минимум из двух старших разрядов поля №1 и всего поля №2 первого операнда не равен минимуму из двух старших разрядов поля №1 и всего поля №2 второго операнда;

4.>(<T>,<T>). Истина, если минимум из двух старших разрядов поля №1 и всего поля №2 первого операнда больше минимума из двух старших разрядов поля №1 и всего поля №2 второго операнда;

24