
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[35.172.111.47] |
![]() |
|
![]() |
|
|
Найти все целочисленные делители заданного числа n
в visual basic 6.0 |
Сообщ.
#2
,
|
|
|
А в таком духе:
![]() ![]() Dim p,q,r,n As Integer n = 100 for p=1 to n q = n/p ' делим r = n - p*q 'смотрим, хорошо ли поделилось=нет ли остатка if r=0 then ' хорошо! '' печатаем p или ещё что-то next p Добавлено Ну и ![]() ![]() end if перед next'ом. |
Сообщ.
#3
,
|
|
|
если не нужно, чтобы делители шли строго в возрастающем порядке,
то можно каждый раз при нахождении делителя p выводить оба делителя (и p и q) и тогда достаточно перебирать до квадратного корня из n, а не до самого n. |
Сообщ.
#4
,
|
|
|
Цитата Славян @ q = n/p ' делим r = n - p*q 'смотрим, хорошо ли поделилось=нет ли остатка можно чутка упростить ![]() использовать вот это \ тогда получается на строчку меньше ![]() ![]() ![]() ... q=n\p if q=0 then ... |
Сообщ.
#5
,
|
|
|
Цитата Славян @ А в таком духе: ![]() ![]() Dim p,q,r,n As Integer n = 100 for p=1 to n q = n/p ' делим r = n - p*q 'смотрим, хорошо ли поделилось=нет ли остатка if r=0 then ' хорошо! '' печатаем p или ещё что-то next p Добавлено Ну и ![]() ![]() end if перед next'ом. Ну возьми попробуй сделать вот поэтому примеру может получится у тебя что www.modber.ru/catalog/item2859.html |