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

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

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

массив С++ - C++

29.12.2011, 12:42. Просмотров 657. Ответов 10
Метки нет (Все метки)

Здравствуйте Ув.пользователи и администрация.
Имеется вот такая задача:
дан массив:
а)вывести его на экран
б)инвертировать, т.е. поменять местами 1ый элемент с последним 2ой с предпоследним и т.д. и вывести
в)посчитать количество элементов массива, превышающих 1ый элемент

Массив одномерный и динамический.
Программу должны выполнять функции (void main() должна содержать только ввод массива и соответственно вывод)
Заранее благодарен!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2011, 12:42     массив С++
Посмотрите здесь:

Вывести на печать массив X, массив Z, массив Y, произведение элементов массива X, упорядоченный массив Y - QBasic
Вывести на печать массив X, массив Z, массив Y, произведение элементов массива X, упорядоченный массив Y. ...

Сформировать массив, который будет состоять из чисел, входящих как в массив A, так и в массив B - C (СИ)
Задание: На основе исходных массивов A и B (n и m – рабочие размеры массивов) сформировать массив C, который будет состоять из чисел,...

Дан одномерный массив A из N элементов. Переписать положительные элементы массива в массив B, а отрицательные в массив C - Pascal
Дан одномерный массив A из N элементов. Переписать положительные элементы массива в массив B, а отрицательные в массив C.

Дан массив целых чисел а(12). Переписать в массив х четные, а в массив у нечетные элементы массива а - Turbo Pascal
Помогите пожалуйста решить эту задачу. Массив a выводит на печать. Я пишу a mod 2 = 0 , а он мне 41 ошибку выдает. Что делать? Вот...

Массив: Отсортировать полученный массив 3 способами: по строкам, по столбцам( возр.), 3) и весь массив - Delphi
Помогите, пожалуйста ,решить задачу. Очень нужно. Задан массив (4*6). Элементы задаются по правилу: если j>3, то Aij=i+j, иначе...

Массив: Как сделать так, чтобы результирующий массив представлял собой измененный по заданным правилам первый массив? - C++ Builder
Доброй ночи форумчане, очередной нубо-вопрос не требует отлагательств имеется одномерный массив, из которого по заданным условиям...

Вывести массив а(i, j), одномерный массив b(i) и полученный массив АВ с помощью функции Cells - VBA
Задача 1 Написать программу для решения следующей задачи: для числа n вводимого с клавиатуры (с помощью функции InputBox())...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.12.2011, 12:48     массив С++ #2
Цитата Сообщение от 1ive Посмотреть сообщение
посчитать количество элементов массива, превышающих 1ый элемент
Первый до или после инвертирования?
1ive
0 / 0 / 0
Регистрация: 29.12.2011
Сообщений: 10
29.12.2011, 12:49  [ТС]     массив С++ #3
после.
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.12.2011, 12:57     массив С++ #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <vector>
#include <ctime>
#include <cstdlib>
#include <iostream>
#include <iterator>
#include <algorithm>
 
int main()
{
    srand(time(nullptr));
    std::vector<int> v(10);
    std::generate(v.begin(), v.end(), [] { return rand() % 21; });
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    std::reverse(v.begin(), v.end());
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    std::cout << std::count_if(v.begin(), v.end(), [=](int num) { return num > *v.begin(); }) << std::endl;
    return 0;
}
Без C++0x
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
#include <vector>
#include <ctime>
#include <cstdlib>
#include <iostream>
#include <iterator>
#include <algorithm>
 
template <class T> T gen() { return rand() % 21; }
 
