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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
Alexraiter
0 / 0 / 0
Регистрация: 29.01.2013
Сообщений: 21
#1

Дана последовательность слов. Проверить правильно ли в ней записаны буквосочетания жи и ши. - C++

29.01.2013, 20:53. Просмотров 1493. Ответов 9
Метки нет (Все метки)

Дана последовательность слов. Проверить правильно ли в ней записаны буквосочетания жи и ши. (на языке С++)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2013, 20:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дана последовательность слов. Проверить правильно ли в ней записаны буквосочетания жи и ши. (C++):

Дана последовательность слов. Найти кол-во слов начинающихся с d и кончающихся буквой w - C++
Кто может, помогите, пожалуйста. Использование указателей при работе со строками С++ Дана непустая последовательность слов из латинских...

Дана последовательность чисел. Сколько раз в ней встречается максимальное число? - C++
Given a sequence of numbers. Find out how many times the maximum element of the sequence meets in the sequence. Input data. First...

Дана фраза. Определить сколько в ней симметричных пятибуквенных слов - C++
Необходимо программу написать на С++.. Дана фраза. Определить,сколько в ней симметричных пятибуквенных слов. Добавлено через 10...

Дана последовательность чисел. Выяснить , сколько раз в ней встречается максимальное число. - C++
Дана последовательность чисел. Выяснить , сколько раз в ней встречается максимальное число.

Дана последовательность символов. Определить в ней символ, который по алфавиту предшествует другим - C++
1 задание Дана последовательность символов. Определить в ней символ, который по алфавиту предшествует другим. #include<iostream> ...

Дана последовательность чисел. Выяснить , сколько раз в ней встречается максимальное число. - C++
помогите решить задачу для зачета,а то я совсем ничего не понимаю(((( Дана последовательность чисел. Выяснить , сколько раз в ней...

9
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 543
29.01.2013, 22:31 #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
#include <iostream>
#include <string>
#include <windows.h>
 
 
bool isRight(char * txt)
{
    for (int i = 0; i < strlen(txt); ++i)
        if ( (txt[i] == 'ж' || txt[i] == 'ш') && (txt[i+1] != 'и'))
            return false;
            
    return true;
}
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    
    char txt1[] = "рыжий цвет. Широкая кость.";
    char txt2[] = "шырота и долгота. Жирный мальчик";
    
    std::cout << (isRight(txt1) ? "Верно" : "Не верно") << std::endl;
    std::cout << (isRight(txt2) ? "Верно" : "Не верно") << std::endl;
    
    system("pause >> NULL");
}
1
Alexraiter
0 / 0 / 0
Регистрация: 29.01.2013
Сообщений: 21
30.01.2013, 01:57  [ТС] #3
А можно сделать тоже самое только через VisualStudio C++ ?
0
Alexraiter
0 / 0 / 0
Регистрация: 29.01.2013
Сообщений: 21
04.02.2013, 18:02  [ТС] #4
а как сделать так чтобы я мог в консольном окне писать сам предложения и оно не искало правильно или нет??
0
abit
264 / 263 / 33
Регистрация: 03.02.2013
Сообщений: 731
04.02.2013, 18:17 #5
Цитата Сообщение от Alexraiter Посмотреть сообщение
а как сделать так чтобы я мог в консольном окне писать сам предложения и оно не искало правильно или нет??
приблизительно так:
C++
1
2
3
4
5
6
7
8
while (cin)
    {
        string s;
        getline(cin,s);
        if (s=="exit") break;
        ... тут делаете что хотите с ведённой строкой в s
 
    }
прервётся цикл по команде exit или признаку конца файла (Crtl+D (unix) или Ctrl+Z(win) на новой строке)
аналогично можете сделать и свой удобный выход из while(cin)
0
Alexraiter
0 / 0 / 0
Регистрация: 29.01.2013
Сообщений: 21
04.02.2013, 18:40  [ТС] #6
а как связать эти две программы? только так что бы я сам вписывал нужную мне проверку слов в консоле!
0
abit
264 / 263 / 33
Регистрация: 03.02.2013
Сообщений: 731
04.02.2013, 19:02 #7
Цитата Сообщение от Alexraiter Посмотреть сообщение
а как связать эти две программы? только так что бы я сам вписывал нужную мне проверку слов в консоле!
я если, честно, не понимаю ту программу, к тому же не имею виндуса, чтобы посмотреть что же она делает...
я бы взял за основу класс std::string, и его метод find(), так же пригодился бы toupper()
но смущает что непонятно как проверять )
например слово "жесть" или "желание" вполне себе нормальные слова, а тут забракуются... видимо надо только "ы" браковать
0
Alexraiter
0 / 0 / 0
Регистрация: 29.01.2013
Сообщений: 21
04.02.2013, 19:12  [ТС] #8
в принципе я согласен. но как написать это все я незнаю, помоги)
через функции нада написать и с вводом в файл и выводом из него))
0
Asker
115 / 103 / 11
Регистрация: 18.12.2010
Сообщений: 378
04.02.2013, 19:50 #9
Хотелось бы поправить Вас, Afflicted.

Если мы введём строку "лаваш хорош", то Ваша программа выдаст "Неверно", хотя слова написаны правильно. Это происходит потому, что после буквы Ш стоит пробел, и программа считает пробел ошибкой.

Поэтому предлагаю проверять не на неравенство txt[i+1] букве 'и', а на равенство буквы 'ы'. Да, и кстати, слово "Шыкарно" программа засчитает за правильное, т.к. она не учитывает регистр букв.
предлагаю поменять строку на:
C++
1
if ( (txt[i] == 'ж' || txt[i] == 'ш' || txt[i] == 'Ж' || txt[i] == 'Ш') && (txt[i+1] == 'ы' || txt[i+1] == 'Ы'))
0
_Nilan
5 / 5 / 1
Регистрация: 15.05.2014
Сообщений: 81
Завершенные тесты: 1
27.06.2014, 14:44 #10
А можете зделать так же толька на C#
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.06.2014, 14:44
Привет! Вот еще темы с ответами:

Дана последовательность чисел. Выяснить, сколько раз в ней встречается максимальное число - C++
#include &lt;iostream.h&gt; #include &lt;stdlib.h&gt; #include &lt;time.h&gt; #include &lt;stddef.h&gt; // ------------ size_t index_of_max(int* a,...

Дана последовательность, содержащая 30 слов. Вывести эти слова в алфавитном порядке - C++
Дана последовательность, содержащая 30 слов. Вывести эти слова в алфавитном порядке. Реализовать, используя указатели. На языке С и...

Проверить написание буквосочетания ча - C++
Дано предложение. Нужно проверить написание буквосочетания ча.

Дана строка, содержащая произвольный текст. Проверить, правильно ли в нем расставлены круглые скобки - C++
Дана строка, содержащая произвольный текст. Проверить, правильно ли в нем расставлены круглые скобки (т.е. находится ли правее каждой...


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

Или воспользуйтесь поиском по форуму:
10
Yandex
Объявления
27.06.2014, 14:44
Ответ Создать тему
Опции темы

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