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

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

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

Дана строка символов... - C++

15.06.2011, 12:14. Просмотров 819. Ответов 11
Метки нет (Все метки)

Помогите пожалуйста решить задачку на C++

Дана строка символов. Заменить в строке сочетание символов "ты" на "вы".

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

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

Дана строка символов. Подсчитать общее число вхождений символов .,+ в строку - C++
Здравствуйте. Дана строка символов. Подсчитать общее число вхождений символов .,+ в строку. Как такую программу сделать? Заранее спасибо за...

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

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

Дана строка символов до точки. Составить программу, проверяющую, является ли данная строка палиндромом, т. е. читается ли она слева направо и справа н - C++
Дана строка символов до точки. Составить программу, проверяющую, является ли данная строка палиндромом, т. е. читается ли она слева направо...

Дана строка символов. Изменить строку – во всех словах, имеющих нечетное количество символов, средний символ удалить. - C++
Дана строка символов. Изменить строку – во всех словах, имеющих нечетное количество символов, средний символ удалить. помогите...

11
Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
15.06.2011, 12:22 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
main()
{
      char str[80];
      int i,L;
      printf("Vvedite stroku: ");
      gets(str);
      L=strlen(str);
      for(i=0;i<L;i++)
      if(str[i]=='т' && str[i+1]=='ы')
      str[i]='в'; str[i+1]='ы';
      puts(str);
      system("pause");
}
1
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
15.06.2011, 12:30 #3
C++
1
2
3
4
5
6
7
8
9
int main()
{
    setlocale(LC_ALL, "Russian");
    char a[]="лалалала ты лалала ты вы ты";
    for (int i=0;i<sizeof(a);i++)
     if (a[i]=='т' && a[i-1]==' ' && a[i+1]=='ы' && (a[i+2]==' '|| (i+2)<=sizeof(a)))
      a[i]='в';
    cout<<a;
}
Добавлено через 57 секунд
Nursik77, как-то странно ваш вариант работает ...
0
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
15.06.2011, 12:37 #4
Gepar, да ваш тоже выходит за пределы массива
0
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
15.06.2011, 12:39 #5
Maxwe11, кде?
0
Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
15.06.2011, 12:39 #6
А шо в нем странного? Ну у меня девспп и я русские буквы подключил в системных настройках.
0
diagon
Higher
1930 / 1196 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
15.06.2011, 12:43 #7
Вариант для транслита
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
#include <cstring>
int main(){
    char str[100];
    std::cin.getline(str,100);
    while (char * x = strstr(str,"ti")) *x = 'v';
    std::cout << str;
    return 0;
}
Возможно где-то и на русском работать будет.
0
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
15.06.2011, 12:46 #8
Nursik77, ну я ввёл 4 раза ты и оно в конце написало 4 раза ты.

Добавлено через 1 минуту
Хотя у меня тоже ещё одного или в условии не хватает, вот так будет правильнее:
C++
1
2
3
4
5
6
    setlocale(LC_ALL, "Russian");
    char a[]="ты ты ты ты";
    for (int i=0;i<sizeof(a);i++)
     if (a[i]=='т' && (a[i-1]==' ' || i-1<0) && a[i+1]=='ы' && (a[i+2]==' '|| (i+2)<=sizeof(a)))
      a[i]='в';
    cout<<a;
0
co6ak
15.06.2011, 12:46
  #9

Не по теме:

я тут сотое сообщение набью и все. тока тсс!

0
Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
15.06.2011, 12:49 #10
Gepar, я же говорю я сейчас на devcpp сижу и подключил русские буквы в сис.настройках.
А если у ТС его нет, то пущай
C
1
setlocale(LC_ALL, "Russian");
добавляет
0
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
15.06.2011, 12:50 #11
Цитата Сообщение от Gepar Посмотреть сообщение
for (int i=0;i<sizeof(a);i++)
if (a[i]=='т' && a[i-1]
1-я итерация цикла
0
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
15.06.2011, 12:56 #12
Maxwe11, там как-бы или есть. В условии или можно поменять ещё местами и получиться так:
C++
1
if (a[i]=='т' && (i-1<0 || a[i-1]==' ') && a[i+1]=='ы' && ((i+2)<=sizeof(a) || a[i+2]==' '))
В этом случае уже точно не полезет за границы.
0
15.06.2011, 12:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.06.2011, 12:56
Привет! Вот еще темы с ответами:

Дана строка символов, пользователь вводит комбинацию символов проверить сколько раз встечается эта комбинация в строке. - C++
Дана строка символов, пользователь вводит комбинацию символов проверить сколько раз встечается эта комбинация в строке. Например: Мама,...

Дана строка символов - C++
Дана строка символов введенных с клавиатуры. Определить является ли введенный символ целым числом. (помогите)

Дана строка из 32 символов - C++
Дана строка из 32 символов, содержащая только символы '0' и '1'. 1)Строка представляет целое число, заданное в двоичном дополнительном...

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


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

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