Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.03.2014, 14:01   #31
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Значит надо изменить объявление
Код:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
на
Код:
procedure TForm1.edt1KeyPress(Sender: TObject; var Key: Char);
, а
Код:
Edit2
на
Код:
edt2
Если ошибки - смотри, что у твоих Edit`ов указано в поле свойства Name
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 19.03.2014, 14:10   #32
TemaLapushka
Новичок
Джуниор
 
Регистрация: 18.03.2014
Сообщений: 28
По умолчанию

Цитата:
Сообщение от Vanta11a Посмотреть сообщение
Да ладно? Вот например ошибка

о чем тебе говорит? Ответил для себя? А теперь читай правильный ответ (выдели курсором) ниже:
Вообще первоначально эта программа рассчитана под GUI, т.е. программирование оконного интерфейса при помощи перетаскивания элементов. В данном случае на форму вытащено 2 TEdit и 1 TButton.
А ошибка говорит о том, что у тебя нет объекта с именем Edit2. Скорее всего, ты пытаешься собрать программу для консоли, что не подходит для данного кода.

Едем дальше. У тебя задача: найти позицию запятой в массиве. Что ты делаешь своим кодом - я не знаю, но он тупо не решает задачу. Вообще. Совсем. Тебе привели другой вариант.

В общем смотри еще матчасть по "графическому программированию" в Delphi. Конкретно: формы и элементы на форме.
так
хорошо
запустил
при вводе в эдит1,выводит "запятых нет"
в эдит1 нужно ведь цифры вводить?так?
TemaLapushka вне форума Ответить с цитированием
Старый 19.03.2014, 14:11   #33
TemaLapushka
Новичок
Джуниор
 
Регистрация: 18.03.2014
Сообщений: 28
По умолчанию

Цитата:
Сообщение от Vanta11a Посмотреть сообщение
Значит надо изменить объявление
Код:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
на
Код:
procedure TForm1.edt1KeyPress(Sender: TObject; var Key: Char);
, а
Код:
Edit2
на
Код:
edt2
Если ошибки - смотри, что у твоих Edit`ов указано в поле свойства Name
это я уже делал
выводило тоже самое
сейчас уже всё нормально
TemaLapushka вне форума Ответить с цитированием
Старый 19.03.2014, 14:11   #34
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
в эдит1 нужно ведь цифры вводить?так?
Чего хочешь вводи
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 19.03.2014, 14:12   #35
TemaLapushka
Новичок
Джуниор
 
Регистрация: 18.03.2014
Сообщений: 28
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Чего хочешь вводи
что бы не вводил
показывает в эдит2 "запятых нет"
естественно вводил что угодно с запятыми
TemaLapushka вне форума Ответить с цитированием
Старый 19.03.2014, 14:56   #36
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Покажи полностью свой код
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 19.03.2014, 14:56   #37
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

В 1й эдит нужно ввести строку (массив символов), в которой будешь искать запятую. Номер запятой в строке определиться по индексу элемента.
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 19.03.2014, 14:57   #38
TemaLapushka
Новичок
Джуниор
 
Регистрация: 18.03.2014
Сообщений: 28
По умолчанию

можете ещё раз
с чувством
с толком
с расстановкой
объяснить мне эту программу
почему после ввода рандомных символов среди которых есть запятая он пишет что запятых нет
TemaLapushka вне форума Ответить с цитированием
Старый 19.03.2014, 14:58   #39
TemaLapushka
Новичок
Джуниор
 
Регистрация: 18.03.2014
Сообщений: 28
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Покажи полностью свой код
var
Form1: TForm1;
s:array of char; //динамический массив символов
n:integer;//его длина
implementation

{$R *.dfm}
//заполнение массива
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
inc(n);//при вводе каждого символаувеличивается счетчик
setlength(s,n); //выделяем память под новый символв массиве
s[n-1]:=key;//записываем введенный символ в массив(на 1 мньше сем длина)
end;
//поиск первой запятой
procedure TForm1.Button1Click(Sender: TObject);
var i,k:integer;
begin
Edit2.Clear;
i:=0;//первый символ
k:=-1;//присваиваем к значение меньше 0
while(i<n)and(k=-1)do//пока не конец и не изменилось значение к
if s[i]=',' then k:=i //если запятая, запомним индекс
else inc(i); //иначе дальше
if k=-1 then Edit2.Text:='Нет запятых'//если не изменился, нет запятых
else Edit2.Text:='Первая запятая имеет номер '+inttostr(k+1); //иначе номер(на 1 больше чем индекс)
n:=0;//обнуляем массив, можно снова вводить другой
end;

end.

тот же код который написан ранее
TemaLapushka вне форума Ответить с цитированием
Старый 19.03.2014, 15:02   #40
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Ставьте точку останова на линию
Код:
else inc(i); //иначе дальше
и смотрите, какое значение у переменной i, переменной k и символа s[i]
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
запятая вместо точки в InputQuery Alkatras Общие вопросы Delphi 11 25.12.2014 11:33
запятая в строке Олег112 Помощь студентам 1 08.11.2012 22:52
Точка или запятая?! SWAT92Shtorm Общие вопросы Delphi 6 09.06.2011 11:22
Точкой и запятая! budda999 Microsoft Office Excel 6 18.08.2010 15:05
точка и запятая Владимир1988 Помощь студентам 2 10.11.2009 17:01