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

Построить массив из заданного числа элементов - C++

Восстановить пароль Регистрация
 
Hunter9494
 Аватар для Hunter9494
21 / 18 / 3
Регистрация: 29.10.2012
Сообщений: 154
22.10.2013, 14:27     Построить массив из заданного числа элементов #1
программа должна построить массив из заданного числа элементов .но она всегда выводить 10 . в чем дело?
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
#include "stdafx.h"
#include "iostream"
using namespace std;
void masiv(int *a,int n)
{
    for(int i=0;i<n;i++)
    cout<<*a++<<"  "; 
    
 
}
 
void main()
{
    setlocale(LC_ALL,"RUS");
    cout<<"Ведите длину массива"<<endl;
    int b;
    cin>>b;//длина массива
    int a[]={0};//объевляем массив с неоприделенным количеством элементов
    for(int i=0;i<b;i++)
        a[i]=rand()%15;//заполняем массив произвольными числами от 0 до 15
 
    masiv(a,b);//передаем массив а и длину массива в функцию masiv
        system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2013, 14:27     Построить массив из заданного числа элементов
Посмотрите здесь:

Одномерный массив, элементы меньше заданного числа C++
Создать массив из индексов элементов матрицы, меньших заданного числа C++
C++ Одномерный массив: Вывести на экран номера всех элементов больше заданного числа
C++ Дан массив упорядоченных по возрастанию целых чисел. разработать алгоритм бинарного поиска заданного числа, результат номер искомого числа или 0 если
C++ C++ Построить последовательность заданного количества элементов
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11819 / 6798 / 769
Регистрация: 27.09.2012
Сообщений: 16,870
Записей в блоге: 2
Завершенные тесты: 1
22.10.2013, 14:37     Построить массив из заданного числа элементов #2
Цитата Сообщение от Hunter9494 Посмотреть сообщение
int a[]={0};//объевляем массив с неоприделенным количеством элементов
уверены в этом?
Anton_Kretov
 Аватар для Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
22.10.2013, 14:50     Построить массив из заданного числа элементов #3
На, попробуйте:
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
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
//void showArray(int *arrayWS, numOfElems);
void showArray(int *arrayWS, int numOfElems) {
    for(int i = 0; i < numOfElems; i++) cout << "arrayWE[" << i << "] = " << arrayWS[i] << "\n";
 
}
 
 
int main()
{
    setlocale(LC_ALL,"RUS");
    int numOfElems;
    cout << "Введите длину массива: ";
    cin >> numOfElems;
    int arrayWE[numOfElems];
    for(int i = 0; i < numOfElems; i++) arrayWE[i] = rand() % 15;
    showArray(arrayWE, numOfElems);
 
    return 0;
}
Добавлено через 1 минуту
И да, объявить массив неизвестной длины вы можете, создав пустые скобки. То, что указали вы, это вы инициализировали массив с 1 элементом - 0.

Добавлено через 2 минуты
Цитата Сообщение от Hunter9494 Посмотреть сообщение
C++
1
2
3
    int b;
    cin>>b;//длина массива
    int a[]={0};//объевляем массив с неоприделенным количеством элементов
Кто вас учил так писать? Неужели нельзя додуматься написать так хотя-бы:

Цитата Сообщение от Hunter9494 Посмотреть сообщение
C++
1
2
3
    int b;
    cin >> b; //длина массива
    int a[b]; //обЪЯвляем массив с неопрЕделенным количеством элементов
И да, советую выучить русский язык!
Hunter9494
 Аватар для Hunter9494
21 / 18 / 3
Регистрация: 29.10.2012
Сообщений: 154
22.10.2013, 15:11  [ТС]     Построить массив из заданного числа элементов #4
Цитата Сообщение от Anton_Kretov Посмотреть сообщение
int arrayWE[numOfElems];
если так написать будет ошибка "требуется константное выражение")

Добавлено через 2 минуты
Цитата Сообщение от Croessmah Посмотреть сообщение
уверены в этом?
а как надо тогда?
Anton_Kretov
 Аватар для Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
22.10.2013, 15:53     Построить массив из заданного числа элементов #5
Цитата Сообщение от Hunter9494 Посмотреть сообщение
если так написать будет ошибка "требуется константное выражение")

Добавлено через 2 минуты


а как надо тогда?
У меня нет никакой ошибки. А у вас есть?

Добавлено через 6 минут
Можете сделать через указатели:

C++
1
int *arrayWE = new int[numOfElems];
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11819 / 6798 / 769
Регистрация: 27.09.2012
Сообщений: 16,870
Записей в блоге: 2
Завершенные тесты: 1
22.10.2013, 18:20     Построить массив из заданного числа элементов #6
Цитата Сообщение от Anton_Kretov Посмотреть сообщение
У меня нет никакой ошибки. А у вас есть?
потому что в C++ так нельзя делать.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2013, 18:31     Построить массив из заданного числа элементов
Еще ссылки по теме:

Есть ли среди элементов заданного массива простые числа? Если да, то вывести номера этих элементов C++
C++ Задан массив целых чисел. Вычислить сумму элементов, которые больше заданного числа
Найти количество элементов, меньших заданного числа и сумму элементов, расположенных после максимального C++

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

Или воспользуйтесь поиском по форуму:
Anton_Kretov
 Аватар для Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
22.10.2013, 18:31     Построить массив из заданного числа элементов #7
Цитата Сообщение от Croessmah Посмотреть сообщение
потому что в C++ так нельзя делать.
Тогда прошу сказать, как можно.
Yandex
Объявления
22.10.2013, 18:31     Построить массив из заданного числа элементов
Ответ Создать тему
Опции темы

Текущее время: 14:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru