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

Помогите найти ошибку. Какая дата введена не верно и занести ее в стек(с использованием структуры) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти максимальное число из N случайных чисел http://www.cyberforum.ru/cpp-beginners/thread1021891.html
Найти максимальное число из N случайных чисел. Диапазон генерации случайного числа задается пользователем в начале работы программы.
C++ Задание из путяги по SDL Здравствуйте, подскажите пожалуйста почему у меня обнуляется переменная ok при нажатии на "New game"? #include <stdio.h> #include <stdlib.h> #include <SDL2/SDL.h> #include <SDL2/SDL_ttf.h> #include <time.h> #undef main http://www.cyberforum.ru/cpp-beginners/thread1021880.html
C++ В тексте определить количество слов, имеющих более двух букв 'O' в слове
Задача : В тексте определить количество слов, имеющих более двух букв 'O' в слове. Вывести на печать эти слова. Помогите решить задачу , не очень понимаю структуру , поэтому не знаю с чего начать .
C++ Выбрать все нечетные элементы произвольного одномерного массива в другой массив
Выбрать все нечетные элементы произвольного одномерного массива в другой массив
C++ Разложение в ряд Фурье http://www.cyberforum.ru/cpp-beginners/thread1021837.html
Помогите с задачкой) 7.txt находиться здесь http://www.cyberforum.ru/cpp-beginners/thread1014644.html
C++ Вычислить и напечатать таблицу значений функции Вычислить и напечатать таблицу значений функции d=((ωt+0.25Z+1)/3/81)+ωZ3,aey ω=1.28 t=15.19 -1<=Z<=1 дельта y = 0.5 подробнее

Показать сообщение отдельно
Gdasar
184 / 45 / 9
Регистрация: 18.02.2013
Сообщений: 417
Записей в блоге: 9
28.11.2013, 15:28     Помогите найти ошибку. Какая дата введена не верно и занести ее в стек(с использованием структуры)
Задача:
определить,какая дата введена не верно и занести ее в стек(с использованием структуры). По окончании работы программы вывести количество неверных дат.
Код:
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
#pragma hdrstop
#pragma argsused
 
#include <tchar.h>
#include <stdio.h>
#include <fstream.h>
 
struct date
{
   int day;
   int mou;
   int year;
};
 
int putstack(date *s,int max,int *top,date v)//помещение в стек
{
    if(*top<max)
    {
        (*top)++;
        s[*top]=v;
        return 0;//good
    }
    else
        return 1;//bad
}
 
 
int stackfull(int top,int max)//проверка на переполнение
{
    if(top==max)
    {
        return 1;//bad
    }
    else
        return 0;//good
}
 
void main()
{   int max=100; int top=-1;
    int shk=0;
    struct date v; struct date *s;
    ifstream in("input.txt");
    //ofstream out("output.txt");
    struct date tmp;
    while(!in.eof())
    {
     //in.get();
     in>>tmp.day;
     in.get();
     in>>tmp.mou;
     in.get();
     in>>tmp.year;
     if((tmp.day<=30&&tmp.day>0)&&(tmp.mou<=12&&tmp.mou>0)&&(tmp.year<=2014&&tmp.year>1980))
     {
     //good
     continue;
     }
     else
     {  //bad
     int full=stackfull(top,max);
     if(full==1)
      {
         printf("stek perepolnen"); exit(1);
      }
      else    //good
      {
         int put=putstack(s,max,&top,tmp);
         if(put==1)
         {
          printf("oshibka pomeshenia v steck");
          exit(1);
         }
         else  //good
           shk++;
     }
     }
    }
 /*out << tmp.day << " ";
 out << tmp.mou << " ";
 out << tmp.year << " ";*/
    in.close();
    //out.close();
    printf("%d",shk);
    getchar();
}
Ну в общем программа намертво виснет
Прошу помощи в нахождении ошибки.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru