Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/25: Рейтинг темы: голосов - 25, средняя оценка - 4.80
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
1

Описать структуру из семи элементов типа AEROFLOT

08.05.2013, 01:34. Показов 4953. Ответов 19

Author24 — интернет-сервис помощи студентам
A - AEROFLOT
B - - название пункта назначения рейса;
- номер рейса;
- тип самолета.

C - - ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT; записи должны быть упорядочены по возрастанию номера рейса;
- вывод на экран номеров рейсов и типов самолетов, вылетающих в пункт назначения, название которого совпало с названием, введенным с клавиатуры; если таких рейсов нет, выдать на дисплей соответствующее сообщение

Буду очень благодарен
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.05.2013, 01:34
Ответы с готовыми решениями:

Описать структуру AEROFLOT
1. Описать структуру с именем AEROFLOT, содержащую следующие поля: - название пункта назначения...

Описать структуру Aeroflot
Описать структуру с именем AEROFLOT,которая имеет следующие поля: 1 - название пункта назначения...

Описать структуру с именем AEROFLOT
Описать структуру с именем AEROFLOT , содержащую следующие поля: * название пункта назначения...

Описать структуру с именем AEROFLOT
Ребят, помогите пожалуйста с заданием на С++. 1. Описать структуру с именем AEROFLOT, содержащую...

19
8 / 8 / 2
Регистрация: 06.05.2013
Сообщений: 18
08.05.2013, 04:56 2
Тебе на С++ писать?

Добавлено через 19 минут
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
#include <iostream>
#include<conio.h>
#include<string>
#include<locale.h>
using namespace std;
 
struct Aeroflot
{
    string dest; //пункт назначения
    int fli_num; //номер рейса
    string type; //тип самолета
};
 
int main()
{
    setlocale(0, "");
    const int size = 7;
    Aeroflot M[size];
    cout << "Введите:\nDestination, Flight number, Aircraft type\n";
    for(int i = 0; i < size; i++)
    {
        cin >> M[i].dest >> M[i].fli_num >> M[i].type;
    }
    string a;
    cout << "Введите пункт назначения: ";
    cin >> a;
    int k = 0;
    for(int i = 0; i < size; i++)
    {
        if(M[i].dest == a)
        {
            cout << M[i].fli_num << "::" << M[i].type << endl;
            k++;
        }
 
    }
    if(k == 0)
    {
        cout << "В " << a << " пункт назначения рейсов нет\n";
    }
    getch();
    return 0;
}
Добавлено через 1 минуту
Писал в Visual Studio 2010.
Там оформление если нужно будет сам подправишь)
0
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
08.05.2013, 12:08  [ТС] 3
Спасибо, я сам на Визуале 10 пишу
0
Mobile Software Engineer
Эксперт С++
5381 / 1585 / 956
Регистрация: 23.01.2011
Сообщений: 3,214
14.05.2013, 17:38 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
#include <iostream>
#include <cstring>
 
struct Aeroflot
{
    int flightNumber;
    std::string planeType;
    std::string finalDestination;
};
 
int main()
{
    const std::size_t structSize(3);
    Aeroflot data[structSize];
 
    std::cout << "Input the data: " << std::endl << std::endl;
    for (unsigned i = 0; i < structSize; i++) {
        std::cout << (i + 1) << ": " << std::endl;
        std::cout << "Destination: ";
        std::getline(std::cin, data[i].finalDestination);
        std::cout << "Plane type: ";
        std::getline(std::cin, data[i].planeType);
        std::cout << "Flight number: ";
        std::cin >> data[i].flightNumber;
 
        std::cin.sync();
        std::cin.clear();
        std::cout << std::endl;
    }
 
    std::string userDestination;
    std::cout << "Input the destination: ";
    std::getline(std::cin, userDestination);
 
    unsigned resultsCounter(0);
    std::cout << "Results: " << std::endl;
    for (unsigned i = 0; i < structSize; i++) {
        if (data[i].finalDestination == userDestination) {
            std::cout << "Flight: " << data[i].flightNumber << "(" << data[i].planeType << ")" << std::endl;
            resultsCounter++;
        }
    }
    if (!resultsCounter)
        std::cout << "Nothing!" << std::endl;
 
    return 0;
}
1
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
14.05.2013, 17:47  [ТС] 5
Ошибки выдает
0
4311 / 1422 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
14.05.2013, 17:56 6
C++
1
#include <string>
1
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 20:35  [ТС] 7
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
#include <iostream>
 
#include <string>
 
struct Aeroflot
{
    int flightNumber;
    std::string planeType;
    std::string finalDestination;
};
 
int main()
{
    const std::size_t structSize(3);
    Aeroflot data[structSize];
 
    std::cout << "Input the data: " << std::endl ;
    for (unsigned i = 0; i < structSize; i++) {
        std::cout << (i + 1) << ": " << std::endl;
        std::cout << "Destination: ";
        std::getline(std::cin, data[i].finalDestination);
        std::cout << "Plane type: ";
        std::getline(std::cin, data[i].planeType);
        std::cout << "Flight number: ";
        std::cin >> data[i].flightNumber;
 
        std::cin.sync();
        std::cin.clear();
        std::cout << std::endl;
    }
 
    std::string userDestination;
    std::cout << "Input the destination: ";
    std::getline(std::cin, userDestination);
 
    unsigned resultsCounter(0);
    std::cout << "Results: " << std::endl;
    for (unsigned long long i = 0; i < structSize; i++) {
        if (data[i].finalDestination == userDestination) {
            std::cout << "Flight: " << data[i].flightNumber << "(" << data[i].planeType << ")" << std::endl;
            resultsCounter++;
        }
    }
    if (!resultsCounter)
        std::cout << "Nothing!" << std::endl;
 
    return 0;
}
Вот прога, нужно только вставить код который упорядочивает
0
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 20:52  [ТС] 8
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
#include <iostream>
 
#include <string>
 
struct Aeroflot
{
    int flightNumber;
    std::string planeType;
    std::string finalDestination;
};
 
int main()
{
    Aeroflot n;
    
    int i;
    const std::size_t structSize(3);
    Aeroflot data[structSize];
 
    std::cout << "Input the data: " << std::endl ;
    for (unsigned i = 0; i < structSize; i++) {
        std::cout << (i + 1) << ": " << std::endl;
        std::cout << "Destination: ";
        std::getline(std::cin, data[i].finalDestination);
        std::cout << "Plane type: ";
        std::getline(std::cin, data[i].planeType);
        std::cout << "Flight number: ";
        std::cin >> data[i].flightNumber;
 
        std::cin.sync();
        std::cin.clear();
        std::cout << std::endl;
    }
 bool lChanges = true;
    while ( lChanges )
    {
        lChanges = false; 
        for (i=0; i<6; i++)
            if (strcmp(data[i].planeType, data[i+1].planeType)>0)
            {
                n = data[i];
                data[i] = data[i+1];
                data[i+1] = n;         
 
                lChanges = true;
            }  
    }
    std::string userDestination;
    std::cout << "Input the destination: ";
    std::getline(std::cin, userDestination);
 
    unsigned resultsCounter(0);
    std::cout << "Results: " << std::endl;
    for (unsigned long long i = 0; i < structSize; i++) {
        if (data[i].finalDestination == userDestination) {
            std::cout << "Flight: " << data[i].flightNumber << "(" << data[i].planeType << ")" << std::endl;
            resultsCounter++;
        }
    }
    if (!resultsCounter)
        std::cout << "Nothing!" << std::endl;
 
    return 0;
}
Вот попытка
C++
1
2
3
4
5
6
7
8
9
10
lChanges = false; 
        for (i=0; i<6; i++)
            if (strcmp(data[i].planeType, data[i+1].planeType)>0)
            {
                n = data[i];
                data[i] = data[i+1];
                data[i+1] = n;         
 
                lChanges = true;
            }
0
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,737
Записей в блоге: 1
21.05.2013, 21:00 9
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
#include <iostream>
#include <algorithm>
#include <string>
 
struct Aeroflot
{
    int flightNumber;
    std::string planeType;
    std::string finalDestination;
};
 
 
bool pred(const Aeroflot & lhs,const Aeroflot & rhs){
    return lhs.flightNumber<rhs.flightNumber;
}
 
 
int main()
{
    const std::size_t structSize(3);
    Aeroflot data[structSize];
 
    std::cout << "Input the data: " << std::endl ;
    for (unsigned i = 0; i < structSize; i++) {
        std::cout << (i + 1) << ": " << std::endl;
        std::cout << "Destination: ";
        std::getline(std::cin, data[i].finalDestination);
        std::cout << "Plane type: ";
        std::getline(std::cin, data[i].planeType);
        std::cout << "Flight number: ";
        std::cin >> data[i].flightNumber;
 
        std::cin.sync();
        std::cin.clear();
        std::cout << std::endl;
    }
    std::sort(data,data+structSize,pred);
    for (unsigned long long i = 0; i < structSize; i++)
            std::cout << "Flight: " << data[i].finalDestination<<" - "<<data[i].flightNumber << "(" << data[i].planeType << ")" << std::endl;
    std::string userDestination;
    std::cout << "Input the destination: ";
    std::getline(std::cin, userDestination);
    unsigned resultsCounter(0);
    std::cout << "Results: " << std::endl;
    for (unsigned long long i = 0; i < structSize; i++) {
        if (data[i].finalDestination == userDestination) {
            std::cout << "Flight: " << data[i].flightNumber << "(" << data[i].planeType << ")" << std::endl;
            resultsCounter++;
        }
    }
    if (!resultsCounter)
        std::cout << "Nothing!" << std::endl;
 
    return 0;
}
1
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:06  [ТС] 10
Спасибо конечтно, но я еще этого не изучал, мне хотябы комменты)

Добавлено через 1 минуту
А вышло интерестно, можно коммент )
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
21.05.2013, 21:10 11
DRUNY195,

C++
1
2
3
4
5
6
7
8
9
for(int i = 0; i < structSize - 1; ++i){
        for(int j = i + 1; j < structSize; ++j){
            if(data[i].flightNumber > data[j].flightNumber){
                Aeroflot temp = data[i];
                data[i] = data[j];
                data[j] = temp;
            }
        }
    }
