Ребят помогите решить задачу на турбо паскале я уже всё пере пробовал наверно уже весь интернет перерыл, ужи пипец нигде не нашол, помогите пожалуйста решить эту задачу, завтра её надо сдать
сама задача звучит так "Дано предложение поменять местами максимальное слово с первым словом" ребята выручайте уже не знаю что делать
Другие языки программирования и технологии
Помогите решить задачу на Турбо паскале
> уже весь интернет перерыл
Зачем рыть интернет, если можно просто подумать и сделать все самому? Или у нас сейчас учат задания выполнять путем рытья интернетов? Тут делов то:
var
s, t: string;
c, fb, fl, b, l, mb, ml: integer;
i, f: boolean;
d: set of char;
begin
d := [' ', '.', ',']; { добавить разделителей по вкусу }
write('строка? ');
readln(s);
s := s + ' ';
for c := 1 to length(s) do begin
if not f and not (s[c] in d) then begin
fb := c;
f := true;
end
else if f and (s[c] in d) then begin
fl := c - fb;
break;
end;
end;
for c := 1 to length(s) do begin
if not i and not (s[c] in d) then begin
b := c;
i := true;
end
else if i and (s[c] in d) then begin
l := c - b;
if l > ml then begin
mb := b;
ml := l;
end;
i := false;
end;
end;
if f and (fb <> mb) then begin
t := copy(s, mb, ml);
delete(s, mb, ml);
insert(copy(s, fb, fl), s, mb);
delete(s, fb, fl);
insert(t, s, fb);
end;
writeln('результат: ', s);
end.
Зачем рыть интернет, если можно просто подумать и сделать все самому? Или у нас сейчас учат задания выполнять путем рытья интернетов? Тут делов то:
var
s, t: string;
c, fb, fl, b, l, mb, ml: integer;
i, f: boolean;
d: set of char;
begin
d := [' ', '.', ',']; { добавить разделителей по вкусу }
write('строка? ');
readln(s);
s := s + ' ';
for c := 1 to length(s) do begin
if not f and not (s[c] in d) then begin
fb := c;
f := true;
end
else if f and (s[c] in d) then begin
fl := c - fb;
break;
end;
end;
for c := 1 to length(s) do begin
if not i and not (s[c] in d) then begin
b := c;
i := true;
end
else if i and (s[c] in d) then begin
l := c - b;
if l > ml then begin
mb := b;
ml := l;
end;
i := false;
end;
end;
if f and (fb <> mb) then begin
t := copy(s, mb, ml);
delete(s, mb, ml);
insert(copy(s, fb, fl), s, mb);
delete(s, fb, fl);
insert(t, s, fb);
end;
writeln('результат: ', s);
end.
используй функцию length для подсчета колво символов в слове, плюс подпрограмма для сравнения длины слов, для этого проще сделать еще одну подпрограмму для занесения каждого отдельного слова в переменные, а затем их сравнивать, а затем когда каждое слово занесено в переменную, сравнено, максимально спокойной ставишь на первое место используя функцию > или <, ну или чтот в этом роде
Похожие вопросы
- Помогите решить задачу в турбо паскаль
- помогите решить задачу на турбо паскале
- Народ! Срочно! Помогие решить задач в Турбо Паскале!!!!Лучший ответ гарантирую!
- кто может решить задачу в турбо паскале, по двумерным массивам
- Помогите решить задачу на языке Паскаль. Найти сумму всех чётных чисел от 1 до 1000 (задачу решить 2 способами)
- Помогите решить задачу решение на Паскале
- Народ! Помогите решить задачи на языке паскаль. Очень срочно надо! Буду рада решению хотя бы одной из списка=)
- Помогите решить задачу по информатике ...паскаль
- помогите решить задачу с помощью турбо паскаля: Вывести все шестизначные «счастливые номера». Сколько их всего?
- Помогите решить задачи по Паскалю