Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2010, 21:44   #1
QuadroX
323787261
Пользователь
 
Аватар для QuadroX
 
Регистрация: 19.12.2008
Сообщений: 49
По умолчанию Продублировать элементы массива

Необходимо продублировать последовательные триады элементов массива. Как это можно сделать? Не могу нигде найти алгоритм.

Пример1: 12345 -> 123123456456
Пример2: abcdef -> abcabcdefdef
ICQ: 323787261
Email: pschegolevatykh@gmail.com
QuadroX вне форума Ответить с цитированием
Старый 29.09.2010, 23:17   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,543
По умолчанию

Цитата:
Не могу нигде найти алгоритм.
а придумать(сформулировать) самому?
например
1.берем первые три
2 переносим в новый
3 переносим еше раз
4.если есть берем следующие три иначе закочить
5.повторить с п.2.
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 30.09.2010, 01:41   #3
savva
Форумчанин
 
Регистрация: 10.06.2010
Сообщений: 225
По умолчанию

что-то я забыл паскаль уже

a,c:string;

c[i]:=a[i]; так можно делать?

не знаю правильно или нет(есть пара ошибок связанных с моим постом выше) но по-моему скромному мнению примерно так должно быть

Код:

program Project4;

{$APPTYPE CONSOLE}

uses
  SysUtils;
   var
     a,c:string;
     x,z,h:integer;
   procedure Copypast(var a:string;var x:integer);
   var
       i,n:integer;
       b:string;
   begin
      n:=0;
      x:=x-2;   //Уменьшаем значение(чтобы если  5 букв то после первого захода не проверяла машина)
      while(n<>x) do
      begin
      for i:=n to i+2 do
           b[i]:=a[i];// b буфер
           inc(n);//         счётчик
           c[i]:=b[i];
           c[i+2]:=b[i];   //с результирующая строка
      end;
   end;
begin

   writeln('Enter chars');
   readln(a);
   x:=length(a);  //длина строки
   copypast(a,x);
   z:=length(c);
   for h:=0 to z do
   begin
     writeln(c[h]);//вывод строки
    end;

end.
За помощь: Нажмите на весы слева от сообщения!

Последний раз редактировалось Stilet; 30.09.2010 в 08:02.
savva вне форума Ответить с цитированием
Старый 30.09.2010, 08:29   #4
QuadroX
323787261
Пользователь
 
Аватар для QuadroX
 
Регистрация: 19.12.2008
Сообщений: 49
По умолчанию

savva Прога не работает.

Вроде сделал сам, но как-то криво. Очень не нравится, что для outputString мы не можем задать размер.

Код:
#include <iostream>
using namespace std;

void main()
{
	char inputString[] = "1234";

	int length = sizeof(inputString) / sizeof(char);
	char outputString[255] = "";
	int i = 0;	
	int j = 0;
	while (i < length)
	{
		outputString[j] = inputString[i];
		outputString[j+1] = inputString[i] + 1;
		outputString[j+2] = inputString[i] + 2;

		outputString[j+3] = inputString[i];
		outputString[j+4] = inputString[i] + 1;
		outputString[j+5] = inputString[i] + 2;
		
		i += 3;
		j += 6;
	}

	cout << outputString;
}
ICQ: 323787261
Email: pschegolevatykh@gmail.com
QuadroX вне форума Ответить с цитированием
Старый 30.09.2010, 10:47   #5
savva
Форумчанин
 
Регистрация: 10.06.2010
Сообщений: 225
По умолчанию

я и написал что у меня пара ошибок,по скольку не могу обрабатывать строку поиндексно,а использовать массив char не удобно и как ты сказал криво,я и спрашивал как надо делать со стрингом ибо не помню в паскале как это делать.
За помощь: Нажмите на весы слева от сообщения!
savva вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Элементы массива Andrey_j07 Паскаль, Turbo Pascal, PascalABC.NET 3 23.06.2010 11:07
Упорядочить элементы массива Rustamel Microsoft Office Excel 3 19.04.2010 12:39
1.Найти в матрице первую строку, все элементы которой отрицательны 2.отсортировать элементы массива по в w0lf16 Помощь студентам 2 22.11.2009 15:47
Элементы массива Ximer Паскаль, Turbo Pascal, PascalABC.NET 5 26.04.2009 00:53
переписать из массива в линейный двунаправленный список чётные элементы массива Black_Ak24 Помощь студентам 12 08.01.2008 00:44