Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.06.2015, 22:16   #1
кира2015
 
Регистрация: 07.06.2015
Сообщений: 5
По умолчанию помогите пожалуйста написать программы в c++

Определите количество повторяющихся букв в слове.
После каждой буквы "о" в слове вставьте сочетание "ля".
Вычеркните из слова все буквы "я", стоящие на четных местах
кира2015 вне форума Ответить с цитированием
Старый 07.06.2015, 22:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Попытки и наработки показать сможешь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 07.06.2015, 22:34   #3
кира2015
 
Регистрация: 07.06.2015
Сообщений: 5
По умолчанию

После каждой буквы "о" в слове вставьте сочетание "ля".
Код:
#include "stdafx.h"
#include <iostream>                                                            
#include <string.h>                                                           
#include <windows.h> 
using namespace std;                                                            
void main()                                                
{                                   
char a[30];                                 
int i,k, j, b;                       
setlocale(LC_ALL,"Russian");
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
cout<<"Введите слово:";            
cin>>a;               
k=strlen(a);                   
for(i=0; i<k-1;i++)                    
    if (a[i]=='o' )
	{
		for(j=k;j>i;j--)
        a[j+2]=a[j]; 
        a[i]='л';
        a[i+1]='я';
        k+=2;      
		}                      
       
a[k]='\0';                         
cout << a << endl;                    
}

Последний раз редактировалось Stilet; 07.06.2015 в 22:37.
кира2015 вне форума Ответить с цитированием
Старый 07.06.2015, 22:41   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Не пойдет...

Код:
#include "stdafx.h"
#include <iostream>                                                            
#include <string.h>                                                           
#include <windows.h> 
using namespace std;                                                            
void main()                                                
{                                   
char a[30],*b;                                 
int i,j,k=0;                       
setlocale(LC_ALL,"Russian");
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
cout<<"Введите слово:";            
cin>>a;               
for(i=0;i<strlen(a);i++) k+=(a[i]=='o')?3:1;
b=new char[k+1];
j=0;
for(i=0; i<strlen(a);i++)                    
    b[j++]=a[i];
    if (a[i]=='o' ) { b[j++]='л';b[j++]='я';
}                      
       
b[j]='\0';                         
cout << b << endl;    
delete [] b;                
cin.get();
}
Согласна?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 07.06.2015, 23:09   #5
кира2015
 
Регистрация: 07.06.2015
Сообщений: 5
По умолчанию

а она у вас проходит?
кира2015 вне форума Ответить с цитированием
Старый 07.06.2015, 23:23   #6
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

Нужно ещё не забыть, когда запустите консоль, то правой кнопкой по консоли -> выбрать "Properties" -> выбрать "Lucida Console"
8Observer8 вне форума Ответить с цитированием
Старый 08.06.2015, 06:41   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
а она у вас проходит?
Я не проверял )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 08.06.2015, 16:10   #8
RAFA91
Заблокирован
 
Регистрация: 06.02.2011
Сообщений: 1,999
По умолчанию

Вот примерно я так сделал.

только тут после каждой буквы О вставлял 12.

вроде работает.

__________________________

Код:
#include <string.h>
#include <stdio.h>
#include <conio.h>

int main()

{
	char a[81]={0}, b[81]={0};

	int i;

	gets(a);

	printf("\n%s\n",a);

	for(i=0; i<strlen(a); i++)

	{
		if(a[i] == 'O')

		{
			strncpy(b, a + i + 1, strlen(a) - i - 1); 

			b[strlen(a) - i - 1] = '\0';
				
			a[i+1] = '1';

			a[i+2] = '2';

			a[i+3]='\0';

			strcat(a,b);
			
			i = i + 2;
		}
	}
	
	printf("\n%s\n",a);
	
	getch();

	return 0;
}
RAFA91 вне форума Ответить с цитированием
Старый 15.06.2015, 17:47   #9
Иван Перов
Новичок
Джуниор
 
Регистрация: 15.06.2015
Сообщений: 12
По умолчанию

Код:
#include <string>
#include <iostream>
using namespace std;
string a;
char b;
int h;
int main() {
        getline(cin,a);
        for(int i=0; i<a.length(); i++) {
              if(a[i]=='о') {
                     a[i+1]='л';
                     a[i+2]='я';
                     cout<<a[i+1]<<a[i+2];
             }
             b=a[i];
             if(a[i]==b) h++;
             }
             cout<<h;
    return 0;
}

Последний раз редактировалось Stilet; 15.06.2015 в 17:50.
Иван Перов вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите пожалуйста написать программы С++ jinos Помощь студентам 2 23.02.2015 19:33
Помогите написать программы пожалуйста) domowoy Паскаль, Turbo Pascal, PascalABC.NET 6 26.03.2014 07:04
пожалуйста помогите написать 3 программы. ramstor Паскаль, Turbo Pascal, PascalABC.NET 0 20.05.2009 22:41
Помогите написать программы в паскале пожалуйста neomaximus Помощь студентам 1 15.06.2008 07:43