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

Заменить все "..." на "."

13.01.2010, 12:58. Показов 1497. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста решить задачу.
Дана строка, 1)оставить в ней только те символы которые входят в строку один раз
2)заменить все многоточия на одну точку. Со вторым пунктом я справился, а вот с первым ничего не получается.((((
Кстати массивы мы не проходили.
Заранее спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.01.2010, 12:58
Ответы с готовыми решениями:

Если A<=B<=C<=D, то все заменить наибольшим; если A>B>C>D, не менять; иначе все заменить их квадратами
Даны действительные числа A, B, C, D. Если A &lt;= B &lt;= C &lt;= D, то каждое число заменить наибольшим из...

Заменить все нечетные элементы на максимальный элемент, заменить все ненулевые элементы на 10
1.В целочисленном линейном массиве заменить все нечётные элементы на максимальный элемент....

Все пробелы заменить на /t, а все /t заменить пробелами
Задача ввести со строки значение и все пробелы заменить /t, а все /t заменить пробелами, результат...

Заменить все отрицательные на наибольшее простое число. Если простых чисел нет, то заменить на 0
Помогите решить задачу Заполнить одномерный массив &lt; 20 случайных чисел. Заменить все...

Ввести строку. Слово max длины заменить на вводимое, если таких слов несколько — заменить все
Ввести строку. Слово max длины заменить на вводимое, если таких слов несколько — заменить все.

18
Платежеспособный зверь
8926 / 4354 / 1642
Регистрация: 28.10.2009
Сообщений: 11,568
13.01.2010, 14:13 2
а строка по-любому будет массивом символов. Как ты к символу обратишься, если не как к элементу массива?
0
2923 / 844 / 324
Регистрация: 30.04.2009
Сообщений: 2,633
13.01.2010, 14:21 3
Pascal
1
2
3
4
5
6
7
8
while i<=length(s)-1 do
begin
 j:=j+1;
 whilej<=length(s) do
  if s[i]=s[j] then   delete(s,j,1)
   else inc(j);
 inc(i);
end;
1
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
13.01.2010, 14:38 4
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от дамир93 Посмотреть сообщение
оставить в ней только те символы которые входят в строку один раз
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var
  S:string;
  C:char;
  i:integer;
begin
  ReadLn(s);
  i:=1;
  repeat
    C:=S[i];
    if Pos(C,Copy(S,Pos(C,S)+1,Length(S)))<>0 then
      while Pos(C,S)<>0 do
        Delete(S,Pos(C,S),1)
    else
      Inc(i)
  until
    i>Length(S);
  WriteLn(S)
end.
Добавлено через 35 секунд

Не по теме:

ух... опоздал...



Добавлено через 2 минуты
Цитата Сообщение от дамир93 Посмотреть сообщение
заменить все многоточия на одну точку
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var
  S:string;
  i:integer;
begin
  ReadLn(s);
  i:=3;
  repeat
    if (s[i]='.') and (s[i-1]='.') and (s[i-2]='.') then
    begin
      Delete(S,i-2,2);
      Dec(i)
    end
    else
      Inc(i)
  until
    i>Length(S);
  WriteLn(S)
end.
3
1 / 1 / 0
Регистрация: 13.01.2010
Сообщений: 14
13.01.2010, 14:42  [ТС] 5
а без char можно? мы это не проходили
0
ЧакЭ одобряЭ
285 / 284 / 86
Регистрация: 27.12.2009
Сообщений: 1,767
13.01.2010, 14:47 6
а из чего,по-вашему,состоит срока?из символов!
1
1 / 1 / 0
Регистрация: 13.01.2010
Сообщений: 14
16.01.2010, 17:43  [ТС] 7
mamedovvms а ты не мог бы раписать свою задачу а то у меня че то не получается, только пожалуйста без типа данных char. Спасибо!
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
16.01.2010, 18:39 8
дамир93, повторю еще раз: почитайте литературку, чтобы не нести ерунду. Строка состоит из символов. То, что Вы этого не знаете Вас не красит. Препод Вам ничего не скажет, т.к. если он не дурак(как Вы пишете), то он-то знает из чего состоит строка. Чтобы показать преподу, что "это на самом деле писали Вы", достаточно почитать хэлп.
Роман Тольч, на первый раз ограничемся устным замечанием. Оставляйте такие посты в соответствующем разделе. Надеюсь, что мы с Вами не будем больше возвращаться к этому вопросу.
2
1 / 1 / 0
Регистрация: 13.01.2010
Сообщений: 14
16.01.2010, 18:41  [ТС] 9
Цитата Сообщение от Inadequate Посмотреть сообщение
дамир93, повторю еще раз: почитайте литературку, чтобы не нести ерунду. Строка состоит из символов. То, что Вы этого не знаете Вас не красит. Препод Вам ничего не скажет, т.к. если он не дурак(как Вы пишете), то он-то знает из чего состоит строка. Чтобы показать преподу, что "это на самом деле писали Вы", достаточно почитать хэлп.
То что строка это одномерный массив нам рассказывали, но про тип данных char объясняли всего двум олимпиадникам
1
16 / 16 / 1
Регистрация: 10.01.2010
Сообщений: 46
16.01.2010, 18:42 10
Мда, ВЦ! вы люди. Сами не помогаете и другим помочь не даете.
1
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
16.01.2010, 18:51 11
Роман Тольч, Вам кто-то запрещает писать в теме? Мне кажется, что никто Вас отсюда не гонит. Пишите если есть, что-то по теме.
дамир93, Вы ведь читать умеете (по крайней мере я на это надеюсь), а раз умеете, то возьмите и почитайте самостоятельно про char в хэлпе. Уверен, что Вам пойдет это только на пользу.
0
1186 / 542 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
16.01.2010, 18:53 12
Цитата Сообщение от дамир93 Посмотреть сообщение
То что строка это одномерный массив нам рассказывали, но про тип данных char объясняли всего двум олимпиадникам
Это на первых же занятиях изучаеться , тип данных char это такой же тип как и остальные и он означает что у тебя будут в строке символы , как ты тогда предлагаешь
Цитата Сообщение от дамир93 Посмотреть сообщение
без char
сделать ?
0
3310 / 1372 / 110
Регистрация: 28.04.2009
Сообщений: 4,822
16.01.2010, 18:54 13
char для школьников
http://www.piter.com/attachmen... at=exc&n=0
1
1 / 1 / 0
Регистрация: 13.01.2010
Сообщений: 14
16.01.2010, 19:23  [ТС] 14
Спасибо за ссылку. Прочитал, вроде бы все просто, но на первом задании мы этого не изучали!

Добавлено через 18 минут
Если у кого-то будут мысли, по поводу как можно решить задачу без char, пишите. Спасибо!
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
16.01.2010, 19:32 15
Лучший ответ Сообщение было отмечено как решение

Решение

Давайте перестанем флудить, а то придется выдать всем по карточке. Спасибо.
3
1 / 1 / 0
Регистрация: 13.01.2010
Сообщений: 14
22.01.2010, 16:19  [ТС] 16
Цитата Сообщение от Inadequate Посмотреть сообщение
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var
  S:string;
  C:char;
  i:integer;
begin
  ReadLn(s);
  i:=1;
  repeat
    C:=S[i];
    if Pos(C,Copy(S,Pos(C,S)+1,Length(S)))<>0 then
      while Pos(C,S)<>0 do
        Delete(S,Pos(C,S),1)
    else
      Inc(i)
  until   {";" expected}
    i>Length(S);
  WriteLn(S)
end.
В чем ошибка?
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
22.01.2010, 21:34 17
дамир93, в моей программе нет ошибок, там все написано верно.
0
113 / 85 / 56
Регистрация: 09.01.2009
Сообщений: 209
23.01.2010, 08:16 18
В чем ошибка?
Pascal
1
until  i>Length(S);
должно быть в одну строчку
0
3067 / 727 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
23.01.2010, 08:59 19
maladoy, нет, это какой вам компилятор так сказал ? Проверил, всё отлично скомпилировалось (В Turbo Pascal и во Free Pascal)
1
23.01.2010, 08:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.01.2010, 08:59
Помогаю со студенческими работами здесь

МТ. Построить диаграмму переходов. Заменить все единицы на нули, третий нуль заменить на единицу, вернуться в начало
На ленте записано слово в алфавите A = {0, 1}. Построить диаграмму переходов (или систему команд в...

Дана строка. Заменить все буквы "м" на "н". Заменить все вхождения сочетаний букв "про" на "нет"
2.Дана строка. 1) Заменить все буквы м на н. 2) Заменить все вхождения сочетаний букв &quot;про&quot; на...

Если последнее слово больше предпоследнего, то заменить первые пять символов буквой “а”, в противном случае все символы заменить на “*”.
Заданы 2 строки, состоящие из слов, разделенных пробелами. Если последнее слово больше...

В произвольном списке (со вложенностью) все отрицательные элементы умножить на -2, все 0 заменить на (1 1)
в произвольном списке (со вложенностью) все отрицательные элементы умножить на -2, все 0 заменить...

Заменить все точки восклицательными знаками, а все восклицательные знаки точками.
Заменить все точки восклицательными знаками, а все восклицательные знаки точками. var c:...


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

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