Помощь - Поиск - Пользователи - Календарь
Полная версия: Тестовые вопросы
Форум «Всё о Паскале» > Pascal, Object Pascal > Теоретические вопросы
Credo
Понимаю глупый вопрос. Как вот это вычислять устно succ(round(9/2)-pred(4)).

Добавлено через 3 мин.
и еще это Вычислить значение выражения [6..12]-[7..16]*[8]+[5,15..50]*[4..15]
Lapp
Цитата(Credo @ 20.12.2010 19:15) *
Понимаю глупый вопрос. Как вот это вычислять устно succ(round(9/2)-pred(4)).
Ну.. просто в лоб считаешь:
round(9/2) = round(4.5) = 5
pred(4)=3
5-3=2
succ(2)=3
Вот и все. В уме вполне выполнимо, мне кажется. Даже в моем убогеньком.. smile.gif

Цитата
и еще это Вычислить значение выражения [6..12]-[7..16]*[8]+[5,15..50]*[4..15]
Первыми вычисляешь пересечения (звездочки)
[7..16]*[8] = [8]
[5,15..50]*[4..15] = [4,5,15]
Потом объединения и вычитания слева направо (хотя, порядок неважен, исли знаки правильно учитывать)
[6..12] - [8] = [6,7,9..12]
[6,7,9..12] + [4,5,15] = [4..7,9..12,15]
-Volvo-
Цитата
[5,15..50]*[4..15] = [4,5,15]

Неправда. Пересечение - это то, что содержится в обоих операндах. Четверки в левом операнде нет.
Lapp
Цитата(-Volvo- @ 21.12.2010 9:24) *
Неправда. Пересечение - это то, что содержится в обоих операндах. Четверки в левом операнде нет.
Именно smile.gif.
Я бы этот тест не прошел.. sad.gif
Credo
smile.gif ясно спасибо а если trunc(12/5)

Добавлено через 5 мин.
функция ORD () определяет?
volvo
Цитата
а если trunc(12/5)
- то раздели 12 на 5 и отбрось дробную часть. Сколько получится?
Credo
2 получится.
а чта сами эти функций озночают. ord()?
volvo
Ord - это сокращение от английского Ordinal (порядковый). Вот и возвращает эта функция порядковый номер элемента в некотором наборе. То есть, если у тебя есть перечислимый тип (скажем, Char), то Ord вернет тебе номер, под которым символ присутствует в таблице символов (фактически - код символа. Скажем, Ord('A') = 65, Ord('B') = 66 и так далее... ). Точно так же и для пользовательских типов: номер, под которым идентификатор встречается в описании типа:
type T = (_A, _B, _C);
// ...
WriteLn(Ord(_A)); // Напечатает 0
WriteLn(Ord(_C)); // Напечатает 2
Credo
Сколько раз будет выполнятся тело цикла?
n:=0;
FOR I:=1 TO 3*n+4 DO
n:=n+2;


4 раза?


Добавлено через 8 мин.
Что выполняет следующий фрагмент программы

p:=1;
for i:=1 to n do
if A[i,n+1-i] < 0 then //Это непонятно
p:=p*A[i,n+1-i];

volvo
Цитата
Сколько раз будет выполнятся тело цикла?
Вспоминаем, как устроен цикл For в Паскале: сначала запоминается стартовое и конечное значение, и только потом начинает работать сам цикл. Изменения N не учитываются, т.к. значение переменной i, при котором цикл завершится, уже запомнено и равно 4. Значит, цикл будет выполняться 4 раза...

Цитата
Что выполняет следующий фрагмент программы
Есть матрица. Обращение в цикле к A[i, i] - это элементы главной диагонали, соответственно A[i, n + 1 - i] - элементы диагонали побочной. Дальше разберешься? smile.gif
Credo
понелл)) дальше уже понятно smile.gif
Credo
Блин! провалил я тест 1-го бала нехватило чтобы 4-ку получить в зачет smile.gif и стипендия гудбай...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.