![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Lis |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 23 Пол: Мужской Реальное имя: Sergey Репутация: ![]() ![]() ![]() |
Провести вычисления. Необходимые для вычислений функции (факториал, возведение в степень и т.д.) описать в модуле.
Вот есть пример кода из учебного пособия: Описать модуль, содержащий функцию вычисления n!. Код unit MyUnit; interface {раздел объявлений} function f(n:Integer):Longint; implementation {раздел реализации} function f(n: Word): Longint; var i: Integer; {параметр для организации цикла} Result: Longint; {вспомогательная переменная используемая как резуль-тат вычислений} begin Result:=1; {0!=1} for i:= 1 to n do Result:= Result*i; f:= Result; {формирование результата выполнения функции} end; begin {раздел инициализации} … end.{конец модуля} Тут моя программа, условие прикреплено ниже картинкой. Код Unit MyUnit1; interface function f(a,b,c:real):real; implementation function f(a,b,c:real):real; begin f:=(2*a-b-sin(c))/(5+abs(c)); end; begin end. Подскажите пожалуйста что нужно сделать чтоб ее запустить, чтоб она работала, до меня так и не доходит.. Нужно еще вроде какой то файл создать. Пишет ошибку при запуске Ctrl + F9 Error: Cannot run a unit нажимаю Ок и ничего не происходит. Сообщение отредактировано: Lis - 2.07.2010 0:27 Эскизы прикрепленных изображений ![]() |
![]() ![]() |
Unconnected |
![]()
Сообщение
#2
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Цитата Тут моя программа, условие прикреплено ниже картинкой. Это не программа, ты будто ещё раз юнит пишешь. Сохрани юнит куда нужно, потом создай новый проект и в Uses напиши имя модуля, а потом можешь вызывать функции, которые в нём есть, обычным способом. И ещё, почему ты передаёшь в функцию a,b и с? Они тебе известны, их можно записать внутри функции в виде констант. Передавать надо то, что ещё неизвестно и будет дано, то есть s и t. Сообщение отредактировано: Unconnected - 2.07.2010 0:32 -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Lis |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 23 Пол: Мужской Реальное имя: Sergey Репутация: ![]() ![]() ![]() |
извиняюсь за мою тупость, но я не понимаю о чем речь..
то есть мне нужно создать новый проект в Turbo Pascal, а затем что? нужно написать одну строку чтоль: "Uses myunit1" ? А вас не затруднит помочь исправить, насчет a,b,c? Сообщение отредактировано: Lis - 2.07.2010 0:38 |
Unconnected |
![]()
Сообщение
#4
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Про входные параметры беру слова обратно, надо действительно передавать a,b,c, тормознул я. Модуль будет выглядеть примерно так:
unit math; Далее сохраняешь файл и жмёшь Compile->Build (не забудь в опциях проверить, что установлено Destination Disk). На выходе получишь TPU-файл модуля. Потом создаёшь ещё одну программу, такого содержания: uses math; , сохраняешь, в папку с ней кидаешь свой модуль (у меня он назывался math.tpu), компилируешь.. -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Lis |
![]()
Сообщение
#5
|
Новичок ![]() Группа: Пользователи Сообщений: 23 Пол: Мужской Реальное имя: Sergey Репутация: ![]() ![]() ![]() |
Цитата Далее сохраняешь файл и жмёшь Compile->Build (не забудь в опциях проверить, что установлено Destination Disk). На выходе получишь TPU-файл модуля. В опциях поставил Destination Disk, затем нажал Compile->Build, а он мне ошибку (там даже путь то не мой какой то) Вобщем у меня все через ж*пу... если закрыть паскаль, и двойным щелчком запустить файл math.pas (при условии что его открывать с помощью TPC.EXE ), то создается TPU, далее я делаю второй файл, сохраняю его, закрываю паскаль, так же двойным щелчком его запускаю, создается файл с расширением *.exe его запускаю и там вроде как выводится нужный результат "120".. Спасибо! мне еще пару примеров так же нужно сделать, не поможете? Сообщение отредактировано: Lis - 2.07.2010 10:49 |
Lapp |
![]()
Сообщение
#6
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
а он мне ошибку (там даже путь то не мой какой то) Если хочешь получить помощь, пиши, какая ошибка, точно. Расплывчатые "там даже путь не мой" прибереги для телепатов.Цитата еще пару примеров так же нужно сделать, не поможете? Странный вопрос. Никаких официальных лимитов на помощь у нас нет. Только если они на другую тему, то создавай новые темы и проследи, чтоб все было в соответствии с Правилами (как Форума, так и раздела).Добавлено через 2 мин. Да, и еще: используй правильные тэги (правила раздела, п.2) -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Lis |
![]()
Сообщение
#7
|
Новичок ![]() Группа: Пользователи Сообщений: 23 Пол: Мужской Реальное имя: Sergey Репутация: ![]() ![]() ![]() |
Если хочешь получить помощь, пиши, какая ошибка, точно. Расплывчатые "там даже путь не мой" прибереги для телепатов. Странный вопрос. Никаких официальных лимитов на помощь у нас нет. Только если они на другую тему, то создавай новые темы и проследи, чтоб все было в соответствии с Правилами (как Форума, так и раздела). Спасибо, да все хорошо, с этой я разобрался, все работает. Мне еще нужно две так же сделать, они на эту же тему. Тогда я прикреплю их сюда. Сообщение отредактировано: Lis - 2.07.2010 12:14 Эскизы прикрепленных изображений ![]() |
Unconnected |
![]()
Сообщение
#8
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Цитата его запускаю и там вроде как выводится нужный результат "120".. Спасибо! Если бы ты повнимательнее посмотрел на код, то увидел бы, что после вывода 5! программа запрашивает ещё s и t и считает по второй функции.. ;) Задание №5 я где-то уже видел. Min в задании №5 - я так понимаю, функция нахождения минимального числа из двух данных? Сможешь организовать сравнение двух параметров и по аналогии добавить функцию в модуль? Сообщение отредактировано: Unconnected - 2.07.2010 12:52 -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Lis |
![]()
Сообщение
#9
|
Новичок ![]() Группа: Пользователи Сообщений: 23 Пол: Мужской Реальное имя: Sergey Репутация: ![]() ![]() ![]() |
вот что то мне сделали к 5 задаче, я в математике вообще не шарю(
unit myunit; Сообщение отредактировано: Lis - 2.07.2010 12:52 |
Unconnected |
![]()
Сообщение
#10
|
![]() mea culpa ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
И это у тебя компилируется? Паскаль так просто не умеет в степень возводить, только в квадрат (и в 0.5).
![]() Сообщение отредактировано: Unconnected - 2.07.2010 12:57 -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
sheka |
![]()
Сообщение
#11
|
![]() Я. ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: ![]() ![]() ![]() |
Unconnected, ^ - Указатель, указывает в какую степень надо поднести
![]() x^n = exp(n*ln(x)); Сообщение отредактировано: sheka - 2.07.2010 13:02 |
Lis |
![]()
Сообщение
#12
|
Новичок ![]() Группа: Пользователи Сообщений: 23 Пол: Мужской Реальное имя: Sergey Репутация: ![]() ![]() ![]() |
блин ну тогда все потеряно
![]() ![]() |
TarasBer |
![]()
Сообщение
#13
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
А если икс отрицательное? Или ноль?
-------------------- |
![]() ![]() |
![]() |
Текстовая версия | 23.06.2025 9:23 |