int main()
{
    srand(time(NULL));
    std::vector<int> v(10);
    std::generate(v.begin(), v.end(), gen<int>);
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    std::reverse(v.begin(), v.end());
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
    int count = 0;
    for(std::vector<int>::iterator it = v.begin(); it != v.end(); ++it)
        if(*it > *v.begin())
            ++count;
    std::cout << count << std::endl;
    return 0;
}
1ive
0 / 0 / 0
Регистрация: 29.12.2011
Сообщений: 10
29.12.2011, 14:14  [ТС]     массив С++ #5
soon? можно кое что уточнить?
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.12.2011, 14:16     массив С++ #6
Спрашивайте.
1ive
0 / 0 / 0
Регистрация: 29.12.2011
Сообщений: 10
29.12.2011, 14:18  [ТС]     массив С++ #7
вы сделали программу так что бы массив сам генерировал числа...и для понимания программа сложна (новичок я)...а как сделать что бы ввод массива осуществлялся с клавиатуры...?
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.12.2011, 14:22     массив С++ #8
Цитата Сообщение от soon Посмотреть сообщение
return rand() % 21;
Замените на
C++
1
2
3
int num;
std::cin >> num;
return num;
Если вы используете первый код, и на
C++
1
2
3
T num;
std::cin >> num;
return num;
если второй(первый c С++0x, второй без)
1ive
0 / 0 / 0
Регистрация: 29.12.2011
Сообщений: 10
29.12.2011, 14:44  [ТС]     массив С++ #9
большое спасибо...! а да и еще. коментарии ввести (если можно), т.е. когда выводим массив, когда инвертируем и наконец когда сравниваем с первым элементом
soon
2540 / 1305 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.12.2011, 14:47     массив С++ #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
25
26
#include <vector>
#include <ctime>
#include <cstdlib>
#include <iostream>
#include <iterator>
#include <algorithm>
 
template <class T> T gen() { return rand() % 21; }
 
int main()
{
    srand(time(NULL));
    std::vector<int> v(10);
    std::generate(v.begin(), v.end(), gen<int>);//генерируем массив
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));//выводим массив
    std::cout << std::endl;
    std::reverse(v.begin(), v.end());//инвертируем массив
    std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));//выводим массив
    std::cout << std::endl;
    int count = 0;
    for(std::vector<int>::iterator it = v.begin(); it != v.end(); ++it)//цикл сравнения
        if(*it > *v.begin())
            ++count;
    std::cout << count << std::endl;//вывод счетчика
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.12.2011, 14:50     массив С++
Еще ссылки по теме:

Построить массив d из элементов, которые входят как в массив a так и в массив b - C (СИ)
Дан массив a и b состоящий из n элементов. Построить массив d из элементов, которые входят как в массив a так и в массив b. Желательно с...

Массив. Разделить на два: массив элементов с четными и массив с нечетными индексами - Pascal ABC
VII.Одномерные массивы 50. Задан массив с количеством элементов N. Сформировать два массива: в первый включить элементы исходного массива...

Ввести массив А. В массив В перенести все элементы массива А, стоящие правее максимального элемента, и имеющие нечетный индекс. Массив В отсортировать - C++
Добрый Вечер! Написал первую часть программы по этому заданию&quot;Ввести массив А. В массив В перенести все элементы массива А, стоящие правее...

Двумерный массив.Дан массив 5 х 5. Определить сумму элементов тех строк, где диагональный элемент равен нулю и записать их в отдельный массив. - Turbo Pascal
помогите составить программу. во задание:Дан массив 5 х 5. Определить сумму элементов тех строк, где диагональный элемент равен нулю и...

Дан массив С (N). Нечетные элементы поместить в массив A, а четные в массив В - Pascal ABC
Ребят помогите решить задачу на паскале и на бейсике. Дан массив С (N). Нечетные элементы поместить в массив A, а четные в массив...


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

Или воспользуйтесь поиском по форуму:
1ive
0 / 0 / 0
Регистрация: 29.12.2011
Сообщений: 10
29.12.2011, 14:50  [ТС]     массив С++ #11
премного благодарен!
Yandex
Объявления
29.12.2011, 14:50     массив С++
Ответ Создать тему
Опции темы

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