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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.11.2013, 13:47   #11
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Энда одного в конце не хватает, да Edit1 и Edit2 эта фунция не распознает. И название Length не в дугу - зачем использовать системные имена? При этом еще length(D) в коде есть и явно системное - вообще полный абзац. Или рекурсивный вызов себя?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 15.11.2013 в 13:51.
Аватар вне форума Ответить с цитированием
Старый 15.11.2013, 13:59   #12
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

что на что мне нужно заменить, чтобы программа работала правильно?
nadyaH вне форума Ответить с цитированием
Старый 15.11.2013, 14:16   #13
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
function Length ( const SourceString : string ) : Integer;
var
 d:string;
 i:integer;
 o:String;
begin
 d:=edit1.Text;
 S:=D[1];
 for i:=1 to length(D) do begin
  if D[i]=S then O:=S;
   IF D[i]=S THEN o:=o+'.'
   else o:=o+D[i];
  if (D[i]=' ')and(D[i+1]<>' ') then S:=D[i+1];
 end;
 edit2.Text:=O;
END;
Только я не поймы всетки смысла сего кода...
Если и писать такое то:
Код:
function Length ( const SourceString : string ) : string;
var i:integer; c:char;
begin
 c:=SourceString[1];
 for i:=2 to Length(SourceString) do 
  if SourceString[i]=c then SourceString[i]:='.';
 Result:=SourceString;
END;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.11.2013, 15:32   #14
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

Код:
for i:=2 to Length(SourceString) do
в этой строке ошибку выдаёт
nadyaH вне форума Ответить с цитированием
Старый 15.11.2013, 15:41   #15
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

1) Вы назвали свою функцию Length, и в ней пытаетесь вызвать системную фук-к Length, без использования system - это идиотизм!

2)
Цитата:
const SourceString
И Вы пытаетесь менять эту строку - идиотизм #2..
Poma][a вне форума Ответить с цитированием
Старый 15.11.2013, 15:45   #16
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Виталий, но ТС сделала ошибку по незнанию, а Вы зачем её дублируете!?!?!?

Надя, Вам НЕЛЬЗЯ использовать имя Length в качестве имени вашей функции, потому что это имя СИСТЕМНОЙ функции. используйте любой другой допустимый синтаксисом языка идентификатор!

например:
Код:
function ReplaceFisrtCharEntrances( const SourceString : string ) : string;
var i:integer; 
begin
 result := SourceString;
 for i:=2 to Length(result) do 
  if  (result[i]=result[1]) then result[i]:='.';
END;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.11.2013, 15:58   #17
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

ваша программа не работает. тоже ошибку с end выдаёт
Код:
function ReplaceFisrtCharEntrances( const SourceString : string ) : string;
var i:integer;
begin
 result := SourceString;
 for i:=2 to Length(result) do
  if  (result[i]=result[1]) then result[i]:='.';
END;end.
nadyaH вне форума Ответить с цитированием
Старый 15.11.2013, 16:00   #18
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Вы зачем её дублируете!?!?!?
Потому что я хотел донести способ решения, я не дать повод для копипасте. Судя по последнему посту Надя так и не поняла как же правильно писать нужно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.11.2013, 16:06   #19
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

если честно не поняла что вы хотели до меня довести до сведения.
nadyaH вне форума Ответить с цитированием
Старый 15.11.2013, 16:10   #20
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
ваша программа не работает. тоже ошибку с end выдаёт
Ну если глазки протереть, потом напрячь зрение, то в конце функции можно заметить END;end. Ни какие извилинки в связи с этим не шевелятся?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дана строка, состоящая из русских слов, разделенных пробелами (одним или несколькими). Odinsoon Паскаль, Turbo Pascal, PascalABC.NET 0 24.04.2013 18:46
Задача делфи! Дана строка символов, состоящая из произвольных десятичных цифр, разделенных пробелами.Вывести четные числа строки ethic Помощь студентам 0 17.04.2013 22:08
Дана строка, состоящая из русских слов, набранных заглавными буквами и разделенных пробелами (одним или несколькими) NeLIN Общие вопросы C/C++ 1 12.12.2012 23:07
. Задана строка символов. состоящая из отдельных слов, разделенных пробелами. Преобразовать ее, оставив в ней только первые два Proskurina Паскаль, Turbo Pascal, PascalABC.NET 1 29.05.2012 19:35
дана строка символов ,разделённые пробелами(одним или несколькими) и не содержащие пробелов внутри себя,б Aktor1992 Паскаль, Turbo Pascal, PascalABC.NET 1 12.04.2011 22:19