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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.04.2011, 00:05   #1
Alexander1205
Пользователь
 
Аватар для Alexander1205
 
Регистрация: 22.01.2011
Сообщений: 78
По умолчанию удвоить символ в строке

Всем доброго времени суток! Есть программа,подсчитывающая количество больших и маленьких символов в заданной строке. А как можно удвоить символы,например: a b c -> aa bb cc?
#include<iostream>
#include<string.h>
#include<stdio.h>
using namespace std;

void big(char *line)
{
char *symbols = new char[60];
int count1 = 0;

strcpy(symbols,"");
char alfa[2];
strcpy(alfa,"a");
do
{
strcat(symbols,alfa);
alfa[0]++;
}while(strstr(alfa,"z")==NULL);
while(*line!='\0')
{
line=line+strcspn(line,symbols);
count1=count1+strspn(line,symbols);
line=line+strspn(line,symbols);
}
cout<<" found small letters :"<<count1<<"\n";
}

void small(char *line)
{
char *symbols = new char[60];
int count2 = 0;

strcpy(symbols,"");
char beta[2];
strcpy(beta,"A");
do
{
strcat(symbols,beta);
beta[0]++;
}
while(strstr(beta,"Z")==NULL);
while(*line!='\0')
{
line=line+strcspn(line,symbols);
count2=count2+strspn(line,symbols);
line=line+strspn(line,symbols);
}
cout<<" found big letters :"<<count2<<"\n";
cout<<"\n\n";
}
void main()
{
char *line = new char[50];
cout<<" Please,enter the line :\n>";
gets(line);
big(line);
small(line);
}
Alexander1205 вне форума Ответить с цитированием
Старый 01.04.2011, 00:56   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

Код:
print("".join([i * 2 for i in "abc"]))
сорри за оффтоп, не ударжался)

ну как. создаешь новую строку длиной в 2 раза больше твоей. в цикле проходишься по основной строке и копируешь 2 раза каждый символ. в чем проблема то
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан символ C и строка S. Удвоить каждое вхождение символа C в строку S. MrJohanson Помощь студентам 1 10.03.2010 09:51
Удвоить каждый символ в строке мария2507 Microsoft Office Excel 7 22.12.2009 13:40
Удвоить каждый символ строки, потом перевернуть строку Didi Помощь студентам 6 20.05.2008 15:33