singlepost

Помогите доделать задачу (Паскаль) << На главную или назад  

Первое слово необходимо преобразовать во второе, используя наименьшее количество следующих действий:
1.удалений символа;
2.замен символа на любой другой.
Ваша программа должна
запросить исходное слово (до 20 символов), которое будет преобразовываться;
запросить слово, которое нужно получить;
для найденного самого короткого преобразования выполненного по правилам сообщить:
число удалений;
число замен;
для контроля слово, образовавшееся после выполнения всех удалений и слово-результат,
или сообщить, что преобразование невозможно.

Пример. Исходные данные: корова, свора. Ответ: удалений 1, замен 3, после удаления – коова, итог –свора.

2 случая я рассмотрела....с 3им проблемы...(там, где звёздочки, нужно вставить ещё несколько условий)

Program P3;
const
n=20;
var
a,b:string[n];
i,j,k:integer;
del1,fin:string[n];
del,ch:integer;
begin
writeln ('Vvedite nachalnoe slovo',a);
read(a);
writeln ('Vvedite konechnoe slovo',b);
read(b);
if length(a)<length(b) then
writeln ('Preobrazovanie nevozmozhno')
else
begin
if a=b then
ch:=0;
del1:=a;
fin:=b;
del:=0;
begin
for i:=1 to length(a) do
begin
if a[i]<>b[i] then
ch:=ch+1;
end;
end;
end;
if length(a)>length(b) then
del:=length(a)-length(b);
**************************************************************
writeln('Delete - ',del,', Change - ',ch,', After delete - ',del1,', Final - ',fin);
end.

71 ответов в теме “Помогите доделать задачу (Паскаль)”

Страницы: [1] 2 3 »

  1. 1
    Владимир Гордеев ответил:

    Держи

    http://nopaste.info/ed449ec85f.html

    А ты что, правда на басу играешь?

  2. 2
    Tanya Bass ответил:

    Большое спасибо)
    Да, правда)

  3. 3
    Владимир Гордеев ответил:

    Есть чем похвастаться?

  4. 4
    Tanya Bass ответил:

    Если Вы о стаже игры (не только на басу) – есть))
    А если о том, чего бы послушать, то в данный момент записанных вещей нет(

  5. 5
    Владимир Гордеев ответил:

    Я имел ввиду послушать.

    Я вообще до некоторого времени думал что басисток не бывает =).

    Даже спеллчекер говорит что не знает слов "басистка" "басисток".

  6. 6
    Tanya Bass ответил:

    Басистки бывааают)))
    И барабанщицы тоже))

  7. 7
    Денис Лисов ответил:

    Все хорошо, только вот алгоритм неверный, как мне кажется.

    Парочка контрпримеров:
    aaaaa -> bbb
    Должно быть 2 del 3 swaps, а программа что выдает?
    aaccbb -> aabb
    Должно быть 2 del 0 swaps, а программа что выдает?

  8. 8
    Tanya Bass ответил:

    Денис "Марсианин" Лисов, да, действительно, программа работает не очень правильно….
    в данный момент перерабатываю…))

  9. 9
    Денис Лисов ответил:

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

  10. 10
    Tanya Bass ответил:

    Я в программировании новичок)))
    Так что не особо знаю различные подходы к решению задач…

Страницы: [1] 2 3 »

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.