Даны 10 чисел, необходимо распределить их по убыванию. - страница 2

 

странно, подставляю вместо чисел переменные, например: int num_array[]={x, y,z}

Не работает...

 

А через переменные массив инициализировать нельзя.

int num_array[3];

num_array[0]=x;

num_array[1]=y;

num_array[2]=z;

 

Пишет: 'y' - variable already defined

Кто знает, в чем здесь дело?

 
Vinin:

А через переменные массив инициализировать нельзя.

А как же тогда быть?

С этим все понятно:

num_array[0]=x;

num_array[1]=y;

num_array[2]=z;

Не понятно только для чего это:

int num_array[3];

 
ExpertTrader:
Vinin:

А через переменные массив инициализировать нельзя.

А как же тогда быть?

Присваиваем каждому элементу массива знчаение по одному.

С этим все понятно:

num_array[0]=x;

num_array[1]=y;

num_array[2]=z;

Не понятно только для чего это:

int num_array[3];

Есть два способа инициализации и определения размера массива.

Первый способ:

int num_array[];

и где то в программе мы можем изменить размер массива и присвоить значения.

ArrayResize(num_arr,K); //K- размер массива

for (i=0;i<K;i++)

num_arr[i]=?? //Присваиваем ззначения.

Второй способ

int num_arr[]={..,.,..};

Какой способ выбрать, дело вкуса и необходимости.

В первом случае может быть сразу же определение размера массива

int num_arr[10]; //размер массива известен заранее.

 

Т.е. чтобы присвоить значение по одному я должен зделать следующие:

   int num_array[0]={x}; //x=8;
   num_array[1]={y}; //y=4;
   num_array[2]={z}; //z=6;
   ArraySort(num_array,WHOLE_ARRAY,0,MODE_DESCEND);
   x=num_array[2]; //Значение 3-го по величине числа, x=4;
 
ExpertTrader:

Т.е. чтобы присвоить значение по одному я должен зделать следующие:

   int num_array[0]={x}; //x=8;
   num_array[1]={y}; //y=4;
   num_array[2]={z}; //z=6;
   ArraySort(num_array,WHOLE_ARRAY,0,MODE_DESCEND);
   x=num_array[2]; //Значение 3-го по величине числа, x=4;


Нет.

int num_array[3];

num_array[0]=x; //x=8;

num_array[1]=y; //y=4;

num_array[2]=z; //z=6;

ArraySort(num_array,WHOLE_ARRAY,0,MODE_DESCEND);

x=num_array[2]; //Значение 3-го по величине числа, x=4;

 
Спасибо, понял!
 
ExpertTrader:
Спасибо, понял!


Хоть получилось?

А то я уже пива много выпил.

 
Да, получилось. Спасибо огромное.
Причина обращения: