0 / 0 / 0
Регистрация: 23.12.2007
Сообщений: 24

Динамическое распределение памяти

17.02.2008, 10:27. Показов 6347. Ответов 14
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дан динамический целочисленный массив y1,y2,....,yn. и и динамическая символьная переменная h. Если значение h равно '+', преобразовать исходный массив к виду
yn,yn-1,...,y2,y1; иначе не менять порядок элементов.


Так вот незнаю как вот это сделать:
y1,y2,....,yn преобразовать к виду yn,yn-1,...,y2,y1

Подскажите пожалуйста как преобразовать!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.02.2008, 10:27
Ответы с готовыми решениями:

Распределение памяти. Динамическое выделение памяти
an-1 an-2 ... a2

Динамическое распределение памяти
Добрый вечер! Помогите пожалуйста! Поставлена такая задача: Разработать программу, которая в матрице размерности n*n меняет местами...

Динамическое распределение памяти С++
Задание: Создать 3 динамических переменных разного типа. Заполнить их некоторыми значениями. Вывести значение динамических переменных на...

14
Почетный модератор
 Аватар для Lord_Voodoo
8784 / 2537 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
17.02.2008, 10:35
ну создай второй такой же массив и перелей туда задом наперед исходный массив...
0
0 / 0 / 0
Регистрация: 23.12.2007
Сообщений: 24
17.02.2008, 12:14  [ТС]
А пример можно
0
Почетный модератор
 Аватар для Lord_Voodoo
8784 / 2537 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
17.02.2008, 13:00
а у тебя сырцы есть этой задачи, просто лень новый код набивать... там надо объявить два массива, считать в один входные данные, а потом код типа такого:
Code
1
2
3
4
5
  int j = 0;
  for(int i = n - 1; i >= 0; i--){
    arr2[i] = arr1[j];
    j++;
  }
0
0 / 0 / 0
Регистрация: 23.12.2007
Сообщений: 24
17.02.2008, 13:08  [ТС]
Вот есть немного там в ифе оно должно изменятся.
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
#include <stdio.h>
#include <conio.h>
#include <malloc.h>
#include <alloc.h>
int main()
{
    int *y,n,i,*h;
    printf("Vvedite koli4estvo elementov massiva n=:");
    scanf("%d",&n);
    y=(int*)calloc(n,sizeof(int));
    printf("Vvedite massiv:");
    for(i=0;i<n;i++)
    scanf("%d",y+i);
    printf("\n");
    printf("Elementi i ih adresa:\n");
    for(i=0;i<n;i++)
    printf("|%3.1d   |  %p   ",*(y+i),y+i);
    printf("\n");
    h=(int*)calloc(n,sizeof(int));
    printf("\nVvedite zna4enie simvol'noi peremennoi h, libo '+' libo 4to pojelaete:\n");
    if(h=='+')
    {}
    getch();
 
}
0
Почетный модератор
 Аватар для Lord_Voodoo
8784 / 2537 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
17.02.2008, 13:31
Code
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
#include <stdio.h>
#include <iostream>
#include <conio.h>
#include <malloc.h>
int main()
{
int *y1;
int *y2, n;
char h;
printf("Vvedite koli4estvo elementov massiva n=:");
scanf("%d",&n);
y1=(int*)malloc(n*sizeof(int));
y2=(int*)malloc(n*sizeof(int));
printf("Vvedite massiv:");
for(int i = 0;i < n;i++)
  scanf("%i",&y1[i]);
printf("\n");
printf("Elementi i ih adresa:\n");
for(int i=0; i < n; i++)
  printf("|%3.1i | %i \n",i,y1[i]);
printf("\n");
printf("\nVvedite zna4enie simvol'noi peremennoi h, libo '+' libo 4to pojelaete:");
std::cin>>h;
if(h=='+'){
  int j = 0;
  for(int i = n - 1; i >= 0; i--){
    y2[i]= y1[j];
    j++;
  }
  printf("\n");
  for(int i=0; i < n; i++)
    printf("|%3.1i | %i \n",i,y2[i]);
}
printf("Bahni po klave na posledok\n");
getch();
}
0
0 / 0 / 0
Регистрация: 23.12.2007
Сообщений: 24
17.02.2008, 13:57  [ТС]
Ооооо

Спасибо, мир не без добрых людей


Ток вот скажи, что это такое:
std::cin>>h;

А то мы ещё не проходили ничего подобного
0
0 / 0 / 0
Регистрация: 23.12.2007
Сообщений: 24
17.02.2008, 14:14  [ТС]
Да и "iostream" для чего нужна?)
0
Почетный модератор
 Аватар для Lord_Voodoo
8784 / 2537 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
17.02.2008, 14:26
cin - это функция, которая перенаправляет входной поток в переменную, ну вроде как с клавы значение задавать, а iostream содержит ее заголовок
0
0 / 0 / 0
Регистрация: 23.12.2007
Сообщений: 24
17.02.2008, 15:17  [ТС]
кк
Спасибо
0
0 / 0 / 0
Регистрация: 22.02.2008
Сообщений: 3
22.02.2008, 00:06
Ребят я конечно понимаю, что ось должна в принципе убивать выделенную память, но все равно не забывайте делать free(), а во вторых можно обойтись и буферной переменной нафига еще один массив делать??
0
0 / 0 / 0
Регистрация: 23.12.2007
Сообщений: 24
22.02.2008, 07:45  [ТС]
Цитата Сообщение от prof_GCC Посмотреть сообщение
Ребят я конечно понимаю, что ось должна в принципе убивать выделенную память, но все равно не забывайте делать free(), а во вторых можно обойтись и буферной переменной нафига еще один массив делать??
Да делаем, делаем free(), в задании написано даже, что надо free() сделать)

В задании написано, что нужно сделать 2-ой одномерный массив.
0
Почетный модератор
 Аватар для Lord_Voodoo
8784 / 2537 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.02.2008, 09:26
prof_GCC , а зачем тут особо париться, это обычная лаба, поэтому особой изысканности кода не надо, главное, чтобы раз отработала и препод был доволен... а на счет корректного освобождения выделенной памяти виндой я бы не говорил, потому что ее диспетчер кучи работает странно, я память освобождаю и free и delete, а своп почему-то остается...
0
0 / 0 / 0
Регистрация: 22.02.2008
Сообщений: 3
22.02.2008, 15:02
Дан динамический целочисленный массив y1,y2,....,yn. и и динамическая символьная переменная h. Если значение h равно '+', преобразовать исходный массив к виду
yn,yn-1,...,y2,y1; иначе не менять порядок элементов.
Я тут ничего про второй массив не увидел
а зачем тут особо париться, это обычная лаба, поэтому особой изысканности кода не надо, главное, чтобы раз отработала и препод был доволен... а на счет корректного освобождения выделенной памяти виндой я бы не говорил, потому что ее диспетчер кучи работает странно, я память освобождаю и free и delete, а своп почему-то остается...
Действительно, че парится, постучал по клаве и всего делов, а потом у нас на 1000 программистов только один действительно нормальный, а память выделенную malloc deletом не освобождают молодой человек, вы путаете что-то, если действительно освобождаете, то все будет нормально, поверьте, я не первый год программированием занимаюсь и в том числе под разные платформы.
0
Почетный модератор
 Аватар для Lord_Voodoo
8784 / 2537 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.02.2008, 15:50
а я ничего не говорил про освобождение памяти, выделенной маллоком delete, я сказал, что вообще освобождать двумя функциями этими память, но ничего не говорил про каким образом память выделена... а на счет редко встречающихся толковых программерах согласен, но нет у меня времени изголяться на подобные задания на форуме... своей работы по горло... я показал самый примитивный способ, не более того
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.02.2008, 15:50
Помогаю со студенческими работами здесь

Динамическое распределение памяти
Прошу помощи! Даны действительные числа a1...an2 . Получить действительную квадратную матрицу порядка n&lt;8, элементами которой...

Динамическое распределение памяти
Столкнулся со следующей задачей: Создать список, элементами которого являются целые числа. Данные формируются случайным образом. Данные...

Динамическое распределение памяти
как писать эту на программе с++ Даны действительные числа . Получить действительную квадратную матрицу порядка n&lt;8, элементами...

Динамическое распределение памяти
Добрый вечер, помогите пожалуйста разобраться с задачкой!!! Дана действительная квадратная матрица порядка 2n. Получить новую матрицу,...

Динамическое распределение памяти
Помогите,пожалуйста) - расширьте функционал программы за счет возможности введения с клавиатуры размера одномерного массива; -...


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

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

Новые блоги и статьи
CQRS (Command Query Responsibility Segregation) на Java
Javaican 12.05.2025
CQRS — Command Query Responsibility Segregation, или разделение ответственности команд и запросов. Суть этого архитектурного паттерна проста: операции чтения данных (запросы) отделяются от операций. . .
Шаблоны и приёмы реализации DDD на C#
stackOverflow 12.05.2025
Когда я впервые погрузился в мир Domain-Driven Design, мне показалось, что это очередная модная методология, которая скоро канет в лету. Однако годы практики убедили меня в обратном. DDD — не просто. . .
Исследование рантаймов контейнеров Docker, containerd и rkt
Mr. Docker 11.05.2025
Когда мы говорим о контейнерных рантаймах, мы обсуждаем программные компоненты, отвечающие за исполнение контейнеризованных приложений. Это тот слой, который берет образ контейнера и превращает его в. . .
Micronaut и GraalVM - будущее микросервисов на Java?
Javaican 11.05.2025
Облачные вычисления безжалостно обнажили ахиллесову пяту Java — прожорливость к ресурсам и медлительный старт приложений. Традиционные фреймворки, годами радовавшие корпоративных разработчиков своей. . .
Инфраструктура как код на C#
stackOverflow 11.05.2025
IaC — это управление и развертывание инфраструктуры через машиночитаемые файлы определений, а не через физическую настройку оборудования или интерактивные инструменты. Представьте: все ваши серверы,. . .
Инъекция зависимостей в ASP.NET Core - Практический подход
UnmanagedCoder 11.05.2025
Инъекция зависимостей (Dependency Injection, DI) — это техника программирования, которая кардинально меняет подход к управлению зависимостями в приложениях. Представьте модульный дом, где каждая. . .
Битва за скорость: может ли Java догнать Rust и C++?
Javaican 11.05.2025
Java, с её мантрой "напиши один раз, запускай где угодно", десятилетиями остаётся в тени своих "быстрых" собратьев, когда речь заходит о сырой вычислительной мощи. Rust и C++ традиционно занимают. . .
Упрощение разработки облачной инфраструктуры с Golang
golander 11.05.2025
Причины популярности Go в облачной инфраструктуре просты и одновременно глубоки. Прежде всего — поразительная конкурентность, реализованная через горутины, которые дешевле традиционных потоков в. . .
Создание конвейеров данных ETL с помощью Pandas
AI_Generated 10.05.2025
Помню свой первый опыт работы с большим датасетом — это была катастрофа из неотформатированных CSV-файлов, странных значений NULL и дубликатов, от которых ехала крыша. Тогда я потратил три дня на. . .
C++ и OpenCV - Гайд по продвинутому компьютерному зрению
bytestream 10.05.2025
Компьютерное зрение — одна из тех технологий, которые буквально меняют мир на наших глазах. Если оглянуться на несколько лет назад, то сложно представить, что алгоритмы смогут не просто распознавать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru