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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.06.2024, 21:56   #21
Kronos913
Форумчанин
 
Регистрация: 10.02.2021
Сообщений: 653
По умолчанию

Я поместил переменную-счётчик внутри record и Delphi не позволяет ее использовать внутри цикла For
Потому решил применять цикл While
Kronos913 вне форума Ответить с цитированием
Старый 05.06.2024, 22:12   #22
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,604
По умолчанию

Цитата:
Сообщение от northener Посмотреть сообщение
это нужно для какой-то реальной физической задачи. Так для какой например?
Ну, например, для реальной физической задачи
Цикл по t (время) с вещественным шагом.
Arigato вне форума Ответить с цитированием
Старый 08.06.2024, 01:25   #23
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,894
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Ну, например, для реальной физической задачи
Цикл по t (время) с вещественным шагом.
Как физик по образованию не вижу такой необходимости. Поскольку нет возможности узнать время с абсолютной точностью.
northener вне форума Ответить с цитированием
Старый 09.06.2024, 21:53   #24
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,604
По умолчанию

Цитата:
Сообщение от northener Посмотреть сообщение
Как физик по образованию не вижу такой необходимости. Поскольку нет возможности узнать время с абсолютной точностью.
Самый простой вариант задачи: имитация полета объекта, ну типа выстрел из пушки (аля школьная задача).
Arigato вне форума Ответить с цитированием
Старый 10.06.2024, 00:59   #25
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,894
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Самый простой вариант задачи: имитация полета объекта, ну типа выстрел из пушки (аля школьная задача).
Но зачем там обязательно нужен вещественный цикл?
Делай цикл хоть в секундах, хоть в миллисекундах. Только из-за того что тип TDateTime в Дельфи вещественный?
northener вне форума Ответить с цитированием
Старый 10.06.2024, 15:02   #26
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,604
По умолчанию

Ну если привязаться не к экранным координатам, а построить именно модель полета снаряда, то важно время в долях секунды.

Другой пример задачи: обойти окружность, то есть все 360 градусов, но с детализацией более 1 градуса.
Arigato вне форума Ответить с цитированием
Старый 11.06.2024, 01:54   #27
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,894
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Ну если привязаться не к экранным координатам, а построить именно модель полета снаряда, то важно время в долях секунды.
Важно для чего? Именно для построения модели/графика движения? Или для того чтобы уже на основе построенной модели/графика узнать положение снаряда в некий момент времени, который естественно уже может быть задан в долях?

Цитата:
Сообщение от Arigato Посмотреть сообщение
Другой пример задачи: обойти окружность, то есть все 360 градусов, но с детализацией более 1 градуса.
Да ради бога! Обходите в цикле от 0 до 719. Конкретный угол высчитывайте в теле цикла.
northener вне форума Ответить с цитированием
Старый 11.06.2024, 10:47   #28
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,604
По умолчанию

Цитата:
Сообщение от northener Посмотреть сообщение
узнать положение снаряда в некий момент времени
Не в некий, а во все от t=0 и до падения снаряда на землю. Ну чтобы визуализировать полет, к примеру.

Цитата:
Сообщение от northener Посмотреть сообщение
Обходите в цикле от 0 до 719. Конкретный угол высчитывайте в теле цикла.
И зачем такие извращения? Во-первых, лишние операции деления, хотя достаточно операций сложения. Во-вторых, падает читабельность кода. Цикл от 0 до 360 вполне себе понятен и очевиден. А вот шаг может быть хоть 0.01. Или цикл вообще может быть до 2*pi.
Arigato вне форума Ответить с цитированием
Старый 12.06.2024, 01:21   #29
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,894
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
Не в некий, а во все от t=0 и до падения снаряда на землю. Ну чтобы визуализировать полет, к примеру.
Во ВСЕ? А сколько их всех, если время вещественно?

Цитата:
Сообщение от Arigato Посмотреть сообщение
И зачем такие извращения? Во-первых, лишние операции деления, хотя достаточно операций сложения.
Ну хотя бы за тем, что раз вы делаете вычисления на компьютере, в котором точность вещественного числа ограничена, то учитывайте, что при сложении погрешность увеличивается.
northener вне форума Ответить с цитированием
Старый 12.06.2024, 11:17   #30
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,604
По умолчанию

Цитата:
Сообщение от northener Посмотреть сообщение
А сколько их всех, если время вещественно?
Ну так о том и речь, что мы задаем нужный нам вещественный шаг.

Цитата:
Сообщение от northener Посмотреть сообщение
точность вещественного числа ограничена, то учитывайте, что при сложении погрешность увеличивается.
Погрешность устраняется округлением до заданного числа знаков после точки. Если у вас шаг цикла 0.001, то и округляйте до этого значения. Любые отклонения, типа 0.001000000000000000001 или 0.00099999999999999 превратятся в 0.001. А во многих задачах такие отклонения вообще не влияют существенно на результат, потому и округлять необязательно.
Arigato вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Будет ли работать данный код?Что он будет делать? Виталий2266 Общие вопросы Delphi 8 18.10.2018 17:26
Написать программу, с помощью которой изображение будет разбиваться по пикселям и будет создаваться матрица andrey4515 Помощь студентам 2 08.01.2014 18:44
Точка с координатами х, у будет находиться в заштрихованной области, написать выражение которое будет истинным для данного рис. Polina S1 Помощь студентам 1 31.10.2013 16:38