Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2018, 14:26   #1
Виктор-76
 
Регистрация: 02.05.2018
Сообщений: 3
По умолчанию Замена статического массива на динамический

Помогите, пожалуйста, преобразовать статический массив в динамический
Код:
#include "stdafx.h"
#include <iostream>
using namespace std;
 
int main()
{   
    setlocale(0,"RUS");
    int a[100],min;
    for (int i=0; i<100; ++i)
    {
       a[i] = rand()%200-100;
        cout<<a[i]<<"\n";
    }
    min=a[0];
    for(int i=1;i<100; i++)  if(a[i]<min) min=a[i];  
    cout<<endl<<"Минимальное число = "<<min<<endl<<"Получившийся массив: ";
    for(int i=0;i<100; i++){
        if(a[i]>0) a[i]=min;
        cout<<abs(a[i])<<" ";
    }
    return 0;
}
Виктор-76 вне форума Ответить с цитированием
Старый 08.06.2018, 14:45   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,706
По умолчанию

Чем помочь? new и delete написать?
p51x вне форума Ответить с цитированием
Старый 09.06.2018, 10:55   #3
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию

На держи))) спецально для тех кто не знает чем помочь и как помочь пособие))
delete писать не обязательно так как прогу закрываешь память сама удалится смысла не вижу ,но если нужно докину мне не трудно))

Код:
#include <iostream>
using namespace std;

int main()
{
    setlocale(0,"RUS");
    cout<<"введите количество элементов";
    int n;// количество элементов
    cin>>n; // считывание количество элементов
   int  *a = new int[n]; // динамический массив
int min;
    for (int i=0; i<n; ++i)
    {
       a[i] = rand()%200-100;
        cout<<a[i]<<"\n";
    }
    min=a[0];
    for(int i=1;i<n; i++)  if(a[i]<min) min=a[i];
    cout<<endl<<"Минимальное число = "<<min<<endl<<"Получившийся массив: ";
    for(int i=0;i<n; i++){
        if(a[i]>0) a[i]=min;
        cout<<abs(a[i])<<" ";
    }
    return 0;
}
Александр121 вне форума Ответить с цитированием
Старый 09.06.2018, 17:15   #4
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Цитата:
Сообщение от Александр121 Посмотреть сообщение
delete писать не обязательно так как прогу закрываешь память сама удалится
Разве динамическую память не нужно очищать вручную? Это под статические переменные выделяется память при запуске программы и освобождается при завершени
Вадим Мошев вне форума Ответить с цитированием
Старый 09.06.2018, 17:39   #5
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию

Также она удаляется,не нужно
Александр121 вне форума Ответить с цитированием
Старый 09.06.2018, 17:47   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,706
По умолчанию

Да-да, не удаляйте никогда. И деструкторы тоже не вызывайте, и ресурсы не отпускайте, и т.д.
p51x вне форума Ответить с цитированием
Старый 09.06.2018, 20:09   #7
alexzk
Форумчанин
 
Регистрация: 12.04.2017
Сообщений: 889
По умолчанию

Цитата:
Сообщение от Александр121 Посмотреть сообщение
Также она удаляется,не нужно
А если код будет на bare metal, или скажем, на ардуино ? (без наличия ос) - вот тут ваша лень и аукнет.
alexzk вне форума Ответить с цитированием
Старый 10.06.2018, 07:46   #8
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

Александр121 что вы ему голову морочите?
память нужно освобождать. это является хорошим стилем программирования. и можно не беспокоится освободит ли память ос или нет.
SAMOUCHKA вне форума Ответить с цитированием
Старый 16.06.2018, 00:59   #9
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию

Это является хорошим стилем когда ты пишешь в яндексе в стиле ооп а не когда пишешь типовые программы.
Александр121 вне форума Ответить с цитированием
Старый 16.06.2018, 01:11   #10
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Цитата:
Сообщение от Александр121 Посмотреть сообщение
Это является хорошим стилем когда ты пишешь в яндексе в стиле ооп а не когда пишешь типовые программы.
Минуснул по полной программе. И добавил в игнор-лист.
Black Fregat вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
из статического массива вывести элементы в динамический yana1213 Помощь студентам 2 20.05.2014 23:02
Передача процедуре статического массива cod48 Общие вопросы Delphi 1 24.08.2010 21:07
переделать массив из статического в динамический Saka Помощь студентам 13 21.12.2009 21:01
Помогите создать динамический массив из статического в готовой проге!) Sitis Помощь студентам 12 16.04.2009 11:04
Замена статического массива на динамический Славный Общие вопросы Delphi 1 11.06.2008 00:19