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

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

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

Не выходит сортировка - C++

20.05.2013, 00:07. Просмотров 207. Ответов 0
Метки нет (Все метки)

Я написала код, но сортировка по убыванию у меня выходить не правильная. Оно сортирует только 1 столбец, а не всю строку данных таблицы, из-за чего в результате вся таблица(в меню кнопка 5) выводится неправильно. Подскажите, что надо исправить
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#include<iostream>
#include <string.h>          
#include <iomanip> 
#include <conio.h>
#include <fstream>
 
using namespace std;
 
const int  n=2;
struct zap
{
char A[15];
double T;
int K;
double C;
};
 
int main()
{
    locale::global(locale("rus"));
    
    
double S1=0,S2=0,S3=0;
zap zapis[n];    
   cout << "СОЗДАНИЕ ДОКУМЕНТА: \n";
            cout << "ДОКУМЕНТ ДОЛЖЕН ВМЕЩАТЬ " << n 
            << " СТРОКИ - ЗАПИСИ: \n";
            for(int i=0;i<n;i++)
            {
             cout << "\nФОРМИРОВАНИЕ " << i + 1 <<  "  ЗАПИСИ";
             cout << "\nВВЕСТИ НАЗВАНИЕ АВТОБАЗЫ (НЕ БОЛЬШЕ 15 СИМВОЛОВ):   ";
             cin >>  zapis[i].A; 
             cout << "\nУКАЖИТЕ КОЛИЧЕСТОВ ИСПОЛЬЗОВАНОГО ГОРЮЧЕГО: ";
             cin >> zapis[i].T; 
             cout << "\nКОЛИЧЕСТВО МАШИН: \n";
             cin >>  zapis[i].K;    
              zapis[i].C = zapis[i].T / zapis[i].K;
             cout<<"\nРАСХОДЫ: \n"<<zapis[i].C<<endl;
            }
    for(int m=0;m<=5;m++)
    {       
int menu;
        cout<<"МЕНЮ:\n1.НАЗВАНИЕ АВТОБАЗЫ\n2.КОЛИЧЕСТВО ИСПОЛЬЗОВАНОГО ГОРЮЧЕГО\n3.КОЛИЧЕСТВО МАШИН\n4.РАСХОДЫ\n5.ТАБЛИЦА";
        cin>>menu;
        for(int i=0;i<n;i++)
        {
        if(menu==1)
        {
            cout<<" \n"<<(zapis[i]).A;
        }
        if(menu==2)
        {
            cout<<" \n"<<(zapis[i]).T;
        }
        if(menu==3)
        {
            cout<<" \n"<<(zapis[i]).K;
        }
        if(menu==4)
        {
            cout<<" \n"<<(zapis[i]).C;
        }
        if(menu==5)
        {
            double temp;
for(int i=0; i<n; i++)
for (int j=n-1; j>i; j--)
{if(zapis[j-1].T<zapis[j].T)
{
temp=zapis[j-1].T;
zapis[j-1].T=zapis[j].T;
zapis[j].T=temp;        
 cout << "\n   ВЕДОМОСТЬ ПРО РАСХОДЫ ТОПЛИВА НА АВТОБАЗАХ ГОРОДА ";
 cout << "\n|-----------------------------------------------------------------------------|";
 cout << "\n|  №/зn  |  АВТОБАЗА   |   ИСПОЛЬЗОВАНО ГОРЮЧЕГО  |  КОЛИЧЕСТОВ МАШИН | РАСХОД  |";
 cout << "\n|-----------------------------------------------------------------------------|";
 
 for(int i=0;i<n;i++)
    cout << "\n|" << setw(11)<< "|" << setw(11)<< (zapis[i]).A << "|" <<setw(21)<< (zapis[i]).T<< "|"<<setw(19)<< (zapis[i]).K<< "|"<< setw(5)<<(zapis[i]).C << "|";
   cout << "\n|---------------------------------------------------------------------------| ";
     for(int i=0;i<n;i++)
        {
                  S1 += zapis[i].T;
                  S2 += zapis[i].K;
                  S3 += zapis[i].C;
     } 
   cout << "\n|ВМЕСТЕ  :             |" << setw(23)<< S1 << "|" << setw(15)<< S2<< "|" <<setw(5) << S3 << "|";
   cout << "\n|--------------------------------------------------------------------------|";
        }
        }
        }}
                    if(menu==0)
                    {
                    break;
                    }
}
 
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.05.2013, 00:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не выходит сортировка (C++):

Блочная сортировка массива. Не выходит - C++
Суть такова-есть массив, который генерируется рандомно, и размер которого варьеруется size. Вообще не понимаю, как написать для него...

Не выходит из цикла while - C++
почему при нажатии (-1) не выходит из цикла? #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;locale&gt; #include &lt;iomanip&gt; ...

Не выходит из цикла - C++
Доброго времени суток! При нажатии цифры &quot;1&quot;, а затем последовательно &quot;2&quot; z должно суммировать результат кейсов и выводить программу из...

Не выходит из цикла - C++
не понимаю почему при значениях c,t,p,g не выходит из цикла. После ввода значения проверочное выражение получает false и дальше идет...

Не выходит из функции - C++
Здравствуйте. В конце функции есть строка return true; При вызове этой функции программа зацикливается. То есть если поставить точку...

не выходит решение на С++ - C++
1) В массиве хранятся сведения о количестве осадков за каждый день сентября. Опре-делить: а) за какой период выпало больше осадков: в...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2013, 00:07
Привет! Вот еще темы с ответами:

не выходит решение на С++ - C++
Помогите с решением следующих задачек на С++ (с использованием классов) 1 Дано слово. Получить и вывести на экран буквосочетание...

Не выходит перегрузка << и >> - C++
Добрый день формучане. Сперва хотелось бы попросить проверить правильность выполнения задания: Разработать абстрактный класс...

Не выходит из цикла - C++
Хотел написать простой код для считывания введенный в консоль через пробел чисел в вектор, но что-то пошло не так: читать читает, заносит,...

Не выходит из цикла ввода - C++
Прочитайте некоторый текст, сохраняя каждое введенное слово как отдельный элемент вектора. Преобразуйте символы каждого слова в прописные....


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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