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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.01.2013, 00:08   #1
morfei74
 
Регистрация: 04.01.2013
Сообщений: 5
По умолчанию Продублировать в массиве элементы с четными номерами

Дан массив N. Продублировать в нем элементы с четными номерами (2, 4 и т.д.). Условный оператор не использовать.

Например, исходный массив :
1 2 3 4 5 6
Массив после преобразования
1 1 2 3 3 4 5 5 6

Код на С++
Код:
#include<iostream>
#include<Windows.h>
#include "time.h"
#include "stdlib.h"
using namespace std;

void main()
{
	SetConsoleOutputCP(1251);
	const int N=100;
	int Mas[N];
	int n, i, a, b, m, l;
	srand(time(NULL));
	cout<<"Введите количество чисел в массиве ";
			cin>>n;
	cout<<"\n\n";
	if (n>0 && n<=N)
	{
	cout<<"\tвведите начальную точку массива ";
			cin>>a;
	cout<<"\n\n";
	cout<<"\tвведите конечную точку массива ";
			cin>>b;
	cout<<"\n\n";
	m=b-a+1;
	system("cls");
	cout<<"Исходный массив \n";
		for (i=0; i<n; i++)
		{
			Mas[i]=rand()% m+a;
			cout<<Mas[i]<<" ";
		}
	cout<<"\n\n";

	//обработка массива
		for (i=2; i<2*n-1; i+=3)
			Mas[i+1]=Mas[i];
 	 	
	cout<<"Преобразованный массив\n";
		for (int i=0; i<2*n; i++)
            cout<<Mas[i]<<" ";
	cout<<"\n\n";
	}
	else cout<<"Ввели неправильное количество элементов массива\n";
}
Но получается он затирает элемент следующий за четным элементом и в конце добавляет абра-кадабру
Изображения
Тип файла: jpg Снимок1.jpg (13.6 Кб, 120 просмотров)

Последний раз редактировалось Stilet; 14.01.2013 в 00:24.
morfei74 вне форума Ответить с цитированием
Старый 14.01.2013, 10:18   #2
Shad0wF1rst
Форумчанин
 
Регистрация: 11.01.2013
Сообщений: 149
По умолчанию

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

И конечно же возник вопрос. У вас элементы считаются как 1,2,3,4... или 0,1,2,3,4....?
Может это и чушь, но это моя чушь и я ее никому не отдам.

Последний раз редактировалось Shad0wF1rst; 14.01.2013 в 10:23.
Shad0wF1rst вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычислить произведение элементов массива с четными номерами. Кулибаба Петро C++ Builder 3 11.12.2012 22:24
все нулевые элементы размещены на местах с четными индексами строк и столбцов fcrCullen93 Общие вопросы C/C++ 13 05.02.2011 23:23
Продублировать элементы массива QuadroX Помощь студентам 4 30.09.2010 10:47
уменьшить все элементы с четными индаксами на величину минимального элемента ginzor Помощь студентам 4 02.11.2009 15:26