Страница 1 из 1
заменить повт. символы произведением их значений на колличество повт. (pascal)
Добавлено: 03 дек 2009, 21:06
кректив
ПАСКАЛЬ! Дана последовательность чисел. Заменить повторяющиеся символы произведением их значений на колличество повторений. Повторения исключить. Вывести полученный результат.
Пример 1 2 2 3 4 4 4 1 6 4 результат: 2 4 3 16 6
Сделал, чтобы программа считала символы, но вот как умножить число в последовательности на колличества повторов, ума не приложу
очень прошу, помогите.
Re: заменить повт. символы произведением их значений на колличество повт. (pascal)
Добавлено: 04 дек 2009, 02:38
dr.Jekill
кректив писал(а):Сделал, чтобы программа считала символы

...
У Вас есть количество повторов символа
кректив писал(а):но вот как умножить число в последовательности на колличества повторов, ума не приложу
Думаю наиболее логично будет взять переменую, хранящую число и присвоить ей значение "число на кол. повторов".

Пусть n_k - кол-во повторений числа k в последовательности, тогда
Выкладывайте что у Вас есть.
Re: строка: зам. повторяющиеся символы произведением их значений на колличество повт.
Добавлено: 04 дек 2009, 18:15
кректив
Код: Выделить всё
program Project1;
uses crt;
var
s: string[20];
i, k, len, j: integer;
begin
clrscr;
write('Stroka: ');
readln(s);
len:=length(s);
for i:=1 to len do
write(s[i]:4);
writeln;
for i:=1 to len do
begin
k:=0;
for j:=1 to len do
if s[i]=s[j] then
k:=k+1;
write(k:4);
end;
writeln;
readln;
вот что есть , это кстати тоже на этом форуме нашёл

помогите пожалуйста, это очень важная работа.
Re: заменить повт. символы произведением их значений на колличество повт. (pascal)
Добавлено: 05 дек 2009, 18:49
dr.Jekill
кректив писал(а):как умножить число в последовательности на колличества повторов, ума не приложу
Лучше подумайте над исключением повторяющихся элементов.
Re: строка: зам. повторяющиеся символы произведением их значений на колличество повт.
Добавлено: 06 дек 2009, 16:19
кректив
ну повторение, я думаю оператором del получтся убрать. но я даже перемножить не могу(( помогите кто нибудь(