purebasic.info

PureBasic forum
Текущее время: Вт апр 24, 2018 12:12 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
СообщениеДобавлено: Вс авг 20, 2017 8:23 am 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Сб авг 05, 2017 8:34 pm
Сообщений: 41
Откуда: Россия, Брянск
Благодарил (а): 7 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Здравствуйте!
Можно ли упростить код, решив задачу на чистой математике, не используя циклы, иначе говоря - упростить код:
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
m=2
a=10000
b=3
c=100000
For x=m To c
  For y=m To x
    n+1
    If x=a And y=b
      Break 2
    EndIf
    Next y
Next x
Debug n


Заранее, Спасибо!


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Чт авг 24, 2017 7:19 am 
Не в сети
доцент
Аватар пользователя

Зарегистрирован: Сб авг 05, 2017 8:34 pm
Сообщений: 41
Откуда: Россия, Брянск
Благодарил (а): 7 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Решил!
Сначала упростил до одного цикла:
Код:
1
2
3
4
5
6
For x=m To a
  d=x-m+1
  n+d
Next x
n-(a-b)
Debug n



А затем до формулы:

Код:
1
2
n=(a-m+1)*(a-m+2)/2-(a-b)
 Debug n


Вот так одной строкой избавился от двух ненужных циклов :D
Всё тему можно закрывать.
Простите, что побеспокоил из-за такого пустяка...


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB