| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Функция с двумя разными аргументами возвращает одно значение

Функция с двумя разными аргументами возвращает одно значение

Ответ
Поиск в этой теме
Непрочитано 25.11.2008, 21:45 #1
Функция с двумя разными аргументами возвращает одно значение
Mozgunov
 
Начинающий проектировщик
 
Санкт-Петербург
Регистрация: 07.02.2008
Сообщений: 443

Ребят помогите разобраться функция с разными аргументами возвращает одно значение! В чём ошибка? Привожу 2 варианта. Результат один и тот же "45".

Код:
[Выделить все]
(setq rtr (/ (* (atan (/ 4000 3500)) 180.) pi) )
Код:
[Выделить все]
(setq rtr (/ (* (atan (/ 3500 3500)) 180.) pi) )
__________________
dmtools.ru
Просмотров: 2674
 
Непрочитано 25.11.2008, 21:53
#2
CB

Конструирование в области нефтеразведки
 
Регистрация: 10.02.2006
Гомель
Сообщений: 321


Код:
[Выделить все]
 
(setq rtr (/ (* (atan (/ 4000. 3500.)) 180.) pi) )
48.8141 
 
(setq rtr (/ (* (atan (/ 3500. 3500.)) 180.) pi) )
45.0
CB вне форума  
 
Автор темы   Непрочитано 25.11.2008, 21:55
#3
Mozgunov

Начинающий проектировщик
 
Регистрация: 07.02.2008
Санкт-Петербург
Сообщений: 443
<phrase 1=


Спасибо! А если эти числа в переменных? Как им поменять тип данных?
__________________
dmtools.ru
Mozgunov вне форума  
 
Автор темы   Непрочитано 25.11.2008, 21:56
#4
Mozgunov

Начинающий проектировщик
 
Регистрация: 07.02.2008
Санкт-Петербург
Сообщений: 443
<phrase 1=


или после переменной точку ставить?
__________________
dmtools.ru
Mozgunov вне форума  
 
Непрочитано 25.11.2008, 22:11
#5
CB

Конструирование в области нефтеразведки
 
Регистрация: 10.02.2006
Гомель
Сообщений: 321


Код:
[Выделить все]
(setq a 3000)
(float a)
3000.0
(* a 1.)
3000.0
CB вне форума  
 
Автор темы   Непрочитано 25.11.2008, 22:30
#6
Mozgunov

Начинающий проектировщик
 
Регистрация: 07.02.2008
Санкт-Петербург
Сообщений: 443
<phrase 1=


делаю так такая же ерунда.
(setq glugolvirt (/ (* (atan (/ (float glvirtvisota) (float glvirtshir) )) 180.) pi) )
__________________
dmtools.ru
Mozgunov вне форума  
 
Автор темы   Непрочитано 25.11.2008, 22:30
#7
Mozgunov

Начинающий проектировщик
 
Регистрация: 07.02.2008
Санкт-Петербург
Сообщений: 443
<phrase 1=


А если числа с точками на конце без переменных, то работает.
__________________
dmtools.ru
Mozgunov вне форума  
 
Непрочитано 25.11.2008, 23:35
#8
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844


вариант "помедленнее"
Код:
[Выделить все]
(setq value 100) (atof (VL-PRINC-TO-STRING value))
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 26.11.2008, 06:41
#9
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Зависит, откуда числа взялись.

В #1 они прописаны в программе и являются константами. Здесь самый простой вариант был показан в #2.

Если числа вводит пользователь, то надо применять соответствующие функции, например getreal.

Если числа берутся неизвестно откуда, то надо предусматривать преобразование. Варианты могут быть разные, например как в #8.

В любом случае к правильному типу данные надо приводить в момент их первого появления в программе.
ShaggyDoc вне форума  
 
Непрочитано 26.11.2008, 07:39
#10
CB

Конструирование в области нефтеразведки
 
Регистрация: 10.02.2006
Гомель
Сообщений: 321


>Mozgunov
Цитата:
делаю так такая же ерунда.
(setq glugolvirt (/ (* (atan (/ (float glvirtvisota) (float glvirtshir) )) 180.) pi) )
Такого быть не может...
Код:
[Выделить все]
(setq a 4000 b 3500)
(/ (* (atan (/ (float a) (float b) )) 180.) pi)
48.8141
CB вне форума  
 
Автор темы   Непрочитано 27.11.2008, 01:13
#11
Mozgunov

Начинающий проектировщик
 
Регистрация: 07.02.2008
Санкт-Петербург
Сообщений: 443
<phrase 1=


Всем спасибо! Заработало!
__________________
dmtools.ru
Mozgunov вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Функция с двумя разными аргументами возвращает одно значение

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
структурированный список Holon Программирование 22 11.09.2007 14:09