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

Программа ввода иформации о маршрутном такси - C++

Восстановить пароль Регистрация
 
konoha
Сообщений: n/a
14.10.2012, 12:39     Программа ввода иформации о маршрутном такси #1
Написать программу ввода информации о маршрутном такси(номер,стоимость,вид транспорта), где стоимость может быть как целочисленным значением, так и вещественным. Написать программу удаления информации о маршрутном такси с указанным номером.
У меня есть обрывок программы, но при вводе значения для удаления информации взять брать первое значение, оно не удаляется...
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 "stdafx.h"
#include <iostream>
using namespace std;
#include <clocale>
#include <conio.h>
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    union as{
    int var_i;
    double var_ch;
};
    
 
struct tag{
    union as ag;
    short jh;
};
 
setlocale(LC_ALL, "Russian");
struct tag a[2];
    a[0].jh=0;
    a[0].ag.var_i=10;
    a[1].jh=1;
    a[1].ag.var_ch=8.888;
    for (int i=0; i<2; i++)
        switch(a[i].jh)
    {
        case 0: cin>>a[i].ag.var_i; break;
        case 1: cin>>a[i].ag.var_ch; break;
        default: cout<<endl<<"error"<<endl;
    }
    union g{
        int l1;
       double l2;
    };
    struct ak{
        union g m;
        short n;
    };
    struct ak p;
    p.n=0;
    p.m.l1=10;
    p.n=1;
    p.m.l2=8.88;
    cout<<endl<<"Введите значение";
    switch(p.n)
    {
        case 0: cin>>p.m.l1; break;
        case 1: cin>>p.m.l2; break;
        default: cout<<endl<<"error"<<endl;
    }
 
    for (int i=0; i<2;i++)
        switch(a[i].jh)
    {
        case 0: if (a[i].ag.var_i!=p.m.l1) cout<<a[i].ag.var_i<<endl; break;
        case 1: if (a[i].ag.var_ch!=p.m.l2) cout<<a[i].ag.var_ch<<endl; break;
        default: cout<<endl<<"error"<<endl;
    }
    getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2012, 12:39     Программа ввода иформации о маршрутном такси
Посмотрите здесь:

Программа на С++ ввода/вывода C++
Программа ввода текста с клавиатуры. C++
Зависает программа после ввода массива C++
C++ Программа для ввода строки от блондинки
Не работает программа проверки ввода цифр C++
Программа проверяет корректность ввода данных C++
Программа ввода и проверки пароля C++
Программа закрывается после ввода массива C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrLOLS
 Аватар для MrLOLS
13 / 13 / 1
Регистрация: 21.11.2010
Сообщений: 63
16.11.2012, 01:59     Программа ввода иформации о маршрутном такси #2
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 <fstream>
#include <stdio.h> // Заголовочный файл ввода/вывода
 
union tag_value
{
    int var_i;
    float var_f;
};
 
struct marshrut
{
    int nomer;
    union tag_value vartist;
    char transport[20];
};
 
int main()
{
    setlocale(LC_ALL, "Ukrainian"); // функцiя для вiдображення кирилицi
    int x;
    struct marshrut example1;
 
    printf("Введiть номер маршруту: ");
    scanf("%d", &example1.nomer);
    printf("Вартiсть проїзду: цiлочисельне (1), дiйсне(2): "); scanf("%d", &x);
 
    if(x==1)
    {
        printf("Введiть вартiсть проїзду (цiлочисельне): ");
        scanf("%d", &example1.vartist.var_i);
    }
    else
    {
        printf("Введiть вартiсть проїзду (дiйсне): ");
        scanf("%f", &example1.vartist.var_f);
    }
    printf("Введiть вид транспорту: "); scanf("%s", &example1.transport);
 
    printf("\nНомер маршруту: %d\n", example1.nomer);
    if(x==1) printf("Вартiсть проїзду (цiлочисельне): %d\n", example1.vartist.var_i);
    else printf("Вартiсть проїзду (дiйсне): %f\n", example1.vartist.var_f);
    printf("Вид транспорту: %s\n", example1.transport);
}
MrLOLS
 Аватар для MrLOLS
13 / 13 / 1
Регистрация: 21.11.2010
Сообщений: 63
02.12.2012, 03:08     Программа ввода иформации о маршрутном такси #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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#include <stdio.h> // заголовочний файл вводу/виводу
#include <string.h>
#include <iostream>
 
int sz;
 
union tag_value
{
    int var_i;
    float var_f;
};
 
struct marshrut
{
    int nomer;
    union tag_value vartist;
    char transport[20];
};
 
void input(marshrut *massiv)
{
    int x;
    for(int i=0; i<sz ; i++)
    {
        printf("\n[#%d] Введiть номер маршруту: ", i);
        scanf("%d", &massiv[i].nomer);
 
        printf("[#%d] Вартiсть проїзду: цiлочисельне (1), дiйсне(2): ", i);
        scanf("%d", &x);
 
        if(x==1)
        {
            printf("[#%d] Введiть вартiсть проїзду (цiлочисельне): ", i);
            scanf("%d", &massiv[i].vartist.var_i);
        }
        else
        {
            printf("[#%d] Введiть вартiсть проїзду (дiйсне): ", i);
            scanf("%f", &massiv[i].vartist.var_f);
        }
 
        printf("[#%d] Введiть вид транспорту: ", i);
        scanf("%s", &massiv[i].transport);
    }
}
 
void output(marshrut *massiv)
{
    if (sz == 0) printf("\n[!] Маршрутiв немає.");
    else
    {
        printf("\nСтворенi маршрути: ");
        for(int i=0; i < sz ; i++)
        {
            printf("\n[#%d] Номер маршруту: %d", i, massiv[i].nomer);
            printf("\n[#%d] Вартiсть проїзду (цiлочисельне): %d", i, massiv[i].vartist.var_i);
            printf("\n[#%d] Вартiсть проїзду (дiйсне): %f", i, massiv[i].vartist.var_f);
            printf("\n[#%d] Вид транспорту: %s\n", i, massiv[i].transport);
        }
    }
}
 
int del(marshrut *massiv, int v)
{
    for(int i=0; i < sz ; i++)
    {
        if(massiv[i].nomer == v) // якщо знайдено маршрут з потрібним номером
        {
            for(int j=i; j<sz; j++) // перекриваємо знайдений маршрут зправа на ліво
            {
                massiv[j].nomer = massiv[j+1].nomer;
                massiv[j].vartist = massiv[j+1].vartist;
                strcpy(massiv[j].transport, massiv[j+1].transport);
            }
            sz--; // зменьшуємо розмір масиву структур
            return(0);
        }
    }
    printf("\nМаршрут з цим номером не знайдений.");
}
 
int main()
{
    setlocale(LC_ALL, "Ukrainian"); // функцiя для вiдображення кирилицi
    int v;
 
    printf("Введiть кiлькiсть маршрутiв: ");
    scanf("%d", &sz);
    marshrut *array = new marshrut[sz];
 
    input(array);
    output(array);
 
    printf("\nЯкий маршрут треба видалити: ");
    scanf("%d", &v);
    del(array, v);
    output(array);
}
Yandex
Объявления
02.12.2012, 03:08     Программа ввода иформации о маршрутном такси
Ответ Создать тему
Опции темы

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