Твой софтовый форум > Тематические форумы > Программирование

Помогите разобраться в проблеме...

,

С++

Дата публикации: 15.08.2006 - 17:17
yah
Нужно написать программу, которая запрашивает ввод данных в массив, затем инвертирует элементы массива местами, а затем отображает массив. При этом должны быть использованны три функции, ориентированые на работу с массивами... Ввод данных прекращается когда массив заполнен либо вводится нечисловое значение при этом возвращается фактическое число введеных данных...

Все написал, но инвертировать массив так и не получилось sad.gif .

Вот сами исходники проги:


CODE
#include <iostream>
using namespace std;

short Fill_array(double array[], short size);
void Show_array(const double array[], short size);
void Reverse_array(double array[],short size);

int main()
{
double array[20];
short size=Fill_array(array,20);
Reverse_array(array,size);
Show_array(array,size);

return 0;
}


short Fill_array(double array[], short size)
{
for(short a=0;a<size;a++)
{
 cout<<"\nINPUT NUMBER: ";
 short temp;
 if(!(cin>>temp))
 {
  cin.clear();
  while(cin.get()!='\n')
   continue;
  cout<<"\nBad Input\n\n";
  break;
 }
 array[a]=temp;
}
return a;
}

void Show_array(const double array[], short size)
{
for(short a=0;a<size;a++)
 cout<<"\n"<<array[a]<<endl;
}

void Reverse_array(double array[],short size)
{
short a,b;
double temp_array;
for (a=0,b=size-1;a<size;a++,b--)
{
 temp_array=array[a];
 array[a]=array[b];
 array[b]=temp_array;
 
}

 
}

 


В частности вопросы возьникают по функции Reverse_array. Что в ней не так? sad.gif
Memphis04
на мой взгляд, то не правильно организован цикл

правильнее, неверно, будет так:
int j=size-1;
for (int i=0;i temp_array=array[i];
array[i]=array[j];
array[j]=temp_array;
j--;
}
yah
Наконец-то нашел решение...

цикл надо было организовывать так:


short a,b;
double temp_array;
for (a=0,b=size-1;a {
temp_array=array[a];
array[a]=array[b];
array[b]=temp_array;

}

мемфису +1 за помощь...

Тема закрыта.


Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке: Помогите разобраться в проблеме...
SoftoRooM © 2004-2024