1
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:15  [ТС] 12
в принципе суть я понял, но у меня и проблема с выводом(((
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
21.05.2013, 21:17 13
DRUNY195, какая?
0
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:20  [ТС] 14
Как реализовать вывод в консоль?
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
21.05.2013, 21:23 15
DRUNY195, вот теперь не говорите что ваш код

C++
1
2
3
4
for(int i = 0; i < structSize; ++i){
        std::cout << data[i].finalDestination << '\n' <<
            data[i].flightNumber << '\n' << data[i].planeType << "\n\n";
    }
1
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:26  [ТС] 16
А кто сказал что это мой код, мне этот код переделали, могу свой скинуть, ток там не выводит на экран данные
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
21.05.2013, 21:30 17
DRUNY195, в мое посту выше вывод, но там просто выводит значения, можете сделать красивее, если хотите
0
3 / 3 / 3
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:44  [ТС] 18
НУ я понял, у же сделал красивее, спасибо))

Добавлено через 12 минут
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
#include <iostream>
 
#include <string>
 
struct Aeroflot
{
    int flightNumber;
    std::string planeType;
    std::string finalDestination;
};
 
 
int main()
{
    const std::size_t structSize(3);
    Aeroflot data[structSize];
 
 
    std::cout << "Input the data: " << std::endl ;
    for (unsigned i = 0; i < structSize; i++) {
        std::cout << (i + 1) << ": " << std::endl;
        std::cout << "Destination: ";
        std::getline(std::cin, data[i].finalDestination);
        std::cout << "Plane type: ";
        std::getline(std::cin, data[i].planeType);
        std::cout << "Flight number: ";
        std::cin >> data[i].flightNumber;
 
        std::cin.sync();
        std::cin.clear();
        std::cout << std::endl;
    }
    for(int i = 0; i < structSize - 1; ++i){
        for(int j = i + 1; j < structSize; ++j){
            if(data[i].flightNumber > data[j].flightNumber){
                Aeroflot temp = data[i];
                data[i] = data[j];
                data[j] = temp;
            }
        }
    }
 for(int i = 0; i < structSize; ++i){
        std::cout << data[i].finalDestination << '\n' 
             <<  "Flight: " << data[i].finalDestination<<" - "<<data[i].flightNumber << "(" << data[i].planeType << ")"  << "\n\n";
    }
    
 
    std::string userDestination;
    std::cout << "Input the destination: ";
    std::getline(std::cin, userDestination);
 
    unsigned resultsCounter(0);
    std::cout << "Results: " << std::endl;
    for (unsigned long long i = 0; i < structSize; i++) {
        if (data[i].finalDestination == userDestination) {
            std::cout << "Flight: " << data[i].flightNumber << "(" << data[i].planeType << ")" << std::endl;
            resultsCounter++;
        }
    }
    if (!resultsCounter)
        std::cout << "Nothing!" << std::endl;
 
    return 0;
}
Вот, если кто-то будет искать такое же задание
0
0 / 0 / 2
Регистрация: 11.03.2014
Сообщений: 8
11.03.2014, 19:35 19
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
#include <iostream>
#include <conio.h>
using namespace std;
const int n=7; //количество записей (размерность массива)
 
int main() //главная функция программы
{
  int w;
  setlocale(LC_ALL,"Russian"); //подключение русского языка
 
/*--------Создание структуры---------*/
  struct AEROFLOT{
       char* destination; //пункт назначения
       char* tip; //тип самолёта
       int nom; //номер рейса
}; //определение массива с записями
    cout<<"введите кол-во рейсов ";
    cin>>w;   
    AEROFLOT *air = new AEROFLOT [w];
    //cout<<"Ожидается ввод данных"<<'\n'<<'\n';
 
/*--------заполнение массива---------*/
    for (int i=0; i<w; i++){
    cout<<"Номер рейса: ";
    cin>>air[i].nom;
    cout<<"Пункт назначения: ";
    char s[50];         
    cin>>s;  
air[i].destination = new char[strlen(s)+1];
strcpy(air[i].destination,s);
    cout<<"Тип самолёта: ";
char t[50];       
    cin>>t; 
 air[i].tip = new char[strlen(t)+1];
strcpy(air[i].tip,t);
    cout<<'\n';
} //for
 
/*-------диалог с пользователем-------*/
    char str[50]; //запрашиваемый пункт назначения
    cout<<"\n\nПоиск рейсов: "<<endl;
    cout<<"Введите пожалуйста название самолёта: ";
    cin>>str; //ввод запроса
    
//-------цикл поиска совпадений-------//
    cout<<'\n'<<"Информация о рейсах:"<<'\n'<<'\n'; 
for (int i=0; i<w; i++){
    if (!(strcmp(str,air[i].tip)))
    {   
        cout<<"Номер рейса: "<<air[i].nom<<'\n';
        cout<<"Пункт назначения: ";puts(air[i].destination);
        cout<<"Тип самолёта: ";puts(air[i].tip); }
    else cout<<"рейсов нет!"<<'\n'<<'\n';
 //if
} //for
/*сортировка пузырем*/
   {
 int j,k;
 AEROFLOT nom;
 for(j=0; j<w-1; j++){
 for(k=j+1; k<w; k++){
   if(strcmpi(air[j].nom,air[k].nom)>0){
      nom=air[j];
   air[j]=air[k];
   air[k]=nom;
   }
   }
   }
 }
 
getch();
return 0;
}
0
71 / 53 / 10
Регистрация: 31.07.2009
Сообщений: 149
11.03.2014, 19:50 20
Не в тему,
в последнее время очень много структур данных AEROFLOT, у Вас у всех один препод что ли?
0
11.03.2014, 19:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.03.2014, 19:50
Помогаю со студенческими работами здесь

Описать структуру с именем AEROFLOT
Ребята помогите решить задачу для лабы....:cry: Описать структуру с именем AER0FL0T,...

Описать структуру с именем AEROFLOT
1. Описать структуру с именем AEROFLOT, содержащую следующие поля: - название пункта назначения...

Описать структуру с именем AEROFLOT
Описать структуру с именем AEROFLOT, содержащую следующие поля: • название пункта назначения...

Описать структуру с именем AEROFLOT
Описать структуру с именем AEROFLOT, содержащую поля:  1)название пункта назначения рейса;...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru