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

Переделать программу для динамического массива - C++

Восстановить пароль Регистрация
 
wolf41
0 / 0 / 0
Регистрация: 20.04.2014
Сообщений: 36
05.06.2014, 10:57     Переделать программу для динамического массива #1
Здравствуйте. Проблема значит такая. Я в C++ пока полный чайник, и в следствии не могу переделать работающую программу. Хочу сказать, что учат нас на Borland C++ Builder 6 Enterprise Edition. Она соответствует условию (Напишите программу, которая упорядочит элементы одномерного динамического массива по возрастанию.Размерность массива и его элементы задаются с клавиатуры. Собственно вот она:
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
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
int n,i,j,*mas,buf;
cout«"\n Vvedite razmernost massiva: " ;
cin»n;
mas=new int[n] ;
cout« "\n Vvedite element masiva." ;
for (i=0; i<n; i++)
{
cout« "mas["«i«"]=";
cin» mas [i];
}
for(i=1; i<n; i++)
for(j=1; j<=n-i;j++)
if(mas [j-1]>mas[j])
{
buf = mas [j-1];
mas [j-1]=mas[j];
mas[j]=buf;
}
cout«"Rezyltat" ;
for (i=0; i<n; i++) cout«mas[i];
delete mas;
 
Sleep(5000);
return 0;
}
//---------------------------------------------------------------------------
Работает вроде правильно и преподаватель нормально отзывается. НО , я не могу ее переделать под следующее задание (а надо это сделать немного поменять структуру, без привлечения сторонних библиотек и функций, которые для новичков в этом деле не нужны, ибо мне потом надо будет объяснить суть кода),
Напишите программу, которая высчитывает максимальный элемент в одномерном динамическом массиве. Размерность массива и его элементы задаются с клавиатуры. Если привлекаете что-то новое, пожалуйста, поясните я ведь хочу понять. Заранее спасибо!!!
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2014, 10:57     Переделать программу для динамического массива
Посмотрите здесь:

C++ Как выделить память для динамического массива?
C++ Не работает random() для динамического массива
C++ Написать программу изменения порядка следования элементов динамического массива в обратном порядке
C++ Создать функцию для создания динамического массива
C++ Функция для ввода двухмерного динамического массива
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
frontez
4 / 4 / 0
Регистрация: 26.04.2013
Сообщений: 120
05.06.2014, 11:15     Переделать программу для динамического массива #2
Пусть хотя бы тебе не Вконтакте отправляют код, а как минимум в блокноте или через codepad, у тебя код сломан.
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
05.06.2014, 11:24     Переделать программу для динамического массива #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
#include <iostream>
 
int main()
  {
  std::cout << "Enter array size: ";
  size_t array_size;
  std::cin >> array_size;
  int* array = new int[array_size];
  std::cout << "Enter elements of array" << std::endl;
  for (size_t i = 0; i < array_size; ++i)
    {
    std::cout << "array[" << i << "] = ";
    std::cin >> array[i];
    }
  int maximum = array[0];
  for (size_t i = 1; i < array_size; ++i)
    if (maximum < array[i])
      maximum = array[i];
 
  std::cout << "Maximum = " << maximum;
 
  delete [] array;
  return 0;
  }
Добавлено через 7 минут
Цитата Сообщение от wolf41 Посмотреть сообщение
Напишите программу, которая высчитывает максимальный элемент в одномерном динамическом массиве.
http://www.cplusplus.com/reference/a...m/max_element/
wolf41
0 / 0 / 0
Регистрация: 20.04.2014
Сообщений: 36
05.06.2014, 11:39  [ТС]     Переделать программу для динамического массива #4
Frontez, извини торопился и скопировал в VK. Я в курсе что он сломал код, ну как говориться хотя бы он есть, а исправить дело минут 10

Добавлено через 1 минуту
Я что-то туплю, а как он его сломал? Вроде как в самой программе было, просто кровь из носа сдать ее надо

Добавлено через 1 минуту
А зачем перед int* звездочка?

Добавлено через 8 минут
А так нормально?
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
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
int n,i,j,*mas,buf;
cout<<"\n Vvedite razmernost massiva: " ;
cin>>n;
mas=new int[n] ;
cout<<"\n Vvedite element masiva." ;
for (i=0; i<n; i++)
{
cout<<"mas["«i«"]=";
cin>> mas [i];
}
for(i=1; i<n; i++)
for(j=1; j<=n-i;j++)
if(mas [j-1]>mas[j])
{
buf = mas [j-1];
mas [j-1]=mas[j];
mas[j]=buf;
}
cout<<"Rezyltat" ;
for (i=0; i<n; i++) cout<<mas[i];
delete mas;
 
Sleep(5000);
return 0;
}
//---------------------------------------------------------------------------
Yandex
Объявления
05.06.2014, 11:39     Переделать программу для динамического массива
Ответ Создать тему
Опции темы

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