Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Удутф
19 / 1 / 2
Регистрация: 25.06.2014
Сообщений: 90
#1

Введение массива пользователем и подсчет введенных элементов - C++

08.07.2014, 02:53. Просмотров 403. Ответов 7
Метки нет (Все метки)

Кто нибудь! Пожалуйста! Нужна помощь!!
Как подсчитать количество элементов в произвольно введенном массиве не используя векторов и прочих прибамбасов!
С последующией перестановкой элементов
В прилагаемом коде массив задан а мне нужен произвольный! И не знаю как!!!

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <iostream>
using namespace std;
 
int main()
{
//declare array
 
 int a[] = { 10, 20, 30, 40, 50, 60 };
 int x,i,j,temp;
 
 
// determine the size
 
x = sizeof(a) / sizeof(a[0]);
 
// original array output
 
 
cout <<"Original array: " << endl;
 
for(i = 0; i < x; i++)
{
    cout << a[i]<< endl;
}
cout << ("\n");
 
cout << "Array after exchange:" << endl;
 
 
 
  for(i = 0, j = x-1; i < x && i<j; i++, j--)
{
    temp = a[j];
    a[j] = a[i];
    a[i] = temp;
 
}
 
  for(i = 0; i < x; i++) {
    cout<<a[i]<<endl;
  }
  return 0;
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2014, 02:53
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Введение массива пользователем и подсчет введенных элементов (C++):

Определить количество отрицательных среди введенных пользователем элементов
Составить программ,определяющую количество отрицательных введеных пользователем...

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

Введение произвольного количества элементов массива
Собственно, как это реализовать? Кто не понял, пример: вводим элементы массива...

Введение элементов массива пока не будет введен 0 и выдача на экран
Подскажите пожалуйста как это сделать.. сложность в том, что нужно вводить...

Найти максимимальний элемент в массиве (введение элементов массива заканчивается при вводе нуля )
Всем привет. нужна помощь. надо написать программу , которая находит...

Функция: подсчет числа отрицательных элементов массива, и суммы положительных элементов матрицы
написать функцию подсчета отрицательных элементов одномерного массива А(6) и...

7
4unkur
16 / 16 / 10
Регистрация: 16.06.2014
Сообщений: 177
08.07.2014, 03:36 #2
Я так понял нужно ввести несколько цифр и из них должен сформироваться массив
1
Удутф
19 / 1 / 2
Регистрация: 25.06.2014
Сообщений: 90
08.07.2014, 03:50  [ТС] #3
да пользователь набирает произвольные числа
формирует массив напр 10 25 32 4 или 5 19 45 65 87
Можно сделать так чтобы программа подсчитала количество введенных элементов?
Для дальнейшего использования в перестановках
0
4unkur
16 / 16 / 10
Регистрация: 16.06.2014
Сообщений: 177
08.07.2014, 03:57 #4
push_back()
но это для vector
для обычного массива, я незнаю.
Самому интересно))
0
Удутф
19 / 1 / 2
Регистрация: 25.06.2014
Сообщений: 90
08.07.2014, 04:08  [ТС] #5
sizeof() ???
0
4unkur
16 / 16 / 10
Регистрация: 16.06.2014
Сообщений: 177
08.07.2014, 04:50 #6
Лучший ответ Сообщение было отмечено Удутф как решение

Решение

количество элементов вектора определяется с помощью метода size()

Добавлено через 33 минуты
Не очень динамический массив, но все же))
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
26
27
28
29
30
31
32
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
int main()
{
    string *a;
    a = new string [1000];                             //будут проблемы при вводе 1001-го элемента
    cout << "enter numbers (x for end):\n";
    
    int i=0;
    while(true)
    {
        cin >> a[i];
        if(a[i] == "x")
            {
                break;
            }
        i++;        
    }
    int *mass = new int[i];
    
    for(int j=0; j<i; ++j)
    {
        mass[j] = atoi(a[j].c_str());       
    }
    
    cout << endl << "amount of elemets you\'ve entered: " << i << endl;
    delete [] a;
    delete [] mass;
    return 0;
}
1
Удутф
19 / 1 / 2
Регистрация: 25.06.2014
Сообщений: 90
10.07.2014, 08:04  [ТС] #7
@4unkur Спасибо большое. Все работает
0
4unkur
16 / 16 / 10
Регистрация: 16.06.2014
Сообщений: 177
10.07.2014, 13:38 #8
да не за что, просто в голову пришла идеа. А эту штуку я вообще не знаю:
C++
1
atoi(a[j].c_str());
погуглил и нашел ))
0
10.07.2014, 13:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2014, 13:38
Привет! Вот еще темы с решениями:

Обработка значений, введенных пользователем
Проблема вот в чем, есть (например) команда в скрипте - &quot;system(&quot;start...

корректировка уже введенных пользователем данных
Работаю в консоли. Пользователю выдаются показатели бух.баланса, после чего...

Сравнить два числа, введенных пользователем
Написать программу, которая сравнивает два введенных с клавиатуры числа....

Найти среднее арифметическое всех элементов массива введенных с клавиатуры
1)в массиве из 5 элементов ввести все элементы с клавиатуры в цикле for и...


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

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

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