Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 29.10.2016
Сообщений: 23
1

Как сравнить слова?

15.02.2017, 19:54. Показов 2599. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
мне надо вести несколько людей (имя, знак зодиака). потом надо ввести знак зодиака. если такой есть, то вывести информацию о человеке. если нет, то вывод сообщения о том, что нет такого человека. пыталась реализовать через bool, не получается
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.02.2017, 19:54
Ответы с готовыми решениями:

Как сравнить два слова
как сравнить два слова в массиве структур ? // masS.stud=go_23 // // masS.stud=go_23 //...

Как сравнить слова в строке
Как сравнить слова в строке? (СИ)

Простая задача. Как сравнить два слова
Доброго дня. Прошу подсказать. Программа запрашивает имя. Ввожу имя, например Denis. Программа...

Разбить строку на слова (strtok) и сравнить эти слова со словом из Edit-a
Доброго времени суток, господа! Есть строка, её нужно разбить на слова и сравнить эти слова со...

6
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
15.02.2017, 20:11 2
Цитата Сообщение от СветланаХ Посмотреть сообщение
пыталась реализовать через bool
Покажи, как пыталась.
0
0 / 0 / 0
Регистрация: 29.10.2016
Сообщений: 23
15.02.2017, 20:24  [ТС] 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
#include <iostream>
#include <string.h>
using namespace std;
const int N = 4;
struct Znak
{
    static const int SZ = 256;
    char FirstName[SZ];
    char LastName[SZ];
    char Zodiak[SZ];
    int DR[3];
}  A[N]; 
for (int i = 0; i < n; i++)
    {
        cin.sync();
        cout << "Введите фамилию, имя. знак зодиака, дату рождения" << endl;
        gets(A[i].FirstName);
        gets(A[i].LastName);
        gets(A[i].Zodiak);
        cin >> A[i].DR[0];
        cin >> A[i].DR[1];
        cin >> A[i].DR[2];
    }
 
    cout << "Введите знак зодиака"<<endl;
    char zodiak;
    cin >> zodiak;
    bool b = false;
    
    for (int i = 0; i < N; i++){
        if (A[i].Zodiak[i]==zodiak){
            b == true;
            cout << A[i].FirstName
                <<" "
                << A[i].LastName
                <<" "
                << A[i].Zodiak
                <<" "
                << A[i].DR[0]
                <<"."
                << A[i].DR[1]
                <<"."
                << A[i].DR[2]
                <<"."
                << endl;
        }
    }
    
    if (!b){
        cout << "Нет такого человека";
    }
    return 0;
}
0
0 / 0 / 0
Регистрация: 09.02.2017
Сообщений: 5
15.02.2017, 23:17 4
Это не практично, но работает

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
#include <iostream>
#include <string.h>
 
using namespace std;
 
const int ZN = 256;
 
struct ZNAK {
    string FirstName;
    string SecondName;
    string Zodiak;
//  int count=1;
}; 
 
void entry_char() {
    ZNAK znak[ZN];
    string eras;
    int count = 0;
    string s;
    do {
        cin >> eras;
        if (eras == "add") {
           cout << "Enter First Name: "; cin >> znak[count].FirstName; 
           cout << "Enter Second Name: "; cin >> znak[count].SecondName;
           cout << "Enter Zodiak: "; cin >> znak[count].Zodiak;
                    ++count;
           }else if ( eras == "show") {
                 for (int i = 0; i < count; i++) {
                    cout << "\n#" << i << "\n" << "Name: " << znak[i].FirstName << "\nSecond: " << znak[i].SecondName << "\nZnak: " << znak[i].Zodiak << endl; 
                }
           }else if (eras == "check") {
                 system("CLS");
                 cout << "Enter Zodiak: ";cin >> s;
                 for (int i = 0; i < count; i++) {
                          if (s == znak[i].Zodiak) {
                                   cout << "\nOk.\n" << znak[i].FirstName << '\n' << znak[i].SecondName  << endl;
                               }
                    }
           }
    }while(eras != "exit");
    cout << "\n\nAll Persons add" << endl;
}
 
 
int main () {
    entry_char();
    return 0;
}
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
16.02.2017, 01:07 5
Цитата Сообщение от СветланаХ Посмотреть сообщение
for (int i = 0; i < n; i++)
C++
1
for (int i = 0; i < N; i++)
Цитата Сообщение от СветланаХ Посмотреть сообщение
C++
1
char zodiak;
C++
1
char zodiak[30];
Цитата Сообщение от СветланаХ Посмотреть сообщение
C++
1
if (A[i].Zodiak[i]==zodiak)
C++
1
if (strcmp(A[i].Zodiak, zodiak) == 0)
Поместить код, после объявления структуры, в функцию main().
0
Модератор
Эксперт CЭксперт С++
5286 / 2373 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
16.02.2017, 01:34 6
 Комментарий модератора 
СветланаХ, пожалуйста, прочитайте правила форума.
Особое внимание обратите на пункт 4.9 (порядок оформления кода).

.
0
8 / 8 / 10
Регистрация: 10.02.2017
Сообщений: 31
16.02.2017, 14:01 7
С STL чуть покороче
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
#include <bits/stdc++.h>
using namespace std;
 
struct User {
    string Name;
    string Surname;
}; 
 
int main() {
    setlocale(0, "");
    map <string, User> lib;
    string zodiak;
    while(cout << "Введите знак: " && cin >> zodiak && zodiak != "Конец") {
        cout << "Введите имя: ";
        cin >> lib[zodiak].Name;
        cout << "Введите фамилию: ";
        cin >> lib[zodiak].Surname;
    }
    cout << "Введите знак: ";
    string sign;
    cin >> sign;
    cout << "Данные: ";
    map <string, User>::iterator iter = lib.find(sign);
    if(iter != lib.end()) {
        cout << lib[sign].Name << endl;
        cout << lib[sign].Surname << endl;
    }
    else
        cout << "В списке нет такого знака!";
}
0
16.02.2017, 14:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.02.2017, 14:01
Помогаю со студенческими работами здесь

Разбить два предложения на слова и сравнить эти слова (совпадающие вывести)
разбить два предложения на слова и сравнить эти слова(совпадающие вывести) Прошу написать более...

Как с помощью IndexOf выделить все слова в первой строке и сравнить их со словами во второй строке?
как с помощью IndexOf выделить все слова в первой строке и сравнить их со словами во второй строке,...

Сравнить два слова
сравнить два слово - C# Информация, информатика

Сравнить два слова
Даны два слова. Определить, сколько начальных букв первого слова совпадает с начальными буквами...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru