Форум программистов, компьютерный форум, киберфорум
Lazarus
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/40: Рейтинг темы: голосов - 40, средняя оценка - 4.60
Мишка Косолапый :)
284 / 254 / 86
Регистрация: 15.02.2012
Сообщений: 1,511
1

Написание собственной процедуры

07.03.2012, 07:33. Показов 7452. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Конечно чуствуется очень глупый вопрос задам, но всеже нужно...

Дан оператор if.
Нужно сделать так чтобы при его исполнении проводилась процедура. Которую я сам бы мог назвать и стартовать её тогда когда выполнялось чтонибудь. Или просто кликом по кнопке.

Добавлено через 13 часов 35 минут
Ну помогите срочно... Чтобы написать процедуру а потом в другой процедуре написать start 1 процедура и она начала действовать. чтобы по 100 раз код не переписывать
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.03.2012, 07:33
Ответы с готовыми решениями:

Написание собственной ОС
Доброго времени суток! Задался вопросом написать свою ОС на каком-либо языке высокого уровня. Думаю...

Написание собственной функции
Упрощенная задача из книги Дейтла. За стоянку до 3-х часов парковочный гараж запрашивает плату...

Написание собственной поисковой системы
Вот решили с другом написать поисковую систему типо рамблера. Но для начала хотим написать хотя бы...

Написание собственной ОС, Антивируса и компилятора
Привет всем. решили с друзьями изучить C и написать собственную ОС(на подобии KolibriOS на асме),...

8
NPC
152 / 146 / 22
Регистрация: 10.01.2012
Сообщений: 390
07.03.2012, 15:37 2
Напишите процедуру и запускайте её как только if будет true ... ...
... Вы что шутите?

В interface (он к стати называется раздел открытых описаний) пишите
Pascal
1
procedure Start1(<входные данные>);

В implementation (он к стати называется раздел скрытых описаний) пишите
Pascal
1
2
3
4
procedure Start1(<входные данные>);
begin
<Тело процедуры>
end;
Это вопрос к учебнику а не к форуму ЭТО ГРАММАТИКА ЯЗЫКА!!!
1
Мишка Косолапый :)
284 / 254 / 86
Регистрация: 15.02.2012
Сообщений: 1,511
07.03.2012, 18:32  [ТС] 3
Ну уж извиняйте. По мне легче спросить чем найти..
Щас проверю на работоспособность... Если что обращусь за более растолкованным ответом.

Добавлено через 1 минуту
Я процедуру назову vvv и можно же назвать её так? Или процедура названа 1 а Start это команда?

Добавлено через 8 минут
Так, ну вот что он пишет:
procedure v;
begin
q1:=random(31) + 1;
Label1.top:=(random(80) + 40) * (-1);

Добавлено через 1 минуту
Выделяет красную строчку и не собирается, но такой же код в прошлых процедурах работал на 5+

Добавлено через 1 минуту
identifier not found Label1.
0
NPC
152 / 146 / 22
Регистрация: 10.01.2012
Сообщений: 390
08.03.2012, 00:36 4
Легче всё же прочитать учебник

Имя процедуры может содержать буквы латиницы и цифры, причём цифра не может быть первым символом имени. Заглавные и строчные буквы равнозначны.


Цитата Сообщение от zuxa-zuxa Посмотреть сообщение
identifier not found Label1.
Вот так скорей всего будет работать...
Pascal
1
Form1.Label1.top:=(random(80) + 40) * (-1);
Ваша функция и не слыша о каком то там объекте Label1, поэтому надо указывать его точное место. Если реализовать процедуру как метод класса TForm1 то будет работать и в вашем варианте...
...только не спрашивайте как это сделать, читайте учебник. Если не читать учебников и пособий, а руководствоваться только прикладными задачами то рост навыков будет очень ограничен. Вы не будете знать инструментов и алгоритмов выходящих за рамки решенных задач. То есть Ваш кругозор как созидателя будет ограничен. Хороший рост прикладных решений, их аккуратность и правильность, изначально должны быть подкреплены приростом чистого знания об используемом объекте и его окружении...

В общим читайте книжки
1
Мишка Косолапый :)
284 / 254 / 86
Регистрация: 15.02.2012
Сообщений: 1,511
08.03.2012, 13:50  [ТС] 5
Дак вот в чем дело то.... Книжек в интернете нету. А вот эта то что дана на форуме там чепопало....

Добавлено через 10 минут
Ну всеравно че попало не работает...
Delphi
1
 if (k1=81) and (label1.top>170) and (label1.top<218) and (q1=1) then procedure v1;
Ну вот че оно?
Выше вон есть процедура:
Delphi
1
2
procedure v1;
begin
0
NPC
152 / 146 / 22
Регистрация: 10.01.2012
Сообщений: 390
08.03.2012, 23:08 6
Попробуйте всё же почитать книжку с начала с консольных приложений и основных алгоритмов и до конца. Это потребует в итоги сэкономит много времени которое вы потратите на вопросы о каждой незнакомой вам конструкции языка.
1
Мишка Косолапый :)
284 / 254 / 86
Регистрация: 15.02.2012
Сообщений: 1,511
09.03.2012, 17:14  [ТС] 7
Не... Меня учитель учит... А на форуме ускоряю учебу... Чему на уроке не успеваю...
Пока что вот че, подскажи...
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
procedure nnk;
begin
nk1:=nk1 + 1;
nk2:=nk1 - (p / r);
Form1.Label14.caption:='Неверно нажатых клавиш: ' + FloatToStr(nk1);
end; 
 
 
 
  if k1=81 then nnk;
  if k1=65 then nnk;
  if k1=90 then nnk;
  if k1=87 then nnk;
  if k1=83 then nnk;
  if k1=88 then nnk;
  if k1=69 then nnk;
  if k1=68 then nnk;
  if k1=67 then nnk;
  if k1=82 then nnk;
  if k1=70 then nnk;
  if k1=86 then nnk;
  if k1=84 then nnk;
  if k1=71 then nnk;
  if k1=66 then nnk;
  if k1=89 then nnk;
  if k1=72 then nnk;
  if k1=78 then nnk;
  if k1=85 then nnk;
  if k1=74 then nnk;
  if k1=77 then nnk;
  if k1=73 then nnk;
  if k1=75 then nnk;
  if k1=188 then nnk;
  if k1=79 then nnk;
  if k1=76 then nnk;
  if k1=190 then nnk;
  if k1=80 then nnk;
  if k1=186 then nnk;
  if k1=219 then nnk;
  if k1=222 then nnk;
  if k1=221 then nnk;
Не собирается, ошибку пишит...
0
NPC
152 / 146 / 22
Регистрация: 10.01.2012
Сообщений: 390
11.03.2012, 10:26 8
Цитата Сообщение от zuxa-zuxa Посмотреть сообщение
Pascal
1
if k1=81 then nnk; if k1=65 then nnk; if k1=90 then nnk; if k1=87 then nnk; if k1=83 then nnk; if k1=88 then nnk; if k1=69 then nnk; if k1=68 then nnk; if k1=67 then nnk; if k1=82 then nnk; if k1=70 then nnk; if k1=86 then nnk; if k1=84 then nnk; if k1=71 then nnk; if k1=66 then nnk; if k1=89 then nnk; if k1=72 then nnk; if k1=78 then nnk; if k1=85 then nnk; if k1=74 then nnk; if k1=77 then nnk; if k1=73 then nnk; if k1=75 then nnk; if k1=188 then nnk; if k1=79 then nnk; if k1=76 then nnk; if k1=190 then nnk; if k1=80 then nnk; if k1=186 then nnk; if k1=219 then nnk;
Это что за безобразие? О_о Оператор выбора что ли отменили?
Уже прочитали бы книжку

Где ошибка то?
1
Мишка Косолапый :)
284 / 254 / 86
Регистрация: 15.02.2012
Сообщений: 1,511
11.03.2012, 14:50  [ТС] 9
Уже решил проблему она состоялась в том что процедура nnk содержала ошибку. То что там я integer число делил... Исправил и все заработало.
0
11.03.2012, 14:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.03.2012, 14:50
Помогаю со студенческими работами здесь

Создание собственной процедуры
что уже только не делал, в одном юните, не работает, подключал другой, тоже не работает, видите как...

Вызов функции из собственной процедуры
Всем доброго времени суток! Не нашёл раздела под fasm, пишу здесь. Вообщем пишу некую процедуру, в...

Вызов собственной процедуры с другой формы
Есть несколько форм, на 1-й процедура виду: procedure adddd; Begin End; На второй...

Удаление массива кнопок из собственной процедуры
У динамической кнопки есть процедура, которая удаляет все динамические кнопки, включая себя. При...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru