Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 06.03.2009
Сообщений: 14

Удалить в предложении все слова, имеющие символы цифр и распечатать получившееся предложение.

29.10.2010, 20:23. Показов 1657. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Удалить в предложении все слова, имеющие символы цифр и распечатать получившееся предложение.
Заранее спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.10.2010, 20:23
Ответы с готовыми решениями:

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

Напечатать все слова, имеющие заданное количество цифр, удалив перед печатью из таких слов все символы
Файлы и строки написал прогу которая находит слова, у которых имеется определенное количество цифр и если такие есть, то это слово...

Дано предложение, вывести все слова, имеющие чётную длину
1) Вввести с клавиатуры строку симврорв. Признак окончания ввода строка - нажатие клавиши "ввод". Программа должна определить...

12
AF
 Аватар для AF
49 / 48 / 21
Регистрация: 06.10.2010
Сообщений: 115
29.10.2010, 20:42
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
VAR
  s: STRING;
  i: BYTE;
BEGIN
  WRITELN('Enter text:');
  READLN(s);
  i := 1;
  WHILE i <= Length(s)
  DO
    BEGIN
      IF (s[i] >= '0') AND (s[i] <= '9')
      THEN
        BEGIN
          Delete(s, i, 1);
          Dec(i)
        END;
      Inc(i)
    END;
  WRITELN('Result text:');
  WRITELN(s);
  READLN
END.
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
29.10.2010, 20:50
AF, удалять надо слова, а не символы:
ввод: ab10 cd 20 e87k
вывод: cd
0
AF
 Аватар для AF
49 / 48 / 21
Регистрация: 06.10.2010
Сообщений: 115
29.10.2010, 21:05
Извиняюсь.
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
42
VAR
  s, Temp: STRING;
  i, j, a, b: BYTE;
  Exp: BOOLEAN;
BEGIN
  WRITELN('Enter text:');
  READLN(s);
  s := s + ' ';
  a := 1;
  i := 1;
  WHILE i <= Length(s)
  DO
    BEGIN
      IF s[i] = ' '
      THEN
        BEGIN
          b := i;
          Temp := Copy(s, a, b - a);
          IF Temp <> ''
          THEN
            BEGIN
              Exp := FALSE;
              FOR j := 1 TO Length(Temp)
              DO
                IF (Temp[j] >= '0') AND (Temp[j] <= '9')
                THEN
                  Exp := TRUE;
              IF Exp
              THEN
                BEGIN
                  Delete(s, a, b - a);
                  i := i - b + a
                END
            END;
            a := b + 1
        END;    
      Inc(i)
    END;
  WRITELN('Result text:');
  WRITELN(s);
  READLN
END.
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
29.10.2010, 21:14
чистые числа не удаляет
0
AF
 Аватар для AF
49 / 48 / 21
Регистрация: 06.10.2010
Сообщений: 115
29.10.2010, 21:26
Где-то косяк, фиксю

Добавлено через 9 минут
Работает корректно.
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
42
VAR
  s, Temp: STRING;
  i, j, a, b: BYTE;
  Exp: BOOLEAN;
BEGIN
  WRITELN('Enter text:');
  READLN(s);
  s := s + ' ';
  a := 1;
  i := 2;
  WHILE i <= Length(s)
  DO
    BEGIN
      IF s[i] = ' '
      THEN
        BEGIN
          b := i;
          Temp := Copy(s, a, b - a);
          IF Temp <> ' '
          THEN
            BEGIN
              Exp := FALSE;
              FOR j := 1 TO Length(Temp)
              DO
                IF (Temp[j] >= '0') AND (Temp[j] <= '9')
                THEN
                  Exp := TRUE;
              IF Exp
              THEN
                BEGIN
                  Delete(s, a, b - a);
                  i := i - b + a
                END
            END;
            a := i + 1
        END;    
      Inc(i)
    END;
  WRITELN('Result text:');
  WRITELN(s);
  READLN
END.
0
Эксперт по компьютерным сетямЭксперт Pascal/Delphi
 Аватар для TAVulator
4191 / 1292 / 237
Регистрация: 27.07.2009
Сообщений: 3,962
29.10.2010, 21:34
мой вариант решения данной задачи:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
var
 i: char;
Const
 S: string = 'ab10 cd 20 e87k 9 5rtrt rom 777';
Begin
 For i:='0' to '9' do
  While pos(i,S)<>0 do
   Begin
    if pos(i,S)<>length(S) then
     While (S[pos(i,S)+1]<>' ')and(pos(i,S)<>length(S)) do
      delete(S,pos(i,S)+1,1);
    if pos(i,S)<>1 then
     While (S[pos(i,S)-1]<>' ')and(pos(i,S)<>1) do
      delete(S,pos(i,S)-1,1);
    if pos(i,S)<>1 then
    delete(S,pos(i,S)-1,2) else
    delete(S,pos(i,S),2);
   End;
End.
По-моему более эргономичный вариант
2
AF
 Аватар для AF
49 / 48 / 21
Регистрация: 06.10.2010
Сообщений: 115
29.10.2010, 21:39
А у меня зато перед end'ами не стоят точки с запятой
0
0 / 0 / 0
Регистрация: 06.03.2009
Сообщений: 14
29.10.2010, 23:24  [ТС]
А можешь код объяснить?

Добавлено через 51 минуту
Можно этот код реализовать с 3 процедурами?
0
Эксперт по компьютерным сетямЭксперт Pascal/Delphi
 Аватар для TAVulator
4191 / 1292 / 237
Регистрация: 27.07.2009
Сообщений: 3,962
29.10.2010, 23:27
Цитата Сообщение от David_i Посмотреть сообщение
А можешь код объяснить?
чей?
Цитата Сообщение от David_i Посмотреть сообщение
Можно этот код реализовать с 3 процедурами?
можно.
0
0 / 0 / 0
Регистрация: 06.03.2009
Сообщений: 14
29.10.2010, 23:29  [ТС]
твой код)
а реализовать это можно просто разбить на процедуры? ничего кроме этого же дописывать не надо?Если надо дописывать, можешь помочь?)
0
Эксперт по компьютерным сетямЭксперт Pascal/Delphi
 Аватар для TAVulator
4191 / 1292 / 237
Регистрация: 27.07.2009
Сообщений: 3,962
30.10.2010, 01:01
David_i,
алгоритм:
1. находим цифру в тексте
2. удаляем все символы от этой цифры вправо до первого попавшегося пробела
3. удаляем все символы от этой цифры влево до первого попавшегося пробела
4. удаляем саму цифру и пробел рядом
5. переходим к п.1 до тех пор, пока не останется цифр в тексте.
Цитата Сообщение от David_i Посмотреть сообщение
а реализовать это можно просто разбить на процедуры?
я решил задачу понравившимся мне способом. задача решена, программа работает. наводить марафет программы мне не хочется. организацию ввода-вывода данных, разбивку на процедуры, функции, украшательства и т.п. делай сам. это не так сложно.
0
0 / 0 / 0
Регистрация: 06.03.2009
Сообщений: 14
30.10.2010, 01:19  [ТС]
Спасибо, все сделал!)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.10.2010, 01:19
Помогаю со студенческими работами здесь

Дано предложение. Определить все слова, которые начинаются с заданной буквы. Слова в предложении разделены пробелами
Дано предложение. Определить все слова, которые начинаются с заданной буквы. Слова в предложении разделены пробелами

Задано предложение, слова которого разделены одним или несколькими пробелами. Распечатать «в столбик» все слова, которые
Прошу вашей помощи 6. Задано предложение, слова которого разделены одним или несколькими пробелами. Распечатать «в столбик» все слова,...

Распечатать все слова нечетной длины, имеющие не менее двух букв «а»
Введена строка символов. Распечатать все слова нечетной длины, имеющие не менее двух букв «а». Также если не сложно несколько...

Дано предложение. Вывести все слова в предложении в противоположном порядке.
Дано предложение. Вывести все слова в предложении в противоположном порядке. Ответ вывести в новом окне.

Дано предложение.Удалить из него все символы с n-го по m-ый
Дано предложение.Удалить из него все символы с n-го по m-ый


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru