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

В строке удвоить данный символ - C++

Восстановить пароль Регистрация
 
HelloInside
7 / 7 / 1
Регистрация: 31.10.2011
Сообщений: 294
16.01.2013, 12:25     В строке удвоить данный символ #1
Помогите.
В строке удвоить данный символ.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
16.01.2013, 13:02     В строке удвоить данный символ #2
что дано? номер элемента, само число (его нужно найти и удвоить. (удвоить каждое встретившееся или только первый встретившийся?)) Сформулируйте свой вопрос четко, иначе помощь вам мало кто окажет.
HelloInside
7 / 7 / 1
Регистрация: 31.10.2011
Сообщений: 294
16.01.2013, 23:50  [ТС]     В строке удвоить данный символ #3
А можна ли записать как нибуть проще...?

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 <vcl.h>
#include <iostream>
using namespace std;
 
int main()
{
 
    int k,n=5;
 
    char *s=new char[n];
 
    char *s2=new char[n*2];
 
    cin>>s;
 
    for(k=0;k<=strlen(s);k++) {
 
        s2[k*2+1]=s[k];
        s2[k*2]=s[k];
    }
 
    s2[k*2+1]='\0';
 
    cout<<'\n'<<s2;
    system("pause");
    return 0;
}
Добавлено через 2 минуты
Цитата Сообщение от Afflicted Посмотреть сообщение
что дано? номер элемента, само число (его нужно найти и удвоить. (удвоить каждое встретившееся или только первый встретившийся?)) Сформулируйте свой вопрос четко, иначе помощь вам мало кто окажет.
Ну мы просто вводим например "р" и что бы нам вывело "рр", или "п р о л" и вывело - "пп рр оо лл".
Я вот выше скинул задачку, но там сильно умно все сделано), как нибуть проще нада записать...

Добавлено через 10 часов 32 минуты
...
Евгений89
 Аватар для Евгений89
99 / 99 / 9
Регистрация: 17.04.2011
Сообщений: 554
Завершенные тесты: 2
17.01.2013, 00:52     В строке удвоить данный символ #4
Цитата Сообщение от Afflicted Посмотреть сообщение
что дано? номер элемента, само число (его нужно найти и удвоить. (удвоить каждое встретившееся или только первый встретившийся?)) Сформулируйте свой вопрос четко, иначе помощь вам мало кто окажет.

Не по теме:

это называется догадайся сам

HelloInside
7 / 7 / 1
Регистрация: 31.10.2011
Сообщений: 294
17.01.2013, 01:37  [ТС]     В строке удвоить данный символ #5
Цитата Сообщение от Евгений89 Посмотреть сообщение

Не по теме:

это называется догадайся сам

Ну такое задание дали...., сам не могу розобраться, потому и прошу помочь...
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,404
17.01.2013, 06:46     В строке удвоить данный символ #6
HelloInside, там сильно неумно сделано.
А если введенная строка больше 4 символов? Необходимо использовать std::cin.getline() с ограничением.
Еще там утечка памяти, необходимо добавить
C++
1
2
delete []s;
delete []s2;
Для использования функции system необходим хедер
C++
1
#include <cstdlib>
, для strlen
C++
1
#include <cstring>
, а
C++
1
#include <vcl.h>
вообще лишнее.
Переменную, являющуюся счетчиком цикла, желательно (не обязательно) сделать локальной, используя loop initialization.

А сам алгоритм никто проще не напишет, учите язык. И если бы вы задание сформулировали в шапке темы четко, то вам ответили бы скорее, умение излагать мысли - нужная вещь.
Yandex
Объявления
17.01.2013, 06:46     В строке удвоить данный символ
Ответ Создать тему
Опции темы

Текущее время: 14:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru