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

Почему в массив из двух элементов можно ввести третье значение? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Цикл не повторяется http://www.cyberforum.ru/cpp-beginners/thread1004251.html
Задача: Пройти шахматным конем максимальное количество клеток доски. Ставлю несколько попыток, но выполняется только одна. Начиная со второй конь двигаться со стартовой позиции не хочет. Что не так?...
C++ Оператор повторения Проверьте задачу #include<stdio.h> #include<conio.h> #include<math.h> #define n 100 void main() { clrscr(); int i,x; http://www.cyberforum.ru/cpp-beginners/thread1004226.html
Объясните что означает переменная b в моей задачи C++
Объясните что означает переменная b в моей задачи, и почему мы все делаем относительно b. Ниже написан код самой задачи. #include <iostream> using namespace std; void firstNum(int ); ...
C++ Класс со значением полей "по умолчанию"
Здравствуйте. Написал программу, но не могу сделать так, чтобы класс принимал значение полей по умолчанию - закомментированный вариант вызывает ошибку. Пожалуйста помогите исправить. И, если не...
C++ Спрашиваю совет по стилю написания кода http://www.cyberforum.ru/cpp-beginners/thread1004181.html
#include <vector> #include <string> class Errors { private: size_t i; //Глобальный счетчик циклов. std::string exp; //Входящая строка.
C++ Количество треугольников и сумма их периметров При заданных А1,...Аn, В1,...Bn, C1,...Cn, для каждой из n троек вида (Ai, Bi, Ci) проверить может ли быть построен треугольник со сторонами Ai, Bi, Ci при этом посчитать число треугольников и сумму... подробнее

Показать сообщение отдельно
NEvOl
19 / 18 / 0
Регистрация: 13.08.2012
Сообщений: 727

Почему в массив из двух элементов можно ввести третье значение? - C++

11.11.2013, 11:51. Просмотров 252. Ответов 8
Метки (Все метки)

Объясните пожалуйста почему работает программа у нас ведь массив us из 2-х элементов а он позволяет ввести 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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
#include <iostream>
#include <stdlib.h>
 
using namespace std;
 
int length(char a[128])
 {
     int k=0,i=0;
     while(a[i]!='\0')
     {
         k++;
         i++;
     }
 
     return i;
 }
 
bool stri(char a[128], char b[128])
 {
     int i=0;
     bool x=false;
     for (i=0; i<length(a); i++)
     {
            if (a[i]==b[i]&&length(a)==length(b))
                x=true;
            else
            {
                return x=false;
            }
     }
     return x;
 }
 
bool sec(char a[129])
{
    bool x=false;
    for (int i=0; i<length(a); i++)
    {
        int j=a[i];
        if(a[i]>48 && a[i]<58 || a[i]>64 && a[i]<91 || a[i]>96 && a[i]<123)
            x=true;
        else 
            return x=false;
    }
    return x;
}
 
 void main()
{
struct user
{
    char nic[128];
    char pas[128];
};
user us[2];
char n[128],p[128], i,z;
int j=0,k,t,s,q=0;
bool x=false,r=0,f=false, e=true;
while (x==false)
{
    cout<<"1)Registraciya\n2)Vxod\n3)Exit\n";//Меню
    cin>>i;
    if (i=='1')//Регитрация
    {
        if (j<3)
        {   
            r=false;
            f=false;
            while(f==false)
            {
            cout<<"Vvedite login\n";
            cin>>us[j].nic;
            f=sec(us[j].nic);
            if (f==false)
                cout<<"Necorectnii login, Iscluhite znaki\n";
            }
            f=false;
            if (j!=0)
            {
                for (s=0; s<j; s++)
                {
                    if (stri(us[s].nic, us[j].nic))//Проверка повторяемости логинов 
                    {
                        cout<<"Povtorenie loginov\n";
                        r=true;
                        break;
                    }
                }
            }
            if(r==false)
            {
                while (f==false)
                {
                cout<<"Vvedite pas\n";
                cin>>us[j].pas;
                f=sec(us[j].pas);
                if (f==false)
                    cout<<"Necorectnii pas, Iscluhite znaki\n";
                }
                j++;
                
            }
        }
        else
            cout<<"Basa danih zapolnena\n";
    }
    
    else if(i=='2')//Вход
    {
        cout<<"Vvedite login\n";
        cin>>n;
        for (k=0; k<3; k++)
        {   
            if (stri(us[k].nic, n))
            {
                cout<<"vernii login\n";
                for (t=0; t<3; t++)
                {
                    cout<<"Vvedite pas\n";
                    cin>>p;
                    if (stri(us[k].pas,p))
                    {
                        cout<<"Vhod vipolnen\n";
                        break;
                    }
                    else
                        cout<<"Nevernii parol\n";
                }
            }
            else e=false;
        }
        if (e==false) cout<<"Login ne naiden\n";
    }
    else if(i=='3')//Выход
        x=true;
    else cout<<"Error\n";
    cin>>z;
    system("cls");
}
cin>>z;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru