Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


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

Цитата:
Сообщение от Zont Посмотреть сообщение
Вот программа, полностью соответствует Вашим объяснениям, но без массива. Надеюсь кому-нибудь пригодится.
Хорошо сделано. Поздравляю. Правда... не до конца отлажено. Например, у Вас при обработке цепочек вида X-Y-Z средний символ просто выпадает. Но это легко поправимо.
Vladimir_S вне форума   Ответить с цитированием

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

Ваша проблема будет решаться значительно легче, если ознакомиться с похожими темами

Помогите найти ошибку в программе
Задача на массивы, Pascal. Помогите найти ошибку
Помогите найти ошибку
Не могу найти ошибку в программе. Паскаль

Старый 31.05.2011, 19:18   #12 (permalink)
Zont
Member
 
Регистрация: 23.05.2011
Сообщений: 12
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Спасибо.

Такой вариант даже не рассматривала.
В принципе, не хотите рассказать, что именно необходимо подправить? (:
Чисто для себя интересно.
Zont вне форума   Ответить с цитированием
Старый 31.05.2011, 20:57   #13 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Zont Посмотреть сообщение
Спасибо.

Такой вариант даже не рассматривала.
В принципе, не хотите рассказать, что именно необходимо подправить? (:
Чисто для себя интересно.
Да пожалуйста! Просто Вы тут накрутили много лишнего. Меньше, правда, чем я в своём варианте, но всё же. Во всяком случае, функции Pred и Succ тут вовсе "ни к селу, ни к городу". Всё гораздо проще:
Код:
program az;
var
 s,s2,s3:String;
 i:Integer;
 ch:Char;
begin
 writeln ('введите строку:');
 readln (s);
 s2:='';
 for i:=2 to length(s)-1 do
  if s[i]='-' then
   begin
    s3:='';
    for ch:=S[i-1] to S[i+1] do s3:=s3+ch;
    s2:=s2+s3;
   end;
 writeln(s2);
 readln
end.
Vladimir_S вне форума   Ответить с цитированием
Старый 31.05.2011, 21:41   #14 (permalink)
Zont
Member
 
Регистрация: 23.05.2011
Сообщений: 12
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Хм...и правда.
Но может быть препод их потребовал, дабы удостовериться в знании этой темы.

ps теперь, когда случай x-y-z, выдает xyyz (:
Zont вне форума   Ответить с цитированием
Старый 31.05.2011, 21:57   #15 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Zont Посмотреть сообщение
теперь, когда случай x-y-z, выдает xyyz (:
Ну да, я так и подразумевал, а что - неправильно?
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 31.05.2011, 22:00   #16 (permalink)
Zont
Member
 
Регистрация: 23.05.2011
Сообщений: 12
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

У нас задача восполнить недостающий символ.
А если он будет восполняться таким образом, нарушая алфавит, что же в этом хорошего?)
Я думала будет выдавать "xyz", таким образом показывая, что нет пропущенного символа в ряду.

Спасибо, Владимир (:
Zont вне форума   Ответить с цитированием
Старый 31.05.2011, 22:06   #17 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Zont Посмотреть сообщение
Я думала будет выдавать "xyz", таким образом показывая, что нет пропущенного символа в ряду.
Гм... но тогда в чем смысл записи "y" в записи x-y-z? Такой ответ (xyz) получается при введении простого x-z. В общем, в условии некоторый туман IMHO.
Vladimir_S вне форума   Ответить с цитированием
Старый 01.06.2011, 00:13   #18 (permalink)
Zont
Member
 
Регистрация: 23.05.2011
Сообщений: 12
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Ну может быть.
Просто мало ли человек, который вводит ряд, не знает точный порядок символов, и соответственно программа должна ему выдать, что не было ошибки.

Короче не суть, все это доп. заморочки, все и так отлично (:
Zont вне форума   Ответить с цитированием
Старый 07.06.2011, 00:41   #19 (permalink)
Zont
Member
 
Регистрация: 23.05.2011
Сообщений: 12
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

program az;
var s, s2:String;
i:Integer;
ch:Char;
begin
writeln ('ââåäèòå çàïèñü:');
readln (s);
s2:=s[1];
for i:=2 to length(s)-1 do
if s[i]='-' then
for ch:=succ(S[i-1]) to pred(S[i+1]) do
s2:=s2+ch
else s2:=s2+s[i];
s2:=s2+S[i+1];
writeln (s2);
end.

так правильнее
все варианты учитываются
a-b-c
a-g12345f-o-z
Zont вне форума   Ответить с цитированием
Ads

Яндекс

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


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

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




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

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