Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 16.06.2013
Сообщений: 6
1

Задача на массивы c++

25.11.2013, 10:41. Просмотров 440. Ответов 3
Метки нет (Все метки)

В одномерном массиве, состоящем из n целых элементов, вычислить:
1) номер максимального элемента массива;
2) произведение элементов массива, расположенных между первым и вторым нулевыми элементами.
Преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоявшие в нечетных позициях, а во второй половине - элементы, стоявшие в четных позициях.


p.s. помогите пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.11.2013, 10:41
Ответы с готовыми решениями:

Задача на массивы
Вопрос по условию задачи (с самим решением проблем нет) Даны массивы l1, ... , l15 ; m1, ... , m8...

Задача на массивы
Помогите с задачей пожалуйста :( Буду очень благодарна :) Если мона то с пояснениями :)

Задача на массивы
Даны 2 массива по 15 элементов. определить величину S по правилу: S:= 1,если MAX(x(i))>MAX(y(i)),...

Задача на массивы
7. Заданы вес e пустой копилки и вес v копилки с монетами. В копилке могут находиться монеты n...

3
95 / 747 / 279
Регистрация: 11.04.2012
Сообщений: 971
25.11.2013, 12:10 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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
 
#define N 20
 
int main(int argc, char* argv[])
{
    int A[N+1] = { 4, 5, 6, 9, 1, 0, 8, 3, 2, 4, 6, 9, 0, 8, 7, 4, 6, 5, 3, 4 };
 
    for (int z = 0; z < N; z++)
        printf("%d ",A[z]);
 
    printf("\n");
 
    int max = 0;
    for (int k = 0; k < N; k++)
        if (A[k] > A[max]) max = k;
 
    printf("A[%d] = %d\n",max,A[max]);
 
    for (int v = 0; v < N; v++)
    {
        int mul = 1, t = v+1;
        while (A[t] != 0 && t < N && A[v] == 0)
            mul*=A[t++];
 
        if (A[v] == 0 && t < N)
            printf("mul = %d\n",mul);
    }
 
    int n = 0;
    for (int i = 1; i < N && n < N/2; i++)
    {
        for (int r = N-1; r >= n && i % 2; r--)
            A[r+1] = A[r];
 
        int val = A[i+1];
        for (int t = i+1; t < N+1 && i % 2; t++)
            A[t] = A[t+1];
 
        if (i % 2) A[n++] = val;
    }
 
    for (int s = 0; s < N; s++)
        printf("%d ",A[s]);
 
    printf("\n");
 
    _getch();
 
    return 0;
}
http://codepad.org/IUMB5YnX
1
Миниатюры
Задача на массивы  c++  
6223 / 3524 / 898
Регистрация: 28.10.2010
Сообщений: 5,926
25.11.2013, 12:27 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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <algorithm>
#include <numeric>
#include <functional>
#include <iostream>
#include <iterator>
 
template < typename T >
class toggle : public std::unary_function<T, bool>
{
    int i;
public:
    toggle() : i(0)
    {
    }
 
    bool operator () (const T& value)
    {
        return ++i & 1;
    }
};
 
int main()
{
    int a[] = { 1, 2, 0, 3, 4, 0, 5, 6 };
    std::cout << "Max number position: " 
              << 1 + std::distance(std::begin(a), 
                                   std::max_element(std::begin(a), 
                                                    std::end(a)))
              << std::endl;
    int* first_zero = std::find(std::begin(a), std::end(a), 0);
    int* second_zero = first_zero;
    if (first_zero != std::end(a))
    {
        std::advance(first_zero, 1);
        std::advance(second_zero, 1);
        second_zero = std::find(second_zero, std::end(a), 0);
    }
    std::cout << "Mul between first and second zero elements: " << 
        std::accumulate(first_zero, second_zero, 1, std::multiplies<int>()) << std::endl;
    std::stable_partition(std::begin(a), std::end(a), toggle<int>());
    std::copy(std::begin(a), std::end(a), std::ostream_iterator<int>(std::cout, " "));
}
http://ideone.com/lin3El
1
0 / 0 / 0
Регистрация: 16.06.2013
Сообщений: 6
25.11.2013, 19:58  [ТС] 4
Мальчишки, огромное спасибо ^_^, можно у вас ещё кое что спросить?
что должно быть в курсовом\реферате по этой задаче, просто мне преподаватель сказал написать, а как не объяснил.

p.s. я заочница(
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.11.2013, 19:58

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

Задача на массивы
Дана матрица размерностью N на M, где большинство элементов равно 0. Нужно все элементы матрицы...

Задача на массивы
Очень срочно нужно, не разбираюсь вообще. Пожалуйста помогите Z=А/(B+1) и ко всему выражению +С,...

Задача на массивы
Размерность массива и диапазон (от/до) их целочисленных значений вводит пользователь, элементы...

Задача на массивы
Привет, народ, помогите плиз с задачей: Заполнить массив целыми числами в промежутке то -15 до...

Задача на массивы
Даны целое n&gt;0 и последовательность из n вещественных чисел, среди которых есть хотя бы одно...

Задача на массивы
Вот условие: Массив из строчек в обратном порядке 1. Создать массив на 10 строчек. 2. Ввести с...


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

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

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