Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
Molotoff
1 / 1 / 0
Регистрация: 21.07.2009
Сообщений: 50
#1

Заполнение массива - C++

23.01.2011, 06:32. Просмотров 1245. Ответов 1
Метки нет (Все метки)

Доброго дня, уважаемые форумчане!
В очередной раз сталкиваюсь с небольшой проблемой, суть ее заключается в следующем. Есть два массива малый и большой, нужно значения из малого более-менее равномерно записать в большой. Например:
A[5] = {0,1,2,3,4} - исходный массив
B[17] = {0,0,0,1,1,1,2,2,2,3,3,3,3,4,4,4,4} или B[17] = {0,0,0,0,1,1,1,2,2,2,2,3,3,3,4,4,4} - результирующий массив
Т.е. принципиальной разницы нет, главное, чтоб эти "отрезки" отличались не более чем на единицу. И опять же, требуется, чтоб алгоритм был быстрый (выполнялся за небольшое число операций).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2011, 06:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Заполнение массива (C++):

ввод двумерного массива,ввод размерности массива,заполнение массива случайными числами - C++
#include "stdafx.h" #include "locale.h" #include "stdlib.h" #include "math.h" void main() { setlocale(LC_ALL,"rus"); int...

Заполнение массива значениями из символьного массива - C++
есть массив символов char z;есть целочисленный массив int b;каждый символ z это цифра 0-9 нужно в b записать символ z(не код символа а...

Заполнение массива - C++
Я нахожу макс., мин. и среднее арифметическое элементов массива. Мне надо их значения записать во второй массив(новый). Как это сделать?...

Заполнение массива - C++
Как заполнить массив числами от 1 до 100000 ? А то не резон как то писать int mass = {1,2,3,4,.....} И еще не подскажете как заолнить...

Заполнение массива - C++
Заполнить массив 6x6 цифрами от 1 до 36 по следующей схеме 11 12 13 14 15 16 10 27 28 29 30 17 9 26 35 36 31 18 8 25 34 33 32...

Заполнение массива - C++
помогите решить задачу. заранее спасибо.;)

1
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
23.01.2011, 06:56 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <algorithm>
#include <iterator>
#include <cmath>
 
const size_t nB = 13;
 
int A[] = {0,1,2,3,4},
    B[nB];//{0,0,0,1,1,1,2,2,2,3,3,3,3,4,4,4,4}; 
 
const size_t nA = sizeof(A)/sizeof(A[0]), step = floor(nB*1.0/nA);
            
int main(){
   size_t i,j,index = 0, offer = nB - step*nA;
   for( i=0;i<nA;++i ){
      for( j=0;j<step && index<nB;++j,++index ){
         B[index]=A[i];
      }  
      if( offer ){
         B[index++] = A[i];
         --offer; 
      }   
   }  
   std::copy( B,B+nB,std::ostream_iterator<int>(std::cout," ") );
}
Добавлено через 1 минуту
тут про отличия отрезков прочитал надо поразмыслить
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.01.2011, 06:56
Привет! Вот еще темы с ответами:

Заполнение массива - C++
У меня есть строка, которую пользователь ввел с консоли как мне каждый элемент строки добавить в массив??? Добавлено через 7 минут ...

Заполнение массива - C++
Привет народ! Очень нужна помощь срочно!(( Вот такое вот задание: 1,Составьте программу заполнения массива А(N,N) нулями и единицами в...

Заполнение массива от 'А' до 'Я' и 'а' до 'я' - C++
Как заполнить массив буквами русского алфавита по порядку, желательно не вручную . Нужно от 'А' до 'Я' и затем от 'а' до 'я' т.е 66...

Заполнение массива - C++
Даны числа от 0 до 15 (включительно), нужно записать их в одномерный массив в рандомном порядке, при этом числа не должны повторяться ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru