1 / 1 / 0
Регистрация: 25.11.2010
Сообщений: 19
1

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

28.11.2010, 10:48. Показов 1447. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Из заданного предложения выбрать и вывести на экран только те символы, которые встречаются в нем только один раз (в том порядке, в каком они встречаются в тексте)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.11.2010, 10:48
Ответы с готовыми решениями:

Из данного текста предложения выбрать и напечатать только те символы,которые встречаются в нем только 1 раз
В файле А набран текст. Из данного текста предложения выбрать и напечатать только те...

Выбрать из файла только те символы, которые встречаются в нем только один раз
дан текстовый файл, содержащий текст на русском языке. Выбрать из него только те символы, которые...

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

Выбрать из файла те символы, которые встречаются в нем только один раз
11 Дан файл, содержащий текст на русском языке. Выбрать из него те символы, которые встречаются в...

4
2857 / 1986 / 788
Регистрация: 23.09.2010
Сообщений: 4,877
28.11.2010, 11:16 2
Лучший ответ Сообщение было отмечено Alex09 как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Uses
 CRT;
Var
 i,j:integer;
 s:string;
 t:boolean;
begin
clrscr;
readln(s);
for i:=1 to length(s) do
begin
t:=true;
 for j:=1 to length(s) do
  if (s[j]=s[i]) and (i<>j)  then
  t:=false;
   if t then
    write(s[i]:3);
end;
readln
end.
0
0 / 0 / 0
Регистрация: 25.02.2020
Сообщений: 127
19.03.2020, 18:04 3
Здравстуйте можете объяснить мне программу как работает цикл
0
Модератор
9602 / 4923 / 3249
Регистрация: 17.08.2012
Сообщений: 15,368
22.03.2020, 10:48 4
В программе два цикла, а не один.

Внешний цикл (по i) перебирает все символы строки.
Для каждого символа, априори принимается, что он встречается только один раз (t := true);
Далее во внутреннем цикле (по j) символы с номером j проверяются на равенство символу номер i, кроме него самого (проверка не производится, если i = j), и при обнаружении равного символа принимается, что символ встречается более одного раза (t := false).
После выхода из внутреннего цикла анализируется переменная t, и, если t = true, символ выводится на печать.

Добавлено через 27 минут
На мой вкус, я бы сделал немного по-другому. Тем более, что, если выяснилось, что символ встречается более одного раза, уже незачем проверять остальные символы строки.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var
  i, j: integer;
  s: string;
  found: boolean;
begin
  readln(s);
  for i := 1 to length(s) do
    begin
      for j := 1 to length(s) do
        begin
          found := (s[i] = s[j]) and (i <> j);
          if found then break
        end;
      if not found then
        write(s[i]:3)
    end;
  readln
end.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7534 / 4394 / 2785
Регистрация: 22.11.2013
Сообщений: 12,588
Записей в блоге: 1
22.03.2020, 13:30 5
Примерно то же самое, квадратишненькое:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
var
  i, j, k: Integer;
  s: String;
begin
  ReadLn(s);
  for i:=1 to Length(s) do begin
    j:=Length(s); k:=0;
    while (j>0) and (k<2) do begin
      Inc(k,Ord((s[i]=s[j]) and (i<>j))); Dec(j);
    end;
    if k=1 then Write(s[i]:2);
  end;
end.
Cyborg Drone,
Но сделал бы иначе:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
var
  n: array [Char] of Integer;
  i: Integer;
  s: String;
begin
  ReadLn(s);
  for i:=1 to Length(s) do Inc(n[s[i]]);
  for i:=1 to Length(s) do
    if n[s[i]]=1 then begin
      Write(s[i]:2); n[s[i]]:=0;
    end;
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.03.2020, 13:30
Помогаю со студенческими работами здесь

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

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

Из заданного предложения выбрать и напечатать только те символы, которые встречаются в нем только 1 раз
Помогите пожалуйста исправить этот код, почему то не выводит это:&quot;В строке нет символов которые...

Из заданного предложения выбрать и напечатать только те символы, которые встречаются в нем только 1 раз
Из заданного предложения выбрать и напечатать только те символы, которые встречаются в нем только 1...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru