Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 26.12.2017, 20:41   #1
Shouldercannon
ПрофессионалФорумчанин
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Адрес: Пенза
Сообщений: 1,774
Репутация: 226

icq: 473732523
Вопрос Умножение и деление

Раньше не доводилось производить какие-то математические вычисления и теперь столкнулся с данной задачей.
Нужно сделать следующее: A = (B * C * D) / (E * F)
Реализация
Код:

EA.Text := FloatToStr((StrToInt(EB.Text) * StrToInt(EC.Text) * StrToInt(ED.Text)) / (StrToInt(EE.Text) * StrToInt(EF.Text)));

По идее правильно, но мучают сомнения.
Shouldercannon вне форума   Ответить с цитированием
Старый 26.12.2017, 20:46   #2
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 18,073
Репутация: 6385
По умолчанию

Ну правильно мучают. Где-то не сможет в integer преобразовать - получишь исключение. Или на 0 разделишь. Прикольные имена эдитов. Ваще-то еще один из возможных источников ошибок ))
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума   Ответить с цитированием
Старый 26.12.2017, 20:56   #3
Shouldercannon
ПрофессионалФорумчанин
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Адрес: Пенза
Сообщений: 1,774
Репутация: 226

icq: 473732523
По умолчанию

Так уже бомбит Integer из-за огромного числа. Нужен Int64. Имена Edit-ов так для примера, чтобы совпадение по буквам формулы было.
Shouldercannon вне форума   Ответить с цитированием
Старый 26.12.2017, 21:03   #4
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 18,073
Репутация: 6385
По умолчанию

StrToInt64
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума   Ответить с цитированием
Старый 26.12.2017, 21:31   #5
Shouldercannon
ПрофессионалФорумчанин
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Адрес: Пенза
Сообщений: 1,774
Репутация: 226

icq: 473732523
По умолчанию

Запоролся на числах с запятой, во что их помещать для вычислений?
A = (458 * 17 * 1000) / (167,587 * 12)
Shouldercannon вне форума   Ответить с цитированием
Старый 26.12.2017, 21:49   #6
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 18,073
Репутация: 6385
По умолчанию

Не в Integer же. Там куча типов с плавающей точкой и StrToFloat. Если decimalseparator запятая, то съест
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 26.12.2017 в 22:07.
Аватар вне форума   Ответить с цитированием
Ответ

Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Деление, умножение, суммирование OldStile Помощь студентам 0 22.03.2015 01:05
Умножение и деление danil123 Общие вопросы Delphi 7 03.02.2013 13:41
Переменные и массивы; умножение и деление kjrjgsnjd Assembler 0 22.10.2012 21:32
ВЫчитание, умножение и деление массивов на С++ Flood Помощь студентам 2 15.05.2010 16:54
Умножение и деление StiTch_Parazit Помощь студентам 10 20.05.2008 14:32


05:23.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru