Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
0 / 0 / 1
Регистрация: 12.08.2014
Сообщений: 59

Program2.pas(46) : Неизвестное имя 'healph'

05.09.2014, 18:24. Показов 3582. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
вот небольшая программа ,описан класс,переменные ,
но при выполнении ошибка Неизвестное имя... хотя я все описал,пожалуйста скажите че за фигня
Pascal
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
uses graphabc;
type monster=class
 
 
  procedure init(x_,y_,healph_,ammo_:word);
  procedure attack;
  procedure draw;
  procedure erase;
  procedure hit;
  procedure move(x_,y_:word);
private
 x,y:word;
 healph,ammo:word;
 color1:color;
 
 end;
 procedure monster.init(x_,y_,healph_,ammo_:word);
 begin
 x:=x_;y:=y_;
 healph:=healph_;
 ammo:=ammo_;
 color1:=clyellow;
 end;
 
 procedure monster.attack;
 begin
 if ammo=0 then exit;
 dec(ammo);
 setfontcolor(color1);
 textout(x+15,y,'Ba-bah!');
 end;
 
  procedure monster.draw;
 begin
 setpencolor(color1);
 textout(x,y,'@');
 end;
 
 procedure monster.erase;
begin
setpencolor(clwhite);textout(x,y,'@');
end;
 
procedure hit;
begin
if healph=0 then exit;
dec(healph);
if h=0 then begin setfontcolor(clred);draw;sleep(1);window.close;end;
attack;
end;
procedure move(x_,y_:word);
begin
if healph=0 then exit;
erase;
x:=x_;
y:=y_;
draw;
end;
 
 
var vasia:monster;
x,y:word;
g,gd:integer;
begin
vasia.init(10,100,10,10);
vasia.draw;
vasia.attack;
readln;
x:=110;
while x<200 do begin
vasia.move(x,x);inc(x,7);
vasia.hit;
sleep(200);
end;
readln;
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.09.2014, 18:24
Ответы с готовыми решениями:

Program2.pas(35) : Ошибка времени выполнения: Индекс находился вне границ массива
Почему паскаль выдает эту ошибку, если i перед ошибкой = n(границе столбцов), а дальше просто уменьшает i пока i &gt; 1??? Объясните, если...

Выдаёт ошибку: Program2.pas(9) : Нет перегруженной подпрограммы с такими типами параметров
program sdfsd; var b,x,y,a,k,stoi,moze,stoi2:real; begin writeln('Введите число'); readln(a); if...

Неизвестное имя
Здравствуйте, в программе, в разделе var указываю переменную логического (boolean) типа, в процедуре присваиваю ей значение, выдает:...

6
290 / 271 / 107
Регистрация: 10.06.2011
Сообщений: 696
05.09.2014, 18:53
Лучший ответ Сообщение было отмечено Ринат1999 как решение

Решение

Цитата Сообщение от Ринат1999 Посмотреть сообщение
procedure hit
заменить на procedure monster.hit;
0
0 / 0 / 1
Регистрация: 12.08.2014
Сообщений: 59
05.09.2014, 19:05  [ТС]
а почему ошибка то???
0
290 / 271 / 107
Регистрация: 10.06.2011
Сообщений: 696
05.09.2014, 19:12
потому что
Цитата Сообщение от Ринат1999 Посмотреть сообщение
Неизвестное имя
процедура вне класса не может видеть переменную в классе, помеченную как private
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33402 / 21512 / 8236
Регистрация: 22.10.2011
Сообщений: 36,913
Записей в блоге: 12
05.09.2014, 19:14
Ринат1999, потому что healph - это поле класса monster, а у тебя сейчас hit описана как глобальная функция, ничего про класс monster (и его содержимое) не знающая. Вот когда ты ее сделаешь методом того же класса - все будет нормально...
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
05.09.2014, 19:20
Лучший ответ Сообщение было отмечено Ринат1999 как решение

Решение

Цитата Сообщение от Ринат1999 Посмотреть сообщение
а почему ошибка то???
Неужели сам не видишь
Pascal
1
2
3
4
procedure monster.init(x_,y_,healph_,ammo_:word);
procedure monster.attack;
.......................................
procedure hit;???
0
0 / 0 / 1
Регистрация: 12.08.2014
Сообщений: 59
05.09.2014, 19:25  [ТС]
даааааа тооооочно!!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.09.2014, 19:25
Помогаю со студенческими работами здесь

Неизвестное имя 'textBox1'
Выдаёт ошибку, хотя я всё указал Unit Unit7; interface uses System, System.Drawing, System.Windows.Forms, Unit3; type ...

Неизвестное имя метки
Пишет ошибку: неизвестное имя 'smert'. Вроде код правильный - без меток программа работает. Мне надо перескочить код с рисованием фигуры...

Неизвестное имя LoadSound
Program Player; Uses Sounds, CRT; var n: integer; begin n:=LoadSound('D:\DMX - X Gon Give It To Ya'); PlaySound(n); ...

Неизвестное имя 'Media'
пытался воспроизвести музыку пишет-&quot;Program1.pas(2) : Неизвестное имя 'Media'&quot;что это значит?

Ошибка: Неизвестное имя 'textBoxA'
Почему пишет неизвестное имя 'textBoxA'? var q,w:string; qq,r:integer; begin r:=textBoxA.Text; q:=textBox5.Text; ...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru