Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 12.06.2012, 01:26   #1 (permalink)
iko200
Новичок
 
Регистрация: 12.06.2012
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Unhappy Подскажите, в чем проблема?

Изучил недавно тип String и функции для него... решил попробовать... В результате родилась простенькая програмка:

var x,y,z: string;
N: integer;
begin
writeln('Введите предложение');
read (x);
writeln('Введите заменяемую часть');
read (z);
writeln('Введите на что изменяется');
read (y);
N:=pos (z,x);
delete (x, n, length(z));
insert (y, x, N);
writeln(x);
end.

В теории должна была читать строку, находить заменяемую часть(знаю, что первую, я работаю над этим) и, собственно, заменять ее на выборочную... проблема в том, что 2-ой и 3-й Read паскаль начисто игнорирует!!! без них (через константы) все прекрасно работает, в других форматах тоже... с учителем полчаса мучался, так ничего и не поняли... Подскажет кто-нить добрый, в чем причина?))
iko200 вне форума   Ответить с цитированием

Старый 12.06.2012, 01:26
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Скорее всего в данных темах будет что то нужное для вас

Дальнобойщики 2
Подскажите УНЧ для 2ГД-36
Проблема - подскажите как найти файлы и ссылки с сайтов
Проблема: гаснет экран, подскажите....
Проблема при установке ОС. Подскажите!

Старый 12.06.2012, 09:07   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от iko200 Посмотреть сообщение
Подскажет кто-нить добрый, в чем причина?))
Подскажет.
В принципе, программа написана правильно, за одним исключением, а именно СЧИТЫВАТЬ СТРОКИ ОПЕРАТОРОМ Read(s) НЕЛЬЗЯ, ТОЛЬКО Readln(s).
Таким образом, вот полностью работающая программа. Подсказки можете заменить на русские обратно, у меня это связано с другой кодировкой кириллицы. Кроме того, желательно в самом конце добавить оператор Readln (пустой, без параметров), тогда выполнение программы приостановится и можно будет посмотреть на результат.
Код:
var
 x,y,z: string;
 N: integer;
begin    
 writeln('Enter the initial phrase:');
 readln(x);
 writeln('Enter the part to replace:');
 readln(z);
 writeln('Should be replaced by:');
 readln(y);
 N:=pos(z,x);
 delete(x,N,length(z));
 insert(y,x,N);
 writeln(x); 
 readln 
end.
Миниатюры
strings.jpg  
Vladimir_S вне форума   Ответить с цитированием
Старый 12.06.2012, 18:29   #3 (permalink)
iko200
Новичок
 
Регистрация: 12.06.2012
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от Vladimir_S Посмотреть сообщение
В принципе, программа написана правильно, за одним исключением, а именно СЧИТЫВАТЬ СТРОКИ ОПЕРАТОРОМ Read(s) НЕЛЬЗЯ, ТОЛЬКО Readln(s).
Вы гений! Спасибо вам огромное)
iko200 вне форума   Ответить с цитированием
Старый 12.06.2012, 18:51   #4 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от iko200 Посмотреть сообщение
Вы гений! Спасибо вам огромное)
Тот еще "гений". Но в любом случае - пожалуйста.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Метки
mistake, packal, ошибка, паскаль, помощь


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 20:29.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.