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

Задача из ЕГЭ - C++

Восстановить пароль Регистрация
 
PG94
2 / 2 / 0
Регистрация: 15.01.2012
Сообщений: 181
14.03.2012, 17:34     Задача из ЕГЭ #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
#include<iostream>
#include<string.h>
using namespace std;
const int M=100;
struct Trains
{   char Station[50];//станция
    char times[6];//время
};
int main()
{   Trains Tr[M];
    int N;//реальное кол-во поездов,уд. условиям задачи
    int i,j; 
    int CountTr=0;//подсчёт поездов, информация о которых была занесена в структуру
    char buff[50],sim;
    char Rtime[6],places[4];// время текущего поезда, кол-во свободных мест в нём
    int num;//число, фурмируемое из времени
    scanf("%d",&N);
    for(i=0;i<N;i++)
    {   scanf("%s",&buff);
        scanf("%c",&sim);
        while(sim==' ')
            scanf("%c",&sim);
        Rtime[0]=sim;
        j=0;
        do
        {   j++;
            scanf("%c",&Rtime[j]);
        }
        while(Rtime[j]!=' ');
        Rtime[j]='\0';
        scanf("%c",places[0]);
        j=1;
        do
        {   j++;
            scanf("%c",&places[j]);
        }
        while(places[j]!='.'&&places[j]!=' ');
        if(places[j]==' ')
            while(places[j]!='.')
                scanf("%c",&places[j]);
        places[j]='\0';
        //обработка данных
        if(places[0]=='0')
        {   num=0;
            for(j=0;Rtime[j]!='\0';j++)
                if(Rtime[j]>='0'&&Rtime[j]<='9')
                    num=num*10+(Rtime[j]-48);
            if(num<=1410)
            {   strcpy(Tr[CountTr].Station,buff);
                strcpy(Tr[CountTr].times,Rtime);
                CountTr++;
            }
        
        }
    }
    if(CountTr==0)printf("no\n");
    else 
        for(i=0;i<CountTr;i++)
            printf("%s %s\n",Tr[i].Station,Tr[i].times);
    return 0;
}
Программа, к сожалению, не работает. Помогите исправить ошибки и, если можно, решить данную задачу более эффективным способом.
Спасибо.
P.S. задача из ЕГЭ, поэтому лучше решать как можно более проще.
Миниатюры
Задача из ЕГЭ   Задача из ЕГЭ  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.03.2012, 17:34     Задача из ЕГЭ
Посмотрите здесь:

ЕГЭ Информатика С2 C++
ЕГЭ Информатика С2 C++
C++ ЕГЭ Информатика С4
C++ ЕГЭ Информатика
Массивы A+B=C (трудная задача из ЕГЭ) C++
C++ C4 ЕГЭ
задача с4 егэ :( C++
C++ Кодировка в консоли (на ЕГЭ)

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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