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

Реализовать сортировку по возрастанию и убыванию - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Записи в линейном списке содержат ключевое поле типа int. Сформировать двунаправленный список. Удалить из него http://www.cyberforum.ru/cpp-beginners/thread1181300.html
Записи в линейном списке содержат ключевое поле типа int. Сформировать двунаправленный список. Удалить из него элемент с заданным номером, добавить элемент в начало списка. Вот что у меня получилось:
C++ Составить структуру данных состоящих из полей: Название песни, композитор, поэт, дата 1-го исполнения, город Здравствуйте! Помогите, пожалуйста, написать код. Мне нужно составить структуру данных в файле состоящих из полей: название песни, композитор, поэт, дата 1-го исполнения, город. И что бы программа... http://www.cyberforum.ru/cpp-beginners/thread1181288.html
Массив структур C++
По какой то причине не корректно работает команда add_plant void command(Aquarium& a){ bool switch_c = true; char command_line; while(switch_c){ cin>>command_line; ...
C++ Поиск слов в файле, начинающихся с
Необходимо: прочесть текст в файле, вывести все слова, начинающиеся с некоторой буквы. В данном случае - "w". Искать обязательно через функцию. При вводе строки вручную все работает, как часы. А...
C++ Перебор всех не повторяющихся сочетаний элементов в одномерном массиве http://www.cyberforum.ru/cpp-beginners/thread1181279.html
Добрый день. Есть такая задача: нужно записать все возможные перестановки одномерного массива 1...n Всю голову сломал, не знаю, как это можно записать через алгоритм. Пример: Мы имеем массив -...
C++ Классы Помогите написать программу с классом. Класс Product Данные: фирма изготовитель, название, цена, дата производства, срок годности. Методы: 1 - проверка истечения срока годности 2 -... подробнее

Показать сообщение отдельно
TRIPTIXX
0 / 0 / 0
Регистрация: 01.04.2014
Сообщений: 18

Реализовать сортировку по возрастанию и убыванию - C++

19.05.2014, 20:09. Просмотров 344. Ответов 3
Метки (Все метки)

Здравствуйте!
имеется код готовой программы. В нем нужно наиболее легким способом ( как сказал преподаватель с помощью двух строк) создать сортировку и по возрастанию и по убыванию!
Сам код в спойлере
Кликните здесь для просмотра всего текста
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
void main(){ clrscr();
 
  struct Kurs{
    char Strana[15];
    float SR, max, C[6];
    int nom;  };
 
    Kurs *M;
    Kurs x;
    float  MSR;
    int Nstrana, N, i, j, usl, p;
    MSR=0; Nstrana=0;
 
    cout <<"\n input N:"; cin >> N;
    M = new Kurs[N];
 
    for (i=0; i<N; i++){
    cout <<"\n \n input name Strani ["<<i+1<<"]: "; cin >> M[i].Strana;
         M[i].SR=0; M[i].max=0;
    for (j=0; j<6; j++) {
    cout << "\n Input God ["<<j+1<<"]="; cin>> M[i].C[j];
    }}
 
    for (i=0; i<N; i++) {
      for (j=0; j<6; j++){
    M[i].SR+=M[i].C[j];
    if (M[i].C[j]>M[i].max) {M[i].max=M[i].C[j]; M[i].nom=j+1;}
    }
      M[i].SR/=6;
      if (M[i].SR>MSR) {MSR=M[i].SR; Nstrana=i+1;}
    }
 
    printf ("\n --------------------------------------------------------------------------");
    printf("\n| Nom | Strana | 1-i | 2-i | 3-i | 4-i | 5-i | 6-i | SR | Max | N |");
    printf("\n----------------------------------------------------------------------------");
 
    for (i=0; i<N; i++) {
     printf ("\n %5d| %7s|", i+1, M[i].Strana);
     for (j=0; j<6; j++) {  printf ("%5.0f|", M[i].C[j]);  }
    printf ("%4.0f| %4.0f| %2d|", M[i].SR, M[i].max, M[i].nom);
     }
    printf("\n---------------------------------------------------------------------");
    cout << " \n \n MaxSredni=" << MSR;
    cout << " \n Nomer:" << Nstrana;
    printf("\n---------------------------------------------------------------------");
 
    do {
    cout <<("\n \n Input pole sortirovki: "); cin>> p;
    for (i=0; i<N; i++)
    for (j=i+1; j<N; j++) {
      switch(p) {
        case 2: case 3: case 4: case 5: case 6: case 7: usl= M[i].C[p-2] > M[j].C[p-2]; break;
        case 8: usl=M[i].SR>M[j].SR; break;
        case 9: usl=M[i].max>M[j].max; break;
        case 10: usl=M[i].nom>M[j].nom; break;
      }
    if (usl) {x=M[i]; M[i]=M[j]; M[j]=x;}
    }
    if (p!=0){
    printf ("\n--------------------------------------------------------------------");
    printf("\n| Nom | Strana | 1-i | 2-i | 3-i | 4-i | 5-i | 6-i | SR | Max | N |");
    printf("\n--------------------------------------------------------------------");
 
    for (i=0; i<N; i++) {
     printf ("\n %5d| %6s|", i+1, M[i].Strana);
     for (j=0; j<4; j++) {  printf ("%5.0f|", M[i].C[j]);  }
    printf ("%4.0f| %4.0f| %2d|", M[i].SR, M[i].max, M[i].nom);
     }}
    } while (p!=0);
    cout<< ("Press to Key...");
    getch();
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru