IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Может ли две строки иметь одинаковые символы?
ramzes5000
сообщение 27.04.2010 20:21
Сообщение #1





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Роман

Репутация: -  0  +


Начальник поставил задачу:
Может ли две строки иметь одинаковые символы?
Помогите пожалуйста!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Client
сообщение 27.04.2010 21:48
Сообщение #2


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

Репутация: -  20  +


"строка1" и "вторая строка" имеют одинаковые символы? имеют.
или тут что то другое?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
ramzes5000
сообщение 28.04.2010 6:05
Сообщение #3





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Роман

Репутация: -  0  +


Цитата(Client @ 27.04.2010 21:48) *

"строка1" и "вторая строка" имеют одинаковые символы? имеют.
или тут что то другое?

спасибо, уточню.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
ramzes5000
сообщение 28.04.2010 6:25
Сообщение #4





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Роман

Репутация: -  0  +


подкинули еще задачу

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


вот, что есть

var s: string;
i: integer;
begin
writeln('введите строку');
readln(s);
for i:=length(s) downto 1 do
begin
if s[i]=s[i-1] then delete(s,i,1);
end;
writeln(s);
end.


М
ramzes5000, пожалуйста, вставляй иногда символ конца строки в код. Не у всех мониторы с разрешением 2400 по горизонту..
Исправлено.
Lapp




Сообщение отредактировано: Lapp - 28.04.2010 12:21
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
ramzes5000
сообщение 28.04.2010 6:57
Сообщение #5





Группа: Пользователи
Сообщений: 4
Пол: Мужской
Реальное имя: Роман

Репутация: -  0  +


Цитата(ramzes5000 @ 28.04.2010 6:05) *

"строка1" и "вторая строка" имеют одинаковые символы? имеют.
или тут что то другое?


правда ли что две строки не используют общих символов?

Сообщение отредактировано: ramzes5000 - 28.04.2010 6:58
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ozzя
сообщение 28.04.2010 7:46
Сообщение #6


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Цитата
подкинули еще задачу

Переделать под Вашу задачу.
Удаление повторяющихся элементов массива

Сообщение отредактировано: Ozzя - 28.04.2010 7:51
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Гость
сообщение 28.04.2010 9:27
Сообщение #7


Гость






всем спасибо, по моему справились
 К началу страницы 
+ Ответить 
Гость
сообщение 28.04.2010 9:28
Сообщение #8


Гость






хотел повысить Вам репутацию - кнопка не жмется
 К началу страницы 
+ Ответить 
Ozzя
сообщение 28.04.2010 10:03
Сообщение #9


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Цитата
хотел повысить Вам репутацию - кнопка не жмется

У гостя нет такой возможности

Добавлено через 2 мин.
репутация
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
TarasBer
сообщение 28.04.2010 10:21
Сообщение #10


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Кстати, в ЧЗВ есть алгоритм удаления из массива элементов, удовлетворяющих какому-либо условию, за линейное время без доп.памяти?
Типа такого:

j := 0;
for i := 0 to Length(Arr) - 1 do if not MustDel(i) then begin
Arr[j] := Arr[i];
Inc(j);
end;
SetLength(Arr, j);



Добавлено через 1 мин.
Я за Рамзеса плюс нажал, если что.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 28.04.2010 10:27
Сообщение #11


Гость






Нет, и не будет. Динамические массивы - это не Паскаль.
 К началу страницы 
+ Ответить 
TarasBer
сообщение 28.04.2010 10:40
Сообщение #12


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Блин, я не про динамические массивы, а про алгоритм.
Если хотите, то вот так:



j := 0;
for i := 0 to LArr - 1 do if not MustDel(i) then begin
Arr[j] := Arr[i];
Inc(j);
end;
LArr := j;





--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 28.04.2024 11:09
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"