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

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

Войти
Регистрация
Восстановить пароль
 
 
Andrey5800
0 / 0 / 0
Регистрация: 27.08.2013
Сообщений: 10
#1

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

13.09.2013, 21:39. Просмотров 707. Ответов 16
Метки нет (Все метки)

Как заполнить массив числами от 1 до 100000 ?
А то не резон как то писать
C++
1
int mass[100000] = {1,2,3,4,.....}
И еще не подскажете как заолнить массив только четными числами до 100 например. Тоеть 2,4,6,8,10....
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.09.2013, 21:39     Заполнение массива
Посмотрите здесь:

Заполнение массива - C++
Добрый день. Объясните,пожалуйста, следующий момент. Есть кусок кода: void fill(struct member *p){ printf("\nFill your name...

Заполнение массива - C++
Здравствуйте, помогите пожалуйста заполнить массив таким образом, или хотя бы подскажите алгоритм) Заранее благодарен...

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

Заполнение массива - C++
Извините, что флудю, просто в старой теме уже не отвечают. data::data(int f){ if (f==1) ...

Заполнение массива - C++
Рандомно заполнить массив из 8 элементов таким образом чтобы все его элементы при просмотре с лева на право образовывали убывающую...

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

Заполнение массива - C++
Доброго времени суток всем:) Прошу немного помощи. Дали лабу на заполнение массива, а я не умею составлять формулы и не нашёл никакой...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Issues
430 / 365 / 37
Регистрация: 06.08.2012
Сообщений: 961
13.09.2013, 21:48     Заполнение массива #2
в цикле.
vodilawofer
29 / 27 / 2
Регистрация: 27.09.2012
Сообщений: 123
13.09.2013, 21:49     Заполнение массива #3
C++
1
2
for (int i = 0; i < 100000; ++i)
mas[i] = i + 1;
C++
1
2
for (int i = 0; i < 50; ++i)
mas[i] = i + 2;
Voivoid
674 / 277 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
13.09.2013, 22:59     Заполнение массива #4
Можно так:
std::iota( std::begin( mass ), std::end( mass ), 1 );
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
13.09.2013, 23:11     Заполнение массива #5
Цитата Сообщение от vodilawofer Посмотреть сообщение
C++
1
2
for (int i = 0; i < 50; ++i)
mas[i] = i + 2;
Итого будем иметь mas{3,4,5,6,7...51}

C++
1
2
3
for(int i = 0; i < 50; i++){
mas[i] = (i + 1) * 2;
}
Voivoid
674 / 277 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
14.09.2013, 10:34     Заполнение массива #6
Задача для знатоков C++ :
Заполните содержимое массива числами от 1 до n на этапе компиляции
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
14.09.2013, 10:41     Заполнение массива #7
Цитата Сообщение от Voivoid Посмотреть сообщение
Задача для знатоков C++ :
Заполните содержимое массива числами от 1 до n на этапе компиляции
C++
1
int array[] = {1, 2, 3, 4, 5, ... , n};
Voivoid
674 / 277 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
14.09.2013, 10:45     Заполнение массива #8
Цитата Сообщение от ___ Посмотреть сообщение
C++
1
int array[] = {1, 2, 3, 4, 5, ... , n};
У топикстартера n было равно 100.000 . Не руками же заполнять. На предложения использовать какую-нибудь программу которая сгенерирует нужный код скажу, что можно и обойтись одними только средствами c++

Бонус за решение в рамках с++03, а не c++11
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
14.09.2013, 10:55     Заполнение массива #9
макросы срабатывают во время компиляции

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
using namespace std;
 
#define     FillArray(a, size)                  \
    for (int i=0; i<size; i++)                  \
    {                                           \
        a[i] = i+1;                             \
    }
 
 
int main()
{
    int a[100];
 
    FillArray(a, 100);
 
    for (int i=0; i<100; i++)
        cout << a[i] << " ";
 
    return 0;
}
Voivoid
674 / 277 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
14.09.2013, 11:00     Заполнение массива #10
Макросы разворачиваются в момент компиляции. Но в данном случае макрос развернутся в код инициализации массива, а этот код уже выполнится в момент выполнения программы. Т.е. задача не решена
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
14.09.2013, 11:19     Заполнение массива #11
Voivoid, ну как вариант, это написать небольшую программу которая создает текстовый файл и записывает в него числа от 1 до 100000. В таком виде:

1, 2, 3, 4, 5, .... 100000
а дальше все его содержимое вставить в основную программу между фигурными скобками
C++
1
int a[100000] = {1, 2, 3, 4, 5, }


Добавлено через 5 минут
правильно? или можно еще по другому сделать?
Voivoid
674 / 277 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
14.09.2013, 11:23     Заполнение массива #12
Можно и так. Только есть небольшая проблема в том, что каждый раз при изменении размера массива понадобится перезапускать программку для генерации нового файла.

Но есть решении которое не требует отдельных программ
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
14.09.2013, 12:05     Заполнение массива #13
Voivoid, а можно небольшую подсказку а то ничего в голову не приходит

это наверно как-то с STL связано?
Voivoid
674 / 277 / 12
Регистрация: 31.03.2013
Сообщений: 1,339
14.09.2013, 12:09     Заполнение массива #14
STL то тоже не волшебный и выполняется в момент времени-выполнения. Подсказка - метапрограммирование
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.09.2013, 12:21     Заполнение массива
Еще ссылки по теме:

Заполнение массива - C++
Заполнить массив двадцатью первыми натуральными числами, делящимися нацело на 13 или на 17 и находящимися в интервале, левая граница...

Заполнение массива - C++
Доброго дня, уважаемые форумчане! В очередной раз сталкиваюсь с небольшой проблемой, суть ее заключается в следующем. Есть два массива...

Заполнение массива - C++
Помогите пожалуйста переписать данный код что бы массив заполнялся таким образом: 15 19 22 24 25 10 14 18 21 23 6 9 13 17 20 ...

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

Заполнение массива - C++
Здравствуйте, подскажите, как заполнить массив например из 10 000 элементов по условию задачи мне нужно работать с числами от &quot;0001&quot; до...


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

Или воспользуйтесь поиском по форуму:
Algoritmer
155 / 95 / 13
Регистрация: 07.03.2013
Сообщений: 478
Записей в блоге: 1
14.09.2013, 12:21     Заполнение массива #15
Voivoid, вопрос полезности такой задачи. Зачем и когда это нужно?
Yandex
Объявления
14.09.2013, 12:21     Заполнение массива
Ответ Создать тему
Опции темы

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