| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [Pascal] Задачи с функциями и процедурами |
| Автор: STRIKER221 3.11.2006, 16:11 |
| Z=(sign(X)+sign(Y))expX sign(x+y) (expX=Степень Х) Замечание: sign - фунция, возвращающая знак своего аргумента (например) sign (-6)=-1 Функция sign определяется так: Sign(a)=: -1 при а<0; 0 при а=0; 1 при а>0. Исходные данные: Результат: 1. X=5 Y=-5 Z=0 2. X=-7 Y=0 Z=1 |
| Автор: Kuvaldis 3.11.2006, 23:17 | ||
STRIKER221,
я не совсем понял, как здесь используется expX Ты ничего не пропустил в описании функции? |
| Автор: STRIKER221 3.11.2006, 23:32 |
| expX это степень в которую возводится (sign(X)+sign(Y)) |
| Автор: STRIKER221 6.11.2006, 13:02 |
| там за место sign* подставляется значение -1 ,0 или 1. Складываются, возводятся в степень и потом перемножаются. |
| Автор: Kuvaldis 6.11.2006, 18:29 | ||
STRIKER221,
|
| Автор: STRIKER221 6.11.2006, 20:36 | ||
А что делает эта часть???? |
| Автор: Kuvaldis 7.11.2006, 00:04 | ||
STRIKER221,
если степень числа - отрицательная, то по определению a ^ (-x) = 1 / a^x Мы в данной задаче не можем пользоваться стандартными функциями типа exp(), ln() так как основания у нас могут быть и отрицательные, что для данных функций противопоказано |
| Автор: STRIKER221 7.11.2006, 03:04 |
Спасибо |
| Автор: STRIKER221 7.11.2006, 14:49 | ||||
Какой командой добавить условие: когда сумма равна 0 выводить : Деление на 0 невозможно?
Это будет что-то типа:
Но надо не if а что? |
| Автор: Kuvaldis 7.11.2006, 15:43 | ||
STRIKER221,
|
| Автор: volvo877 8.11.2006, 01:39 | ||||||
| Kuvaldis, Ты чего это?
Вот такая реализация не будет проще читаться?
А Sign я бы вообще вот так написал: //------------------------------------------------------------------
|
| Автор: Kuvaldis 8.11.2006, 02:38 | ||||
volvo877,
У меня привычка код оформлять от С++ (основной язык для меня)
да... на самом деле проглядел. Спасибо. Не зря ведь говорят: посмешишь - людей насмешишь (задачка-то легкая P.S. Я тебе удивляюь и снимаю шляпу. Хоть и появляешься ты не часто, но всегда ОЧЕНЬ дельные советы даешь. В данном случае красивая реализация функции Sign() Так что думаю, что + ты заслужил |
| Автор: Мист 26.12.2008, 21:39 |
| [Pascal]Задачи с фунцыями и процедурами;(школьные задачи) Решите плизз))) №1 Найти все простые числа которые меньше 100 №2 Найти разложение на разложение на множители всех натуральных чисел з отрезка[a;b] |
| Автор: 2p0i 27.12.2008, 00:28 | ||||||||
Писал прямо в броузере, лень проверять
|
| Автор: volvo877 27.12.2008, 00:57 | ||||||||
В следующий раз лучше проверь... Во-первых, не
, а
|
| Автор: Мист 27.12.2008, 08:56 |
| Спосибо)))ток щас догоню как это с функцией сделать |