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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
DeathCat
0 / 0 / 0
Регистрация: 12.03.2015
Сообщений: 12
#1

Сортировка выбором по возрастанию - C++

02.07.2015, 09:49. Просмотров 447. Ответов 4
Метки нет (Все метки)

Провести сортировку элементов массива больших числа С по возрастанию методов сортировки с выбором. Элементы удовлетворяющие условию должны оказаться вначале массива. Ввод числа С организовать с клавиатуры. Сортировку массива оформить ввиде функции.
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;
 
double sort(double *mass, int n, int c)
{
       
        double temp;
    int poz;
   for(int i=0; i<n-1; i++){
           if(mass[i]>c){
        temp=mass[i];
         poz=i;
         for(int j=i+1; j<n; j++)
         if((temp>mass[j])&&(mass[j]>c)) {
                                         temp=mass[j]; poz=j;
                                         }
          mass[poz]=mass[i];
   mass[i]=temp;}
}
       }
int main()
{
  fstream file;
   file.open("var19.txt", ios::in);
   if(!file){
              cerr<<"\n Ne mogu otkrit fail"<<endl;
           return 1;
           }
            int n,c;
    file>>n;
    double *mass = new double[n];
      for(int i=0; i<n; i++) file>>mass[i];
      file.close();
      cout<<"Vvedi Г±=";
      cin>>c;
  sort(mass, n, c);
 
Что необходимо исправить?
  for (int i=0;i<n;i++ )
 cout<<"mass["<<i<<"] = "<<mass[i]<<endl;
 
   
      fstream newfilemass;
 newfilemass.open("result.txt",ios::out);
  if(!newfilemass){
              cerr<<"Problema s failom "<<endl;
               return 2;
           }
          for (int i=0;i<n;i++ )
 newfilemass<<mass[i]<<endl;
 newfilemass.close();
 
 
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
Что нужно исправить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.07.2015, 09:49     Сортировка выбором по возрастанию
Посмотрите здесь:

C++ Сортировка выбором на с++
сортировка выбором C++
C++ Сортировка выбором
C++ сортировка выбором
Сортировка выбором C++
Сортировка по возрастанию простым выбором C++
C++ Сортировка выбором
C++ Сортировка выбором
C++ Упорядочите строки по возрастанию методом сортировки выбором (Select Sort)
C++ Сортировка выбором
Сортировка выбором C++
C++ сортировка выбором

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DeathCat
0 / 0 / 0
Регистрация: 12.03.2015
Сообщений: 12
08.07.2015, 09:03  [ТС]     Сортировка выбором по возрастанию #2
апппп
Nkey
308 / 61 / 10
Регистрация: 21.12.2011
Сообщений: 275
08.07.2015, 09:11     Сортировка выбором по возрастанию #3
Ошибки какие или что не работает?
DeathCat
0 / 0 / 0
Регистрация: 12.03.2015
Сообщений: 12
08.07.2015, 09:51  [ТС]     Сортировка выбором по возрастанию #4
Тут в написанной программе элементы не удовлетворяющие условию остаются на своих местах. А мне необходимо сделать так, чтобы "Элементы удовлетворяющие условию должны оказаться вначале массива". Вот и не могу разобраться
Nkey
308 / 61 / 10
Регистрация: 21.12.2011
Сообщений: 275
08.07.2015, 10:48     Сортировка выбором по возрастанию #5
на 32 строке вы считываете содержимое файла, например, у меня первый элемент -2, следовательно на сл. цикле он не пройдет. Так и надо?

Добавлено через 9 минут
Считывайте поэлементно файл, n корректное установите.
Yandex
Объявления
08.07.2015, 10:48     Сортировка выбором по возрастанию
Ответ Создать тему
Опции темы

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