Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/22: Рейтинг темы: голосов - 22, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 44
1

В строке перевернуть четные слова и удалить нечетные

06.03.2011, 13:15. Показов 4081. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В строке перевернуть четные слова и удалить нечетные. Не использую при этом процедуры.
Программа правильная, она прекрасно работает,НО нужно ее немного видоизменить.
1)Пробел нужно найти при помощи функции POS.
2)Символы нужно поменять местами по length div2.
Заранее спасибо всем откликнувшимся.


Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
program strs;
var s:string;
    buf:char;
    i,j,ii,jj:integer;
    flag:boolean;
begin
 readln(s);
 j:=1;
 i:=1;
 flag:=true;
 insert(' ',s,length(s)+1);
 while i<=length(s) do
  begin
       if (s[i]=' ') and (flag=true) then
          begin
               delete(s,j,i-j);
               flag:=false;
               i:=j;
          end
       else
       if (s[i]=' ') then
       begin
        flag:=true;
        ii:=i;
        jj:=j;
  while (jj<ii) do
   begin
   buf:=s[ii];
   s[ii]:=s[jj];
   s[jj]:=buf;
   ii:=ii-1;
   jj:=jj+1;
   end;
        j:=i;
       end;
       i:=i+1;
  end;
  delete(s,1,1);
  writeln(s);
  readln;
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.03.2011, 13:15
Ответы с готовыми решениями:

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

Написать программу, меняющую местами все четные и нечетные слова в строке
Задана строка символов , содержащая два или более слов ,разделенных пробелами.Написать программу...

Поменять в строке четные / нечетные буквы
Всем привет! Помогите исправить модуль, который меняет парные и непарные буквы в строке. unit...

Удалить четные по порядку слова в входной строке

6
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
06.03.2011, 13:26 2
Цитата Сообщение от dander Посмотреть сообщение
Пробел нужно найти при помощи функции POS.
Тогда нужно будет вводить дополнительную строку для записи, из исходной слова придется все удалять.
Цитата Сообщение от dander Посмотреть сообщение
Символы нужно поменять местами по length div2.
Выделяем четное слово в строку s1
Pascal
1
2
3
4
5
6
for i:=1 to length(s1) div 2 do
 begin
  buf:=s1[i];
  s1[i]:=s1[length(s1)-i+1];
  s1[length(s1)-i+1]:=buf;
 end;
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 44
06.03.2011, 13:32  [ТС] 3
Если не трудно, можете написать полностью правильную программу. А то боюсь сделаю не то и потрачу еще больше Вашего времени.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
06.03.2011, 13:44 4
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
uses crt;
var s,s1,s2:string;
    c:char;
    i,n:byte;
begin
clrscr;
writeln('Введите строку, слова отделены одним пробелом:');
readln(s);
s:=s+' ';
s2:='';
n:=0;
while pos(' ',s)>0 do
 begin
  s1:=copy(s,1,pos(' ',s)-1);
  n:=n+1;
  if n mod 2=0 then
   begin
    for i:=1 to length(s1) div 2 do
     begin
      c:=s1[i];
      s1[i]:=s1[length(s1)-i+1];
      s1[length(s1)-i+1]:=c;
     end;
    s2:=s2+s1+' ';
   end;
  delete(s,1,pos(' ',s));
 end;
delete(s2,length(s2),1);
write(s2);
readln
end.
1
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 44
06.03.2011, 13:51  [ТС] 5
Спасибо Вам большое.
0
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
20.05.2012, 15:35 6
А как просто слова вывести в обратном порядке через пробел? Что нужно убрать?
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
20.05.2012, 16:32 7
Цитата Сообщение от Ella17 Посмотреть сообщение
Что нужно убрать?
Практически все и снова написать, но уже по другому.
0
20.05.2012, 16:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.05.2012, 16:32
Помогаю со студенческими работами здесь

Перевернуть все слова в строке
Структурированные типы данных (строковый тип) Ьтасипан уммаргорп адовереп йоннадаз икортс оп...

Напечатать в первой строке нечетные, во второй - четные числа файла
Дан файл, содержащий числа. Напечатать в первой строке нечетные, во второй четные

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

В символьной строке удалить все нечетные числа
В символьной строке удалить все нечетные числа, а четные числа взять в круглые скобки (например:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru