Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/25: Рейтинг темы: голосов - 25, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 09.04.2014
Сообщений: 5

Напечатать слова, которые встречаются в двух предложениях только один раз (Pascal -> C++)

11.04.2014, 01:44. Показов 4664. Ответов 2
Метки нет (Все метки)

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

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
uses crt;
var a: array [1..100] of string;
    b: array [1..100] of integer;
    i,j,k,l: integer;
    s,sl: string;
begin
write('s=');
readln(s);
j:=1;
sl:='';
if s[length(s)]<>'.' then s:=s+'.';
for i:=1 to length(s) do
    if (s[i]<>' ') and (s[i]<>'.')
       then sl:=sl+s[i] else
            begin
            a[j]:=sl;
            sl:='';
            inc(j);
            end;
k:=j;
for j:=1 to k do
    write(a[j],' ');
for j:=1 to k do
    b[j]:=0;
writeln;
writeln('не повторяются: ');
for j:=1 to k do
    for l:=1 to k do
        if a[j]=a[l] then
           inc(b[j]);
for j:=1 to k do
    if b[j]=1 then write(a[j],' ');
end.
То, что получилось у меня, помогите исправить ошибки

C++
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
#include <windows.h>
#include <iostream.h>
#include <string>
 
int main()
{
SetConsoleOutputCP(1251);
int i,j,k,l;
int b[100];
string a[100];
string s,s1,s2,s3;
getline(cin,s);
j=1;
s1="";
if (s[s.length()]!=".") s=s+".";
for (i=1;i<s.length();i++)
 if (s[i]!=" " && s[i]!=".")
  s1=s1+s[i];
   else {
    a[j]=s1;
    s1="";
    j++;
   }
k=j;
for (j=1;j<k;j++)
 cout<<a[j]<<" ";
for (j=1;j<k;j++)
 b[j]=0;
cout<<"не повторяются: ";
for (j=1;j<k;j++)
for (l=1;l<k;l++)
 if (a[j]==a[l]) b[j]++;
for (j=1;j<k;j++)
 if (b[j]==1)
  cout<<a[j]<<" ";
system("pause");
        return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.04.2014, 01:44
Ответы с готовыми решениями:

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

Напечатать слова, которые встречаются в предложениях только 1 раз
Ребята! Такая задача - Даны 2 предложения.Напечатать слова, которые встречаются в предложениях только 1 раз Задачу нужно...

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

2
0 / 0 / 0
Регистрация: 09.04.2014
Сообщений: 5
18.04.2014, 02:02  [ТС]
Все ещё нужна помощь
0
 Аватар для Komi
6 / 6 / 5
Регистрация: 10.08.2012
Сообщений: 82
18.04.2014, 02:49
создаешь вектор, или массив типа string, который будет хранить каждое слово обоих предложений вместе как отдельный элемент (так как проверять тебе слова общие, то что предложения 2 а не 1, не имеет никакого логического значения именно здесь.)
затем создаешь еще один вектор или опять таки массив, типа int, и пошло поехало,
C++
1
for(int i=0; i<колво_элементов;i++)
чтобы насчитать "под" каждым элементом стринг хранилища, колличество повторяющихся слов.

знаю что блаблабла, но возможно это тебя направит. если нет, напиши наскок дружишь с векторами, чтоб я знал как тебе пример писать)

Добавлено через 15 минут
вообще логика может иметь это строение:


C++
1
2
3
4
5
6
7
8
for(int i=0;i<колво_элементов;i++)           //два фора, чтобы каждое слово проверялось на повторение с другими
  {
    for(int j=0;j<колво_элементов;j++)
      {
       if (    strcmp(хранилище_стрингов_на_месте_i, хранилище_стрингов_на_месте_j)==0)     //если равны
           хранилище_интов_на_месте_i += 1;
      }
  }
ну а потом выводишь опять таки уже в другом форе
C++
1
2
if(хран_интов_на_месте_х==1)
cout << хран_стрингов_на_месте_х;
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.04.2014, 02:49
Помогаю со студенческими работами здесь

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

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

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

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

Напечатать только те символы строки, которые встречаются в ней только один раз
Напечатать только те символы строки которые встречаются в ней только один раз.


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера 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. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru