0 / 0 / 1
Регистрация: 27.12.2014
Сообщений: 13

Нужно переделать статический массив в динамический

10.01.2015, 11:11. Показов 1542. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста! Нужно переделать статический массив в динамический.
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include "stdafx.h"
#include "stdio.h"
#include "iostream"
#include "iomanip"
using namespace std;
 
int main()
{
    const int size = 10;
    double arr[size];
    double sum;
    double min;
    int i, j;
    int _tmain(int argc, _TCHAR* argv[])
 
 
        // формирование массива
;for (i = 0; i < size; i++)
        {
        setlocale(LC_ALL, "Russian");
            cout << "arr[" << i << "]=";
            cin >> arr[i];
        }
 
        // эхо-печать массива
        cout << "Введенный массив" << endl;
        for (i = 0; i < size; i++)
        {
            cout << i << " " << setprecision(3) << arr[i] << endl;
        }
 
        // поиск минимального элемента
        for (i = 0, min = arr[0]; i < size; i++)
            if (arr[i] < min)
                min = arr[i];
 
        // поиск первого положительного элемента
        for (i = 0; i < size && arr[i] <= 0; i++)
            ;
        sum = 0; // если нет вообще положительных элементов
 
        //поиск последнего положительного элемента
        if ((i < size - 2) && (arr[i]>0)) // а есть ли смысл?
        {
            for (j = size - 1; j >= 0 && arr[j] <= 0; j--)
                ;
            if ((arr[j] > 0) && (--j > i))
                while (j > i)
                {
                // сумма элементов между первым и последним положительным
                sum += arr[j--];
                }
        }
 
        for (i = j = size - 1; i >= 0; --i)
        {
            if (arr[i] != 0)
            {
                if (i != j)
                    arr[j] = arr[i];
                --j;
            }
        }
        for (i = 0; i <= j; i++) // заполним начало нулями
            arr[i] = 0;
 
        // печать нового массива
        cout << endl;
        cout << "Новый массив" << endl;
        for (i = 0; i < size; i++)
        {
            cout << i << " " << setprecision(3) << arr[i] << endl;
        }
        cout << "Минимальный элемент =" << setprecision(3) << min << endl;
        cout << "Сумма между первым и последним положительными элементами = ";
        cout << setprecision(3);
        cout << sum << endl;
        system("pause");
        return 0;
    }
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.01.2015, 11:11
Ответы с готовыми решениями:

Переделать статический массив в динамический
Помогите пожалуйста переделать статический массив в динамический #include &lt;iostream&gt; #include &lt;iomanip&gt; #define N 6 ...

Переделать статический массив в динамический
Помогите переделать статический массив в динамический #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; #include...

Переделать статический массив в динамический
Помогите переделать статический массив в динамический. #include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; using...

6
Модератор
Эксперт С++
 Аватар для zss
13759 / 10955 / 6487
Регистрация: 18.12.2011
Сообщений: 29,213
10.01.2015, 11:37
Цитата Сообщение от rog3r Посмотреть сообщение
C++
1
2
3
4
5
int main() 
{ 
     const int size = 10; double arr[size]; 
     double sum; double min; int i, j; 
     int _tmain(int argc, _TCHAR* argv[])
// что Вы хотели сказать последней (пятой) строчкой (14 в исходном коде)?
А чтобы массив стал динамическим достаточно
C++
1
 double arr[size];
заменить на
C++
1
 double* arr=new double[size];
0
0 / 0 / 1
Регистрация: 27.12.2014
Сообщений: 13
10.01.2015, 12:54  [ТС]
мне нужно
C++
1
const int size = 10;
заменить так, чтобы я сам мог вводить количество массивов (оно сейчас постоянное и равно 10)
0
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
10.01.2015, 12:55
Лучший ответ Сообщение было отмечено rog3r как решение

Решение

C++
1
2
3
int size = 0;
std::cin >> size;
double * arr = new int[size];
0
3 / 3 / 1
Регистрация: 25.12.2014
Сообщений: 63
10.01.2015, 13:02
C++
1
2
3
4
5
6
int _tmain(int argc, _TCHAR* argv[])
 
 
        // формирование массива
;for (i = 0; i < size; i++)
        {
Зачем вам в функции int main() внутри вот это:
C++
1
int t_main(int argc, _TCHAR* argv[])
Думаю, что знаю, зачем. Наверно, должно было быть так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int _tmain(int argc, _TCHAR* argv[]) 
{
    int size;
    cin>>size;//ввод с клавиатуры
    double* arr=new double[size]; //объявление динамического массива размером в size
    double sum;
    double min;
    int i, j;
 
 
 
        // формирование массива
for (i = 0; i < size; i++)
/* .... */
 
}
0
0 / 0 / 1
Регистрация: 27.12.2014
Сообщений: 13
10.01.2015, 13:24  [ТС]
Цитата Сообщение от unit37 Посмотреть сообщение
Зачем вам в функции int main() внутри вот это:
Код C++
1
int t_main(int argc, _TCHAR* argv[])
Он из шаблона наверно остался и незаметно спустился вниз

Добавлено через 15 минут
Цитата Сообщение от Тамика Посмотреть сообщение
double * arr = new int[size];
только вместо int нужно double. Спасибо!
0
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
10.01.2015, 13:27
rog3r, у Вас в коде double, потому я и использовала этот тип.
Не за что.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.01.2015, 13:27
Помогаю со студенческими работами здесь

Переделать статический массив структур в динамический
Имею структуру из 8 эл-ов (массивов чаров и 2 подструктуры). Имею исходные данные (5 штук, строк с ними) под эту структуру. Массив с этими...

Переделать динамический массив на статический массив
#include &lt;iostream&gt; #include &lt;cstdlib&gt; using namespace std; int main() { int dim, counter_1 = 1, counter_2 =...

Нужно создать статический массив строк как статический массив указателей на строки. Условние ниже -->
Слова английского текста рассортировать по возрастанию количества заданной буквы в слове. Слова с одинаковым количеством такой буквы...

Динамический и статический массив
Подскажите, в чем разница. Имеется статический массив, который просто задается: long mas = { 0 }; Т.е. просто вставляем массив...

Автоматический, статический, динамический массив
Всем хай! Сходу к делу! Мне казалось, что автоматический и статический массив - синонимы, т е это массивы, размер которых известен на...


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

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

Новые блоги и статьи
Исключения в Java: советы, примеры кода и многое другое
Javaican 18.05.2025
Исключения — это объекты, созданные когда программа сталкивается с непредвиденной ситуацией: файл не найден, сетевое соединение разорвано, деление на ноль. . . Список можно продолжать до бесконечности. . . .
Как сделать SSO (Single Sign-On) в C# приложении
stackOverflow 18.05.2025
SSO — это механизм, позволяющий пользователю пройти аутентификацию один раз и получить доступ к нескольким приложениям без повторного ввода учетных данных. Вы наверняка сталкивались с ним, когда. . .
Kubernetes с Apache Flink для обработки данных в реальном времени
Mr. Docker 17.05.2025
Kubernetes — это целая философия управления распределёнными приложениями. В отличие от "примитивных" решений вроде Docker Swarm, K8s (как его ласково называют в тусовке DevOps-инженеров) предлагает. . .
Использование декораторов в Python
py-thonny 17.05.2025
Если вы когда-нибудь задумывались о том, как красиво расширить функциональность кода без лишней возни и дублирования, декораторы в Python — та самая волшебная палочка, которую вы искали. По сути, это. . .
Реализация многопоточных сетевых серверов на Python
py-thonny 16.05.2025
Когда сталкиваешься с необходимостью писать высоконагруженные сетевые сервисы, выбор технологии имеет критическое значение. Python, со своей элегантностью и высоким уровнем абстракции, может. . .
C# и IoT: разработка Edge приложений с .NET и Azure IoT
UnmanagedCoder 16.05.2025
Мир меняется прямо на наших глазах, и интернет вещей (IoT) — один из главных катализаторов этих перемен. Если всего десять лет назад концепция "умных" устройств вызывала скептические улыбки, то. . .
Гибридные квантово-классические вычисления: Примеры оптимизации
EggHead 16.05.2025
Гибридные квантово-классические вычисления — это настоящий прорыв в подходах к решению сложнейших вычислительных задач. Представьте себе союз двух разных миров: классические компьютеры, с их. . .
Использование вебсокетов в приложениях Java с Netty
Javaican 16.05.2025
HTTP, краеугольный камень интернета, изначально был спроектирован для передачи гипертекста с минимальной интерактивностью. Его главный недостаток в контексте современных приложений — это. . .
Реализация операторов Kubernetes
Mr. Docker 16.05.2025
Концепция операторов Kubernetes зародилась в недрах компании CoreOS (позже купленной Red Hat), когда команда инженеров искала способ автоматизировать управление распределёнными базами данных в. . .
Отражение в C# и динамическое управление типами
stackOverflow 16.05.2025
Reflection API в . NET — это набор классов и интерфейсов в пространстве имён System. Reflection, который позволяет исследовать и манипулировать типами, методами, свойствами и другими элементами. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru