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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Hero17
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 6
#1

Не работает проверка строк - C++

20.10.2013, 15:40. Просмотров 227. Ответов 2
Метки нет (Все метки)

Работаю в среде DEV C++, и не могу понять что неправильно. Пробовал вместо string ставить массив символов - немного работает но не всё.
Код
#include <iostream>
#include <conio.h>
#include <string.h>
using std :: cout;
using std :: cin;
using std :: string;
using std :: endl;
class Worker {
private:
	string prizv;
	string posada;
	int zarp;
	int stazh;
public:
void SetWorker();
void ShowWorker(){cout<<"Klimenko"<<" "<<posada<<" "<<zarp<<" "<<" "<<stazh;}
void GetPrizv(){cout<<prizv<<endl;}
int GetStazh(){return stazh;}
int GetZarp(){return zarp;}
string GetPosada(){return posada;};
Worker(){posada="Unknow";zarp=stazh=0;};
Worker(string pos){posada=pos;zarp=stazh=0;}
Worker(string pos,int z){posada=pos;zarp=z;stazh=0;};
Worker(string pos,int z,int s){posada=pos;zarp=z;stazh=s;};
};
void Worker::SetWorker()
{
 cout<<"Vvedit6 prizvishche pracivnica ";
 cin>>prizv;
 cout<<"Vvedit6 posadu ";
 cin>>posada;
 cout<<"Vvedit6 stazh roboti ";
 cin>>stazh;
 cout<<"Vvedit6 zarobitnyo platu ";
 cin>>zarp;
}

int main(){
	Worker dani;
	Worker dani2("Kerivnik");
	Worker dani3("Kerivnik",5000);
	Worker dani4("Kerivnik",5000,5);
	int s,z,k=0;
	string p;
	do
	{
		cout<<"1-Vvedenn9 danih pracivnika\n2-Poshuk\n3-Dani pracivnikiv\n4-Vihid\n";
		cin>>k;
	switch(k)
	{
	case 1:
	{
	cout<<"Dani\n";
	dani.ShowWorker();
	dani2.ShowWorker();
	dani3.ShowWorker();
	dani4.ShowWorker();
	dani4.SetWorker();
	break;
	}
	case 2:
		{
			do
			{
			cout<<"Viberit6 kriteriy poshuku\n1-za stazhem\n2-za zarplatneyo\n3-za posadoyo\n4-povernutisya nazad\n";
			cin>>k;
			switch(k){
				case 1: {
				cout<<"Vvedit6 stazh povnih rokiv ";
				cin>>s;
					if(dani4.GetStazh()>s){
						dani4.GetPrizv();
				}
				break;
				}
				case 2:{
				cout<<"Vvedit6 zarplatnyo ";
				cin>>z;
					if(dani4.GetZarp()>z){
						dani4.GetPrizv();
					}
					break;
				}
				case 3:{
				cout<<"Vvedit6 posadu ";
				cin>>p;
					if(strcmp(dani4.GetPosada(),p)==0){
						dani4.GetPrizv();
					}
					break;
				}
			}
		}
		while (k!=4);
		break;
	}

	}
	}

	while (k!=4);
	return 0;
}
Помогите пожалуйста найти выход с этой проблемы.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2013, 15:40     Не работает проверка строк
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FiLF
53 / 53 / 15
Регистрация: 05.09.2013
Сообщений: 1,328
20.10.2013, 16:17     Не работает проверка строк #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
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
#include <iostream>
#include <conio.h>
#include <string>
using std :: cout;
using std :: cin;
using std :: string;
using std :: endl;
class Worker {
private:
    string prizv;
    string posada;
    int zarp;
    int stazh;
public:
void SetWorker();
void ShowWorker(){cout<<"Klimenko"<<" "<<posada<<" "<<zarp<<" "<<" "<<stazh;}
void GetPrizv(){cout<<prizv<<endl;}
int GetStazh(){return stazh;}
int GetZarp(){return zarp;}
string GetPosada(){return posada;};
Worker(){posada="Unknow";zarp=stazh=0;};
Worker(string pos){posada=pos;zarp=stazh=0;}
Worker(string pos,int z){posada=pos;zarp=z;stazh=0;};
Worker(string pos,int z,int s){posada=pos;zarp=z;stazh=s;};
};
void Worker::SetWorker()
{
 cout<<"Vvedit6 prizvishche pracivnica ";
 cin>>prizv;
 cout<<"Vvedit6 posadu ";
 cin>>posada;
 cout<<"Vvedit6 stazh roboti ";
 cin>>stazh;
 cout<<"Vvedit6 zarobitnyo platu ";
 cin>>zarp;
}
 
int main(){
    Worker dani;
    Worker dani2("Kerivnik");
    Worker dani3("Kerivnik",5000);
    Worker dani4("Kerivnik",5000,5);
    int s,z,k=0;
    string p;
    do
    {
        cout<<"1-Vvedenn9 danih pracivnika\n2-Poshuk\n3-Dani pracivnikiv\n4-Vihid\n";
        cin>>k;
    switch(k)
    {
    case 1:
    {
    cout<<"Dani\n";
    dani.ShowWorker();
    dani2.ShowWorker();
    dani3.ShowWorker();
    dani4.ShowWorker();
    dani4.SetWorker();
    break;
    }
    case 2:
        {
            do
            {
            cout<<"Viberit6 kriteriy poshuku\n1-za stazhem\n2-za zarplatneyo\n3-za posadoyo\n4-povernutisya nazad\n";
            cin>>k;
            switch(k){
                case 1: {
                cout<<"Vvedit6 stazh povnih rokiv ";
                cin>>s;
                    if(dani4.GetStazh()>s){
                        dani4.GetPrizv();
                }
                break;
                }
                case 2:{
                cout<<"Vvedit6 zarplatnyo ";
                cin>>z;
                    if(dani4.GetZarp()>z){
                        dani4.GetPrizv();
                    }
                    break;
                }
                case 3:{
                cout<<"Vvedit6 posadu ";
                cin>>p;
                    if(dani4.GetPosada() == p){
                        dani4.GetPrizv();
                    }
                    break;
                }
            }
        }
        while (k!=4);
        break;
    }
 
    }
    }
 
    while (k!=4);
    return 0;
}
Hero17
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 6
20.10.2013, 18:59  [ТС]     Не работает проверка строк #3
Спасибо!!
Yandex
Объявления
20.10.2013, 18:59     Не работает проверка строк
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru