"Длинная" арифметика
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: класс, сочинение 6 класс
| Добавил(а) на сайт: Маклаков.
Предыдущая страница реферата | 7 8 9 10 11 12 13 14 15 16 17 | Следующая страница реферата
End
End;
Остальные функции реализуются через функции Eq и More.
Function Less(A, B : Tlong) : Boolean; {A < B}
Begin
Less := Not(More(A, B) Or Eq(A, B))
End;
Function More_Eq(A, B : Tlong) : Boolean; {A >= B}
Begin
More_Eq := More(A, B) Or Eq(A, B)
End;
Function Less_Eq(A, B : Tlong) : Boolean; {A <= B}
Begin
Less_Eq := Not More(A, B)
End;
Для самостоятельного решения может быть предложена следующая, более сложная, задача. Требуется разработать функцию, которая выдает 0, если А больше В, 1, если А меньше В, и 2 при равенстве чисел. Но сравнение должно быть выполнено с учетом сдвига. О чем идет речь? Поясним на примере. Пусть А равно 56784, а В — 634. При сдвиге числа В на 2 позиции влево функция должна сказать, что В больше А, без сдвига, что А больше В. Другой пример. При А равном 56700, а В — 567 и сдвиге 2 функция должна "сказать", что числа равны. Решение может иметь следующий вид:
Function More(Const А, В : Tlong; Const sdvig : Integer) : Byte;
Var i : Integer;
Begin
If A[0] > B[0] + sdvig Then More := 0
Else
If A[0] < B[0] + sdvig Then More := l
Else Begin
i := A[0];
While (i > sdvig) And
Рекомендуем скачать другие рефераты по теме: информационные рефераты, скачать контрольную.
Категории:
Предыдущая страница реферата | 7 8 9 10 11 12 13 14 15 16 17 | Следующая страница реферата