Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.01.2012, 17:11   #1
F1nt
Пользователь
 
Регистрация: 11.09.2011
Сообщений: 41
По умолчанию Сортировка

Написал небольшую программку по заданию инст. Всё работает, но не могу правильно отсортировать... Нужно упорядочить по убыванию окладов.
Код:
Код:
#include <iostream.h>
#include <conio.h>
#include <string.h>
struct info
{char fam[10]; float oklad;};
void main()
{
 clrscr();
 info *n;n=new info;
 float *f1,*f2; int *i1,*i2;
 f1=new float (1.5); f2=new float (103.5);
 *i1=NULL; *i2=NULL;
 cout<<'\t'<<'\t'<<'\t'<<'\t'<<"3adaHue 1"<<endl;
 cout<<"f1="<<f1<<'\t'<<*f1<<endl; cout<<"f2="<<f1<<'\t'<<*f2<<endl;
 cout<<"i1="<<i1<<'\t'<<*i1<<endl; cout<<"i2="<<i2<<'\t'<<*i2<<endl;
 cout<<'\n';
 cout<<'\t'<<'\t'<<'\t'<<'\t'<<"3adaHue 2,3"<<endl;
 *i1=*f2; *i2=*i1;
 cout<<"f1="<<f1<<'\t'<<*f1<<endl; cout<<"f2="<<f1<<'\t'<<*f2<<endl;
 cout<<"i1="<<i1<<'\t'<<*i1<<endl; cout<<"i2="<<i2<<'\t'<<*i2<<endl;
 cout<<'\t'<<'\t'<<'\t'<<'\t'<<"3adaHue 4"<<endl;
 *i1/=2;
 cout<<'\n';
 cout<<"f1="<<f1<<'\t'<<*f1<<endl; cout<<"f2="<<f1<<'\t'<<*f2<<endl;
 cout<<"i1="<<i1<<'\t'<<*i1<<endl; cout<<"i2="<<i2<<'\t'<<*i2<<endl;
 cout<<'\t'<<'\t'<<'\t'<<'\t'<<"3adaHue 5"<<endl;
 *f1=*i2; *f2=0.5;
 cout<<"f1="<<f1<<'\t'<<*f1<<endl; cout<<"f2="<<f1<<'\t'<<*f2<<endl;
 cout<<"i1="<<i1<<'\t'<<*i1<<endl; cout<<"i2="<<i2<<'\t'<<*i2<<endl;
 cin.get();
/*clrscr();
 cout<<'\t'<<'\t'<<'\t'<<'\t'<<"3adaHue 6"<<endl;
 cout<<"BBedute familiIO-"; cin>>n->fam;
 cout<<"BBedute oklad-";    cin>>n->oklad;
 cout<<n->fam<<'\t';
 cout.setf(ios::showpoint|ios::fixed);
 cout.precision(2);
 cout<<n->oklad<<endl;
 getch();
 cout<<'\t'<<'\t'<<'\t'<<'\t'<<"3adaHue 7"<<endl;
 cout<<"f1="<<sizeof(*f1)<<'\t'<<"byte"<<endl;
 cout<<"i1="<<sizeof(*i1)<<'\t'<<"byte"<<endl;
 cout<<"n="<<sizeof(*n)<<'\t'<<"byte"<<endl;
 getch(); */
 clrscr();
 cout<<'\t'<<'\t'<<'\t'<<'\t'<<"3adaHue 8"<<endl;
 info **R; R=new info*[5];
 for(int i=0;i<3;i++)
 {
  cout<<"BBedute familiIO-"; cin>>R[i]->fam;
  cout<<"BBedute oklad-";    cin>>R[i]->oklad;
 }
 cout<<'\n'<<endl;
 for(i=0;i<3;i++)
 cout<<R[i]->fam<<'\t'<<R[i]->oklad<<endl;
 getch();
////////////////////////////////////////////////////////////
 cout<<'\t'<<'\t'<<'\t'<<'\t'<<"3adaHue 9"<<endl;
 info *f;f=new info;
 for(i=0;i<3;i++)
 {
  for(int j=0;j<3;j++)
  {
   int l=strcmp(R[i].oklad,R[j].oklad);// Тут ругается
   if(l<0)
   {
    f=R[i];
    R[i]=R[j];
    R[j]=f;
   }
  }
 }
  for(i=0;i<3;i++)
  {
   cout<<R[i]<<endl;
  }
////////////////////////////////////////////////////////////
 getch();
}
P.s. Обьясните подробнее.

Последний раз редактировалось ACE Valery; 23.01.2012 в 17:29.
F1nt вне форума Ответить с цитированием
Старый 28.01.2012, 14:32   #2
F1nt
Пользователь
 
Регистрация: 11.09.2011
Сообщений: 41
По умолчанию

Сортировка методом пузырька получилась.
Код:
////////////////////////////////////////////////////////////
 cout<<'\t'<<'\t'<<'\t'<<'\t'<<"3adaHue 9"<<endl;
 info *f;f=new info;int s=3;
 for( i=s-1;i>=1;i--)
    for(int j=0;j<i;j++)
       {
	if(R[j]<R[j+1])
	  {
	   f=R[j];
	   R[j]=R[j+1];
	   R[j+1]=f;
	  }
       }
 for(i=0;i<3;i++)
 cout<<R[i]->fam<<'\t'<<R[i]->oklad<<endl;
Но после вывода результата, компилятор всегда завершается с ошибкой. Это часто на С++, проблема в выводе массива?
F1nt вне форума Ответить с цитированием
Старый 28.01.2012, 14:35   #3
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

А как простым смертным нужно понимать фразу "компилятор всегда завершается с ошибкой"?
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума Ответить с цитированием
Старый 28.01.2012, 16:02   #4
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Цитата:
Сообщение от F1nt Посмотреть сообщение
Но после вывода результата, компилятор всегда завершается с ошибкой. Это часто на С++, проблема в выводе массива?
А это уж от генофонда программиста зависит.
_Bers вне форума Ответить с цитированием
Старый 29.01.2012, 01:23   #5
F1nt
Пользователь
 
Регистрация: 11.09.2011
Сообщений: 41
По умолчанию

Цитата:
Сообщение от Blade Посмотреть сообщение
А как простым смертным нужно понимать фразу "компилятор всегда завершается с ошибкой"?
Безымянный.jpg
Вот так вот и получается. Ну я не профи, мог в чём-то и ошибиться. Ну надеюсь так понятнее будет=)

Последний раз редактировалось F1nt; 29.01.2012 в 01:27.
F1nt вне форума Ответить с цитированием
Старый 29.01.2012, 01:30   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

запускать через DOSBox, а лучше вообще его выкинуть и взять нормальный
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 29.01.2012, 01:35   #7
F1nt
Пользователь
 
Регистрация: 11.09.2011
Сообщений: 41
По умолчанию

У меня 3.1 это, не плохой компиль, ну и как-то привычно к досовскому интерфейсу. Я думаю всё равно тут проблема в конце, хотя получается что при завершении вылазит ошибка.
F1nt вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка Шелла и Шейкер-сортировка AleksandrMakarov Паскаль, Turbo Pascal, PascalABC.NET 11 11.03.2012 12:18
Быстрая сортировка(сортировка хаора) с++ LustHunter Помощь студентам 3 07.10.2011 19:37
Сортировка массива методами предсортировки и слияния, и пирамидальная сортировка. lenny_24 Помощь студентам 2 17.04.2011 18:57
паскаль,одномерный массив,сортировка вставка,сортировка убывания,от максимального до конца немозг Помощь студентам 11 06.02.2010 21:57
Сортировка файлов в Explorer vs сортировка в Delphi mutabor Общие вопросы Delphi 11 04.09.2009 14:32