Форум программистов, компьютерный форум CyberForum.ru

QBasic

Войти
Регистрация
Восстановить пароль
 
echs
835 / 1030 / 348
Регистрация: 23.10.2013
Сообщений: 4,809
Записей в блоге: 4
#1

Числовое равенство для ln(N) - QBasic

01.01.2017, 11:07. Просмотров 72. Ответов 0
Метки нет (Все метки)

Задача
задается натуральное число N и требуется найти
пару натуральных чисел X и Y таких, чтобы выполнялось
приближенное равенство ln(n) = ln(x) + ln(y) с погрешностью
порядка 0,01%.
пример, дано число N = 2017 (ln(2017) = 7.609366) и найдено
два числа x = 42 и y = 48. Погрешность меньше 0,01%
ln(2017) = ln(42) + ln(48)
примечание
для данного примера есть и другие пары чисел, программа
их тоже вычисляет, но в задаче не требуется "вычислить всё".

QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
REM
REM  ln(n) = ln(x) + ln(y)
REM
REM  ln(2017) = ln(42) + ln(48)
REM  ln(2017) = 7.609366
REM
 
DECLARE FUNCTION f! (x!, y!)
 
CLS
INPUT "N = "; n
z = LOG(n)
 
FOR x = 2 TO n - 1
FOR y = x TO n - 1
   IF f(x, y) > LOG(n) THEN EXIT FOR
   IF ABS(z - f(x, y)) < .0005 THEN PRINT x; y
NEXT y, x
END
 
FUNCTION f (x, y)
   f = LOG(x) + LOG(y)
END FUNCTION
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.01.2017, 11:07     Числовое равенство для ln(N)
Посмотрите здесь:

QBasic Проверить равенство

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 20:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru