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

перечисление, enum - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ исправить ошибки http://www.cyberforum.ru/cpp-beginners/thread889849.html
кому не сложно запустите и скажите в чем ошибка, одногруппница попросила посмотреть что не так, исправил 16 из 18 ошибок, больше не смог( пожалуйста. #include <stdio.h> #include <conio.h> #include <math.h> #include <dos.h> #include <process.h> #include <stdlib.h> #include <string.h> #include <windows.h>
C++ Не могу найти ошибку( Когда ввожу матрицу 4 на 4 все норм, когда больше размерность то не переставляет блоки!! Помогите разобраться почему так? #include<iostream.h> #include<conio.h> #include<time.h> #include<string.h> #include<iomanip.h> #include<stdlib.h> int n,m; int** mas=new int* ; void create() http://www.cyberforum.ru/cpp-beginners/thread889848.html
Прочтите пожалуйста очень нужно.Я даже не знаю как прикрепить фотки, поэтому только вот так( C++
Wolfriend, оформите тему в соответствии с правилами форума: 1) для каждого задания создайте отдельную тему 2) текстовые задания набирайте от руки 3) задания сопровождайте пояснениями 4) для формул есть редактор формул, в крайнем случае загружайте изображения на форум http://www.cyberforum.ru/about-forum/thread103521.html#post594251
C++ программа для расчёта разрезов
помогите пожалуйста новичку, необходимо написать программу про расчёту минимальных и максимальных разрезов на пути. тоесть должна быть функция добавления форм и путей между формами, а от сюда уже ( из форм ) вытаскиваются данные, которые вводятся вручную и производится свич по формулам расчёта и перебор возможных вариантов. подскажите - с чего начать создание данной программы и как связать...
C++ Как исправить программу (сглаживание функции) http://www.cyberforum.ru/cpp-beginners/thread889818.html
Доброго времени суток) В этой программе я хотел реализовать сглаживание функции и вывести его на экран(по сути пытался перепечатать матлабовский код в с++) типа первый столбик это сам сигнал m=(sin(cos(0.1*t+5)))*cos(sin(-1.33*t-2))+rnd_numb, второй столбик отфильтрованный сигнал m=m+frq*((m-m)/prd) и т д. он вроде даже что то считает, но нормально почему ничего не выводиться на экран,...
C++ Подставление значений в нужные строки Как сделать так, чтобы данные которые выводит out_Date(cor); break подставлял в нужные строки? case 3: cout<<"--------------------\n"; cout<<"Количество комнат : \n"; cout<<"Этаж : \n"; сout<<"Площадь : \n"; сout<<"Адресс : \n"; cout<<"--------------------\n"; подробнее

Показать сообщение отдельно
marina11
1 / 1 / 0
Регистрация: 15.11.2012
Сообщений: 84
03.06.2013, 21:58     перечисление, enum
Здравствуйте!
Пишу программу "картотека для работников", использую enum при выборе Отдела(программисты менеджеры, доставка) и при выборе Транспорта в отделе доставка(авто,поезд,самолет,корабль). При выборе отдела, программа должна просить пользователя ввести число, соотвественно от 0 до 2, затем сравнивать его с константами в enum и записывать в общую таблицу слово("programmers","managment","shipping"), которую потом можно вывести на экран. Проблема в том,что когда показываю таблицу на экран, все поля заполняются так как нужно,а в поле Department(Отдел) выводи горизонтальные полосы. Пожалуйста,подскажите в чем ошибка.
структуры и enum:
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
struct PROG
{
    char name [255];
    char lastname [255];
    int age;
    enum Department;
    char Department [50];
    union
    {
        struct
        {
            char Project [255];
            char CPU [127];
            int Memory;
        }Programmers;
        struct
        {
            char Project [255];
            char Customer [255];
            int ProgrammersNum;
        }Management;
        struct
        {
            char Addres [255];
            char Customer [255];
            int Weight;
            char Transport [20];
            enum Transport;
        }Shipping;
    };
};
struct Value
{
    PROG prog;
    Value *next;
};
enum Department
{
    DEPT_PROGRAMMERS,
    DEPT_MANAGEMENT,
    DEPT_SHIPPING
};
enum Transport
{
    TRANSP_TRAIN,
    TRANSP_AUTO,
    TRANSP_AERO,
    TRANSP_SHIP
};
Value *first = NULL;
отрывок из функции добавления записи
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
printf("Choose the department:\n '0'-programmers;\n '1'-managment;\n '2'-shipping\n");
        scanf("%d",&q);
        cin.ignore(20,'\n');
        if (q==DEPT_PROGRAMMERS)
        {
            printf("programmers",&v->prog.Department);
            printf("\nEnter the project: ");
            gets(v->prog.Programmers.Project);
            printf("Enter the CPU: ");
            gets(v->prog.Programmers.CPU);
            printf("Enter the memory: ");
            scanf("%d",&v->prog.Programmers.Memory);
            cin.ignore(20, '\n'); // Удаляем из буфера ввода все, что там могло остаться после ввода
        }
        if (q==DEPT_MANAGEMENT)
        {
            printf("management",&v->prog.Department);
            printf("\nEnter the project: ");
            gets(v->prog.Management.Project);
            printf("Enter the customers: ");
            gets(v->prog.Management.Customer);
            printf("Enter the numbers of programmers: ");
            scanf("%d",&v->prog.Management.ProgrammersNum);
            cin.ignore(20, '\n'); // Удаляем из буфера ввода все, что там могло остаться после ввода
        }
        if (q==DEPT_SHIPPING)
        {
            printf("shipping",&v->prog.Department);
            printf("\nEnter the address: ");
            gets(v->prog.Shipping.Addres);
            printf("Enter the customers: ");
            gets(v->prog.Shipping.Customer);
            printf("Enter the weight: ");
            scanf("%d",&v->prog.Shipping.Weight);
            printf("Enter the transport:\n '0' - train;\n '1' - auto;\n '2' - aero;\n '3' - ship\n");
            scanf("%d",&q2);
            if (q2==TRANSP_TRAIN)
            {
                printf("train",&v->prog.Shipping.Transport);
            }
            if (q2==TRANSP_AUTO)
            {
                printf("auto",&v->prog.Shipping.Transport);
            }
            if (q2==TRANSP_AERO)
            {
                printf("aero",&v->prog.Shipping.Transport);
            }
            if (q2==TRANSP_SHIP)
            {
                printf("ship",&v->prog.Shipping.Transport);
            }
            cin.ignore(20, '\n'); // Удаляем из буфера ввода все, что там могло остаться после ввода
        }
таблица
C++
1
2
3
4
5
    
printf("#  | Name     | Lastname | Age   |Departm  P|| Project  | CPU      | Memory     |         \n");
printf("   |          |          |       |         M|| Project  | Customers| Programmers|         \n");
printf("   |          |          |       |         S|| Address  | Customers| Weight     |Transport\n");
printf("---+----------+----------+-------+----------++----------+----------+------------+------------\n");
вот так вывожу в таблицу:
C++
1
printf("%3d|%10s|%10s|%7d|%10s||%10s|%10s|%10d|%10s| \n",K,v->prog.name,v->prog.lastname,v->prog.age,v->prog.Department,v->prog.Programmers.Project,v->prog.Programmers.CPU,v->prog.Programmers.Memory);

И еще вопрос,как написать условие для заполнения полей в таблице: если пользователь выбрал в Department "programmers", то заполнять в таблице поля:Project,CPU,Memory;если выбрал "mamgement, то заполнять другие поля и т.д.?
Миниатюры
перечисление, enum  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru