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

Дана непустая последовательность слов из строчных русских букв...

03.05.2009, 13:58. Показов 5578. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток Вам!!!Столкнулся с проблемой решения данной задачи.
Дана непустая последовательность слов из строчных русских букв; между со-седними словами - запятая, за последним словом - точка. Напечатать в алфавитном порядке:
все гласные буквы, которые входят в каждое слово; все согласные буквы, которые не входят ни в одно слово .
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.05.2009, 13:58
Ответы с готовыми решениями:

Дана непустая последовательность слов из строчных русских букв
Всем доюрый вечер!!!))) Дали задачу на решение множеств, у меня есть образец примерной задачи, тока я не могу переделать!!!Вот условие: ...

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

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

5
Посланник моего господина
111 / 106 / 52
Регистрация: 02.05.2009
Сообщений: 181
03.05.2009, 15:51
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
procedure Task;
const t1:array[1..8] of char = ('а','е','и','о','у','э','ю','я');
const t2:set of char = ['а','е','ё','и','о','у','э','ю','я'];
var s,t,r:string;
i:integer;
begin
readln(s);
i:=pos('.',s);
delete(s,i,length(s)-i+1);
s:=s+',';
t:=s;
for i:=1 to 8 do {for each char}
  begin
    while pos(',',s)<>0 do
      if pos(t1[i],copy(s,1,pos(',',s)))<>0 then delete(s,1,pos(',',s)) else break;
    if s='' then write(t1[i]);
  end;
s:=t;
for i:=ord('а') to ord('я') do {for each char}
  if not(chr(i) in t2) then 
  begin
    while pos(',',s)<>0 do
      if pos(chr(i),copy(s,1,pos(',',s)))=0 then delete(s,1,pos(',',s)) else break;
    if s='' then write(chr(i));
  end;
end;
Что-то в таком духе. Возможны ошибки, проверено на паре тестов.
1
0 / 0 / 0
Регистрация: 26.04.2009
Сообщений: 7
05.05.2009, 20:14  [ТС]
Messenger of G. Нет не работает он выводит все гласные буквы, а потом все согласные и то каждый раз при нажатие Enter с новой строчкой.....еще иероглифы идут. А переменные t и r к чему там? Да и еще вопрос pos как я понял позиция?
0
Посланник моего господина
111 / 106 / 52
Регистрация: 02.05.2009
Сообщений: 181
05.05.2009, 20:54
Там присутствует ошибка. Исправленный вариант протестирован в соответствии с условием задачи.
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
procedure Task;
const t1:array[1..6] of char = ('a','e','i','o','u','y');
const t2:set of char = ['a','e','i','o','u','y'];
var s,t,r:string;
i:integer;
begin
readln(s);
i:=pos('.',s);
delete(s,i,length(s)-i+1);
s:=s+',';
t:=s;
for i:=1 to 6 do {for each char}
  begin
    while pos(',',s)<>0 do
      if pos(t1[i],copy(s,1,pos(',',s)))<>0 then delete(s,1,pos(',',s)) else break;
    if s='' then write(t1[i]);
    s:=t;
  end;
write(' ');
for i:=ord('a') to ord('z') do {for each char}
  if not(chr(i) in t2) then
  begin
    while pos(',',s)<>0 do
      if pos(chr(i),copy(s,1,pos(',',s)))=0 then delete(s,1,pos(',',s)) else break;
    if s='' then write(chr(i));
    s:=t;
  end;
end;
 
begin
Task;
readln;
end.
Пример входного теста:
Code
1
eax,code,internet.
Результат:
Code
1
e bfghjklmpqrsvwz
Буква "е" входит во все слова, буквы "cdnrtx" исключены из списка согласных, т.к. они входят хотя бы в одно слово (из условия)
1
0 / 0 / 0
Регистрация: 26.04.2009
Сообщений: 7
05.05.2009, 22:24  [ТС]
Извините за назойливость, но я думал организовать эту программу немного подругому, поэтому не совсем понимаю правильный алгоритм.
Code
1
if pos(chr(i),copy(s,1,pos(',',s)))=0 then delete(s,1,pos(',',s)) else break;
что порусски он делает..
0
Посланник моего господина
111 / 106 / 52
Регистрация: 02.05.2009
Сообщений: 181
06.05.2009, 18:12
«chr(i)» — символ с кодом i.
«pos(',',s)» — позиция самого левого разделителя (конца любого слова)
«copy(s,1,pos(',',s))» — первое слева слово (включая запятую)
«pos(chr(i),copy(s,1,pos(',',s)))» == «pos(<символ с кодом i>,<первое слева слово>)» — позиция первого слева символа с кодом i в первом слове.
«if pos(chr(i),copy(s,1,pos(',',s)))=0 then» — если первого слева символа с кодом i в первом слове нет (т.е. его позиция 0), то ...
«delete(s,1,pos(',',s))» — удаление первого слева слова с запятой после него.
«if pos(chr(i),copy(s,1,pos(',',s)))=0 then delete(s,1,pos(',',s)) else break» — удалить и продолжить выполнение программы, если в первом слева слове есть таковой символ, в противном случае цикл останавливается.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.05.2009, 18:12
Помогаю со студенческими работами здесь

Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных латинских букв; между соседними словами - не менее одного
Напишите пожалуйста код :-* Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных латинских букв;...

Дана последовательность, содержащая от 1 до 30 слов, в каждом из которых от 1 до 5 строчных латинских букв
Дана последовательность,содержащая от 1 до 30 слов,в каждом из которых от 1 до 5 строчных латинских букв;между соседними словами-запятая,а...

Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных латинских букв
Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных латинских букв; между соседними словами - не...

Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных латинских букв
Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных латинских букв; между соседними словами -- не...

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


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru