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

преобразовать строку: после каждой буквы 'z' добавить символ '!' - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ strcat и strncat http://www.cyberforum.ru/cpp-beginners/thread1053401.html
Помогите понять саму идею удаления символа из массива с помощью указанных операторов. Сам это не как не догоняю(
C++ Исходники игр Привет, потихоньку тружусь над платформером, на коленке, хочется посмотреть чужие исходники, пример хорошего кода, так сказать, но понял, что найти не так просто, как кажется! Из хороших исходников нашёл только battle for wesnoth http://www.cyberforum.ru/cpp-beginners/thread1053398.html
Директива препроцессора в несколько строк C++
Подскажите пожалуйста как за дефайнить такую вот функцию float Cosine(float a, float b, float value) { value = (1 - cos(value * F_PI)) * 0.5f; return a * (1 - value) + b * value; } не могу разобраться как записать эту операцию в одно выражение.. мои тщетные попытки увенчались провалом. :<
Целочисленный вектор C++
Как задать целочисленный вектор для подсчета суммы в строках?
C++ Вычисление интеграла http://www.cyberforum.ru/cpp-beginners/thread1053384.html
вычислить интеграл \int_{0}^{6}\frac{exp^sqrt{\frac{6-x}{6+x}}}{(6+x)*\sqrt{36-x^2}} помогите с кодом вычисления данного интеграла .
C++ Двунаправленные списки Помогите написать программу которая находит и удаляет максимальные элементы из двунаправленного списка, вот код программы помогите дописать) #include <stdio.h> #include <iostream> #include <conio.h> #include <fstream> #include <string> #include <list> #include <algorithm> #include <iterator> подробнее

Показать сообщение отдельно
Bakinowski Wlad
1 / 1 / 0
Регистрация: 08.10.2013
Сообщений: 155

преобразовать строку: после каждой буквы 'z' добавить символ '!' - C++

23.12.2013, 16:09. Просмотров 711. Ответов 0
Метки (Все метки)

есть два кода, нужно их соединить, но не получается!
вот задание:преобразовать строку: после каждой буквы 'z' добавить символ '!'. Вывести в алфавитном порядке все согласные латинские буквы, входящие в строку.
1 код

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 "stdafx.h"
#include <iostream> 
 
using namespace std;
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{ 
    const int MAX = 80;              
    char  str1 [MAX], str2 [MAX],str3 [MAX]; 
    unsigned int   i , k = 0,m = 0,x=0;  
    
    cout << "   Enter a string: ";
    cin.getline (str1, MAX); 
 
    for (i = 0; str1[i]; i++) 
    {
      
 
                  
      if (str1[i] == 'z'|| str1[i] == 'Z') {
          str2[k] = str1[i];
          k++;
          str2[k] = '!';
          k++;
      } else   str2[k++] = str1[i];   
    }
    str2[k] = '\0';           
    cout << " Rezult : " << str2<< endl; 
 
 
    i = 0; 
    for (k = 0; str2[k]; k++ ){
 
        if (!(str2[k] == 'a' || str2[k]== 'e' || str2[k]== 'i' || str2[k]== 'u' || str2[k]== 'o' ||str2[k]== 'y')) {
            str1[i] = str2[k];
            i++;
        }
        
    }
        str1[i] = '\0'; 
        cout << " Rezult : " << str1<< endl;
 
        
 
    return 0;
}
он после каждого Z или z ставит !
вот 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
#include "stdafx.h"
#include <iostream>
#include <algorithm>
#include <string>
#include <iterator>
#include <set>
int main()
{
    std::string Line( "qwert** erwr8*re wer8* ** *wrwe" ), letters( "QqWwRrTtPpSsDdFfGgHhJjKkLlZzXxCcVvBbNnMm" );
    
    Line.erase( std::remove( Line.begin(), Line.end(), '*' ), Line.end() );
    std::cout << Line << std::endl;
 
    std::set < char > CharSet( letters.begin(), letters.end() );
    for ( size_t index = 0; index < Line.size(); index++ )
        if ( letters.find( Line[ index ] ) != std::string::npos )
            CharSet.erase( Line[ index ] );
 
    
    std::copy( CharSet.begin(), CharSet.end(), std::ostream_iterator < char >( std::cout, " " ) );
 
    return 0;    
}
он выводит согласные в алфавитном порядке!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 05:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru