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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.01.2009, 15:33   #1
RomT24
Пользователь
 
Регистрация: 10.01.2009
Сообщений: 71
Вопрос Серии в массиве, помогите разобраться в задаче

Задача:
Дано целое число К(К>0) и целочисленный масссив размера N. Преобразовать массив, удвоив длину его серии (серия - группа подряд идущих одинаковых элементов, длина серии - кол-во этих элементов, может быть равна 1) с номером К. Если серий меньше числа К, то вывести массив без изменений.

Вот такая заковыристая задача. Кто может, помогите разобраться (если выложите код, то прошу наиболее сложные места сопроводить комментарием, мне хочется именно понять механизм решения).

Заранее спасибо!
RomT24 вне форума Ответить с цитированием
Старый 11.01.2009, 19:58   #2
StarWorm
Форумчанин
 
Регистрация: 17.11.2008
Сообщений: 233
По умолчанию

Э-э-э... мне кажется 100 р. и я тебе решаю ее с комментариями
iCq: 382 six six six 671
P.S. на Си/C++
StarWorm вне форума Ответить с цитированием
Старый 13.01.2009, 19:50   #3
RomT24
Пользователь
 
Регистрация: 10.01.2009
Сообщений: 71
По умолчанию

Спасибо, StarWorm, я лучше как-нибудь сам)
RomT24 вне форума Ответить с цитированием
Старый 13.01.2009, 23:44   #4
capta1n
Форумчанин
 
Аватар для capta1n
 
Регистрация: 06.12.2008
Сообщений: 613
По умолчанию

Да я же решал эте задачу вам в теме ПАСКАЛЬ - посмотрите! и оцените - кстати довольно долго ее делал - так что оцените
capta1n вне форума Ответить с цитированием
Старый 14.01.2009, 01:57   #5
StarWorm
Форумчанин
 
Регистрация: 17.11.2008
Сообщений: 233
По умолчанию

Да, задачу то на языке паскаль нужно реализовать?!?! Оо...

P.S. по моему не такая уж и сложная задача
StarWorm вне форума Ответить с цитированием
Старый 14.01.2009, 02:14   #6
StarWorm
Форумчанин
 
Регистрация: 17.11.2008
Сообщений: 233
По умолчанию

Вот на Си(ну и си++)
Код:
#include <stdio.h>
#include <conio.h>
#include <string.h>

void putToStr(char*,int);

int main()
{
	char str[255];
	int pos=0,count=0,number;
	char last;
	bool flag=false;
	printf("Enter your string: ");
	scanf("%s",str);
	printf("Enter your number: ");
	scanf("%d",&number);
	//strcpy(str,"11124443377");
	while(str[pos])
	{
		if(!pos)
		{
			last=str[pos];
			count=1;
			if(number==1)
				putToStr(str,pos++);
		}
		else
		{
			if(last!=str[pos])
			{
				count++;

			}
			last=str[pos];
			if(count==number)
			{
				putToStr(str,pos++);
				flag=true;
			}
		}
		pos++;
	}

	printf("%s",str);
	getch();
}

void putToStr(char* str,int ind)
{
	int len=strlen(str);
	for(int i=len-1;i>=ind;i--)
	{
		str[i+1]=str[i];
	}
	str[len+1]='\0';
}
P.S. Не дочитал что целочисленный, но от этого суть не меняется
StarWorm вне форума Ответить с цитированием
Старый 14.01.2009, 03:24   #7
capta1n
Форумчанин
 
Аватар для capta1n
 
Регистрация: 06.12.2008
Сообщений: 613
По умолчанию

Скоро и я на си буду уметь прогать
capta1n вне форума Ответить с цитированием
Старый 14.01.2009, 03:27   #8
capta1n
Форумчанин
 
Аватар для capta1n
 
Регистрация: 06.12.2008
Сообщений: 613
По умолчанию

StarWorm - а вы сделайте и честно под слово скажите, сколько вам потребовалось, чтобы решить эту задачу !СОГЛАСНО УСЛОВИЮ! - потому что в условии есть некоторые выражения, на которые следует обратить внимание - допустим, нужно не только вывести массив, но и преобразовать его и так далее - если задача как говорите, легкая - сделайте, пожалуйста, и выложите - это ж не займет много времени
capta1n вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Серии в массиве, задача, помогите разобраться! RomT24 Паскаль, Turbo Pascal, PascalABC.NET 1 11.01.2009 20:32
помогите найти ошибку в задаче. Wia Помощь студентам 1 14.12.2008 17:19
Помогите найти ошибку в задаче Filosofijka Паскаль, Turbo Pascal, PascalABC.NET 34 04.12.2008 13:36
Помогите исправить ошибку в задаче VANOLORD Паскаль, Turbo Pascal, PascalABC.NET 9 19.05.2008 22:16
Не могу добавить две серии в Chart snake-as Общие вопросы Delphi 2 19.05.2008 09:04