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

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

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

Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ - C++

11.02.2013, 21:40. Просмотров 594. Ответов 7
Метки нет (Все метки)

Заданы 2 строки, состоящие из слов, разделенных пробелами. Определить местоположение символа первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2013, 21:40     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ
Посмотрите здесь:

Найти слово, один и тот же символ в котором встречается максимальное число раз (в рамках всей строки) C++
Найти слово, один и тот же символ в котором встречается максимальное число раз (в рамках всей строки). C++
C++ Найти произведение между соответствующими числами первой и второй строки и вывести результат на экран
Из первой заданной строки удалить каждый символ, принадлежащий второй C++
Строка: Определить местоположение символа первой строки,который первым совпал с одним из символов второй строки. C++
C++ Заданы 2 строки. Определить местоположение символа первой строки, который первым не совпал с одним из символов второй
C++ Вывести каждый второй символ строки
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
xtorne21st
интересующийся
300 / 271 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
11.02.2013, 23:20     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ #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
#include <iostream>
#include <string>
#include <cctype>
 
int compare(const std::string& str1, const std::string& str2)
{
    for (size_t i = 0, j; i < str1.size() || i < str2.size(); ++i)
        if (str1[i] != str2[i]) {
            j = i;
            while (!isalnum(str1[i]))
                --i;
            while (i >= 0 && isalnum(str1[i]))
                --i;
            ++i;
            while (isalnum(str1[i]))
                std::cout << str1[i++];
            std::cout << '\n';
            return j;
        }
    return -1;
}
int main()
{
    std::string line1, line2;
 
    std::cout << "Enter first line: ";
    std::getline(std::cin, line1);
    std::cout << "Enter second line: ";
    std::getline(std::cin, line2);
 
    int index = (compare(line1, line2));
    (index < 0) ? (std::cout << "Not found\n") : 
        (std::cout << "Index = " << index << '\n');
 
    return 0;
}
Aubakirova
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 20
15.02.2013, 23:17  [ТС]     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ #3
программа не совпала с условием, не то к сожалению.
SummerRain
326 / 325 / 17
Регистрация: 16.12.2012
Сообщений: 544
15.02.2013, 23:49     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream> 
#include <string>
 
int main(){
    std::string s1 = "No! No! No! No! I will never forget! I will live my live!";
    std::string s2 = "No! No! No! No! I will never regret! I will live my live!";
    std::string::size_type i = 0, begin, end;
    while (s1[i] == s2[i])
        ++i;
    begin = i;
    while (isalnum(s1[begin - 1]))
        --begin;
    end = i;
    while (isalnum(s1[end]))
        ++end;
    std::string buf = s1.substr(begin, end - begin);
    std::cout << "difference in the " << i + 1 << "th symbol" << std::endl;
    std::cout << "which contains in the word " << "\"" << buf << "\"" << std::endl;
  
    system("pause>0");
    return 0; 
}
xtorne21st
интересующийся
300 / 271 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
15.02.2013, 23:54     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ #5
Цитата Сообщение от Aubakirova Посмотреть сообщение
программа не совпала с условием, не то к сожалению.
Что конкретно не совпало?
Aubakirova
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 20
16.02.2013, 07:48  [ТС]     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ #6
программа выдает только первое слово первой строки и индекс=0, а нужно: "Определить местоположение символа первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ".
xtorne21st
интересующийся
300 / 271 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
16.02.2013, 14:50     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ #7
Символ s первым не совапал:
Bash
1
2
3
4
5
6
ilyuha21st@coldshoot:~/projects$ ./prog
Enter first line: I'am s stirng.
Enter second line: I'am a string.
s
Index = 5
ilyuha21st@coldshoot:~/projects$
Добавлено через 1 минуту
Или вам нужена проверка не абсолютно любой символ?

Добавлено через 3 минуты
Хочу заметить, что програма пердоставленая ув. SummerRain, делает абсолютно тоже самое. Пишите, пожалуйста, чётче условие...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.02.2013, 16:35     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ
Еще ссылки по теме:

C++ Поменять 2 слово первой строки на 3 слово второй строки
C++ Определить местоположение символа первой строки совпавшего с одним из символов второй
C++ Из первой заданной строки удаляется каждый символ, принадлежащий второй заданной строке
Ввести две строки, заменить первый символ "r" символами второй строки C++
C++ Строка: Как найти в строке первый символ, который входит во другую заданную строку?

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

Или воспользуйтесь поиском по форуму:
Aubakirova
0 / 0 / 0
Регистрация: 05.02.2013
Сообщений: 20
16.02.2013, 16:35  [ТС]     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ #8
Спасибо, мы уже решили этот вопрос)
Yandex
Объявления
16.02.2013, 16:35     Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ
Ответ Создать тему
Опции темы

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