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

В массиве каждый третий элемент заменить полусуммой двух предыдущих (с использованием указателей) - C++

Восстановить пароль Регистрация
 
gusar
0 / 0 / 0
Регистрация: 27.10.2014
Сообщений: 19
24.11.2014, 09:56     В массиве каждый третий элемент заменить полусуммой двух предыдущих (с использованием указателей) #1
Заранее большое спасибо.(написать программу с использованием указателей)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2014, 09:56     В массиве каждый третий элемент заменить полусуммой двух предыдущих (с использованием указателей)
Посмотрите здесь:

C++ Если в данном массиве нет отрицательных элементов, то сформировать новый массив: каждый элемент которого является суммой предыдущих элементов.
C++ сформируйте и выведите на экран массив из n элементов, где каждый элемент массива равен произведению двух предыдущих и его порядкового номера
Дан массив А(12). Каждый третий элемент массива заменить суммой двух предшествующих. C++
C++ Посчитать сумму всех отрицательных элементов матрицы и заменить суммой каждый третий элемент
В массиве A (n) каждый элемент, кроме первого заменить суммой всех предыдущих элементов C++
C++ Каждый равный нулю элемент массива заменить полусуммой его соседних элементов
Создать третий массив, в котором собрать элементы двух предыдущих C++
Заменить каждый элемент массива суммой предыдущих C++
С использованием указателей записать в третий массив сумму соответствующих элементов двух массивов C++
Из двух массивов создать третий, включающий уникальные элементы первого, с использованием указателей C++
Каждый элемент массива, кроме первого, заменить суммой всех его предыдущих элементов C++
C++ В бинарном файле с целыми числами заменить элемент с максимальным значением на сумму двух предыдущих

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Extrim88
 Аватар для Extrim88
50 / 50 / 11
Регистрация: 08.02.2013
Сообщений: 189
24.11.2014, 10:18     В массиве каждый третий элемент заменить полусуммой двух предыдущих (с использованием указателей) #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
54
55
56
57
#include <iostream>
#include <cstdlib>
#include <ctime>
 
int main()
{
    setlocale(LC_ALL, "RUS");
 
    std::cout << "Введите размерность массива: ";
    int n; //размерность массива
    std::cin >> n;
    
    if (n < 3)
       {
        std::cout << "Размерность массива не позволяет реализовать требования задачи!" << std::endl;
        exit(EXIT_FAILURE);
       }    
 
    int* pArray = new int[n]; //динамически выделим память под массив
 
    //Заполним массив случайными числами в диапазоне 0 - 100
    std::srand(time(0));
    for (int i = 0; i < n; ++i)
    {
        *(pArray + i) = std::rand() % 99;
    }
 
    //Отобразим массив
    std::cout << "Исходный массив: ";
    for (int i = 0; i < n; ++i)
    {
        std::cout << *(pArray + i) << " ";
    }
 
    std::endl;
 
    //Выполним основную задачу - каждый 3-й элемент заменим полусуммой 2-х предыдущих
    for (int i = 0; i < n; ++i)
    {
        if (i && i % 3 == 0)
        {
            *(pArray + i) = (*(pArray + i - 1) + *(pArray + i - 2)) / 2; 
        }
    {
 
    //Отобразим модифицированный массив
    std::cout << "Измененный массив: ";
    for (int i = 0; i < n; ++i)
    {
        std::cout << *(pArray + i) << " ";
    }
 
    delete[] pArray; //освободим ранее выделенную память
 
    system("pause");
    return 0;
}
Max Dark
В поиске работы
 Аватар для Max Dark
1547 / 1400 / 501
Регистрация: 09.10.2013
Сообщений: 3,185
Записей в блоге: 8
Завершенные тесты: 2
24.11.2014, 10:26     В массиве каждый третий элемент заменить полусуммой двух предыдущих (с использованием указателей) #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
template <typename type>
void proc(type* first, type* last) {
    static_assert(std::is_arithmetic<type>::value, "template arg is not arithmetic");
    type* p1, *p2, *p3;
    while(true) {
        p1 = first;
        p2 = p1 + 1;
        p3 = p2 + 1;
        if (p1 == last || p2 == last || p3 == last) break;
        *p3 = *p1/type(2) + *p2/type(2);
        first += 3;
    }
}
как то так
Yandex
Объявления
24.11.2014, 10:26     В массиве каждый третий элемент заменить полусуммой двух предыдущих (с использованием указателей)
Ответ Создать тему
Опции темы

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