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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
08.05.2013, 01:34     Описать структуру из семи элементов типа AEROFLOT #1
A - AEROFLOT
B - - название пункта назначения рейса;
- номер рейса;
- тип самолета.

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

Буду очень благодарен
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2013, 01:34     Описать структуру из семи элементов типа AEROFLOT
Посмотрите здесь:

Описать структуру AEROFLOT C++
C++ Описать структуру с именем AEROFLOT
Описать структуру с именем AEROFLOT C++
C++ Описать структуру с именем AEROFLOT
Описать структуру с именем AEROFLOT C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
WolondeWord
6 / 6 / 1
Регистрация: 06.05.2013
Сообщений: 18
08.05.2013, 04:56     Описать структуру из семи элементов типа AEROFLOT #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.
Там оформление если нужно будет сам подправишь)
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
08.05.2013, 12:08  [ТС]     Описать структуру из семи элементов типа AEROFLOT #3
Спасибо, я сам на Визуале 10 пишу
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
14.05.2013, 17:38     Описать структуру из семи элементов типа AEROFLOT #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;
}
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
14.05.2013, 17:47  [ТС]     Описать структуру из семи элементов типа AEROFLOT #5
Ошибки выдает
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
14.05.2013, 17:56     Описать структуру из семи элементов типа AEROFLOT #6
C++
1
#include <string>
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 20:35  [ТС]     Описать структуру из семи элементов типа AEROFLOT #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;
}
Вот прога, нужно только вставить код который упорядочивает
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 20:52  [ТС]     Описать структуру из семи элементов типа AEROFLOT #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;
            }
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11845 / 6824 / 771
Регистрация: 27.09.2012
Сообщений: 16,919
Записей в блоге: 2
Завершенные тесты: 1
21.05.2013, 21:00     Описать структуру из семи элементов типа AEROFLOT #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;
}
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:06  [ТС]     Описать структуру из семи элементов типа AEROFLOT #10
Спасибо конечтно, но я еще этого не изучал, мне хотябы комменты)

Добавлено через 1 минуту
А вышло интерестно, можно коммент )
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
21.05.2013, 21:10     Описать структуру из семи элементов типа AEROFLOT #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;
            }
        }
    }
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:15  [ТС]     Описать структуру из семи элементов типа AEROFLOT #12
в принципе суть я понял, но у меня и проблема с выводом(((
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
21.05.2013, 21:17     Описать структуру из семи элементов типа AEROFLOT #13
DRUNY195, какая?
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:20  [ТС]     Описать структуру из семи элементов типа AEROFLOT #14
Как реализовать вывод в консоль?
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
21.05.2013, 21:23     Описать структуру из семи элементов типа AEROFLOT #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";
    }
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:26  [ТС]     Описать структуру из семи элементов типа AEROFLOT #16
А кто сказал что это мой код, мне этот код переделали, могу свой скинуть, ток там не выводит на экран данные
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
21.05.2013, 21:30     Описать структуру из семи элементов типа AEROFLOT #17
DRUNY195, в мое посту выше вывод, но там просто выводит значения, можете сделать красивее, если хотите
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
21.05.2013, 21:44  [ТС]     Описать структуру из семи элементов типа AEROFLOT #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;
}
Вот, если кто-то будет искать такое же задание
1071
 Аватар для 1071
0 / 0 / 0
Регистрация: 11.03.2014
Сообщений: 8
11.03.2014, 19:35     Описать структуру из семи элементов типа AEROFLOT #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;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.03.2014, 19:50     Описать структуру из семи элементов типа AEROFLOT
Еще ссылки по теме:

C++ Описать структуру с именем AEROFLOT
C++ Описать структуру с именем AEROFLOT
Описать структуру Aeroflot C++

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

Или воспользуйтесь поиском по форуму:
Nikcharn
 Аватар для Nikcharn
71 / 53 / 3
Регистрация: 31.07.2009
Сообщений: 149
11.03.2014, 19:50     Описать структуру из семи элементов типа AEROFLOT #20
Не в тему,
в последнее время очень много структур данных AEROFLOT, у Вас у всех один препод что ли?
Yandex
Объявления
11.03.2014, 19:50     Описать структуру из семи элементов типа AEROFLOT
Ответ Создать тему

Метки
aeroflot, aeroflot c++, описать структуру, описать структуру aeroflot, описать структуру c++, описать структуру с именем aeroflot, описать структуру с именем aeroflot c++, структура aeroflot, структура aeroflot c++, структуру aeroflot c++, структуры данных, структуры данных c++
Опции темы

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