IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Сортировка, проблема с ней
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 20
Пол: Мужской

Репутация: -  0  +


У меня такая задача: создать массив объектов и отсортировать по любому полю. Делаю в Borland C++ 3.1. Проблема в сортировке. Выдает ошибку cannot convert 'avto' to 'int'. Вот, что писал:
#include <iostream.h>
#include <conio.h>
#include <string.h>
const int n=3;
class avto
{

char name[20];
int speed;
float volume;
public:
avto();
~avto();
void init(char *nam, int sp, float vol) {strcpy(name,nam), speed=sp, volume=vol;}
friend void out(avto av);
};
avto::avto()
{
strcpy(name," ");
speed=0;
volume=0;
}
avto::~avto()
{
strcpy(name," ");
speed=0;
volume=0;
}
void out(avto av)
{
cout<<av.name<<"\t"<<av.speed<<"\t"<<av.volume<<endl;
}
void sort(avto av);
int main()
{
clrscr();
int i,speed;
char *name;
float volume;
avto a[n];
for(i=0;i<n;i++)
{
cout<<"Input name "; cin>>name;
cout<<"Input speed "; cin>>speed;
cout<<"Input volume "; cin>>volume;
a[i].init(name,speed,volume);
}
cout<<"Ishodnie dannie"<<endl;
for(i=0;i<n;i++)
out(a[i]);
sort(a);
cout<<"Posle sortirovki"<<endl;
for(i=0;i<n;i++)
out(a[i]);
getch();
return 0;
}
void sort(avto av)
{
int i,w,p=1;
while (p)
{
p=0;
for(i=0;i<n;i++)
if(av[i].speed>av[i+1].speed)
{
w=av[i].speed;
av[i].speed=av[i].speed;
av[i+1].speed=w;
p=1;
}
}
}

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 14.08.2022 23:22
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name