Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2016, 07:23   #1
cenitelas
Пользователь
 
Регистрация: 22.11.2010
Сообщений: 12
По умолчанию Не могу сообразить

Здравствуйте. Идея такая. На форме расположен Image, ограничения width у него от 0 до 546. Изначально width=0.
Также есть I-integer на который поступают разные числа в сумме до рандомного ограничения (например ограничение 453322111554, приходят числа 12313511, 12542512, 1242451 пока в сумме не будет 453322111554.
При получении нового числа в "I", Image.width = +1 и так до ограничения.

Проблема. Если сумма чисел I не дошла до ограничения, то Image уже дошло или наоборот. Как сделать так чтоб и image и "i" дошли до ограничения одновременно? Спасибо зарание!
cenitelas вне форума Ответить с цитированием
Старый 22.01.2016, 07:33   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Вы должны ранжировать i. Грубо говоря делите сначала Ваше максимальное I на максимальную ширину. Для указанных Вами значений это будет число 830 260 278. Запомните это число. Теперь с помощью него Вы просто переводите i в ширину путем деления i на это число (делить естественно нацело). После того как в i произошли изменения Вы вычисляете ширину заново и будет Вам счастье.
Цитата:
При получении нового числа в "I", Image.width = +1 и так до ограничения.
Это просто невозможно. Так как в i места больше чем в ширине рисунка. В некоторых случаях ширина рисунка не изменится, в зависимости от результата в i. Так для первого числа (считаем что в i сначала был 0) - 12313511 изменение рисунка не произойдет вообще.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 22.01.2016 в 07:36.
Utkin вне форума Ответить с цитированием
Старый 22.01.2016, 07:49   #3
cenitelas
Пользователь
 
Регистрация: 22.11.2010
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Utkin Посмотреть сообщение
Вы должны ранжировать i. Грубо говоря делите сначала Ваше максимальное I на максимальную ширину. Для указанных Вами значений это будет число 830 260 278. Запомните это число. Теперь с помощью него Вы просто переводите i в ширину путем деления i на это число (делить естественно нацело). После того как в i произошли изменения Вы вычисляете ширину заново и будет Вам счастье.
Это просто невозможно. Так как в i места больше чем в ширине рисунка. В некоторых случаях ширина рисунка не изменится, в зависимости от результата в i. Так для первого числа (считаем что в i сначала был 0) - 12313511 изменение рисунка не произойдет вообще.
К примеру I =9000 , принимаем числа 1000,2000,3000,1000,2000. В итоге 6 раз числа пришли.
Получается Image.width:=image.width + 545/6;
Вот как то так реализовать возможно?
cenitelas вне форума Ответить с цитированием
Старый 22.01.2016, 07:50   #4
cenitelas
Пользователь
 
Регистрация: 22.11.2010
Сообщений: 12
По умолчанию

Но, проблема в том что максимальное число I рандом, и числа тоже в рандоме приходят.
cenitelas вне форума Ответить с цитированием
Старый 22.01.2016, 08:18   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

А зачем всё это надо? Как на счёт чтения вот этого?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 22.01.2016, 08:22   #6
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Ну если больше подробностей нет, меняйте рисунок тоже рандомом. Скажите что так сложились звезды.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 22.01.2016, 09:11   #7
cenitelas
Пользователь
 
Регистрация: 22.11.2010
Сообщений: 12
По умолчанию

Разобрался, входящие числа поделил на частное от i и width
cenitelas вне форума Ответить с цитированием
Старый 22.01.2016, 09:17   #8
cenitelas
Пользователь
 
Регистрация: 22.11.2010
Сообщений: 12
По умолчанию

min@y™,Главное иметь хорошее воображение) считай скроллбар
cenitelas вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Срочно!!!Помогите с условным оператором, учусь на первом курсе спо, не могу сообразить, как нужно сделать задачку! Jhon_Smith Помощь студентам 0 18.10.2013 22:36
отправка данных - не могу сообразить zipo666 C/C++ Сетевое программирование 3 25.08.2012 01:12
НЕ МОГУ СООБРАЗИТЬ КАК НАПИСАТЬ ЗАДАЧКУ YaDenis Помощь студентам 0 18.12.2011 20:12
Компиляция кода... не могу сообразить. Жека90 Помощь студентам 6 13.06.2011 23:29
Не могу сообразить в паскале с массивом JeeSx Помощь студентам 9 03.03.2010 16:52