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

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

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

Удалить с m по n символов, перезаписать строку и показать ее на экран - C++

14.02.2014, 23:11. Просмотров 624. Ответов 3
Метки нет (Все метки)

Удалить с m по n символов, перезаписать строку и показать ее на экран.
К примеру массив на 10 символов, я удаляю с 4 по 6, а то что осталось вывожу как новую строчку.
Как это можно решить?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2014, 23:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Удалить с m по n символов, перезаписать строку и показать ее на экран (C++):

Удалить с m по n символов, перезаписать строку и показать ее на экран - C++
Знает кто-то, как решить данную задача на С++? При помощи строк? Удалить с m по n символов, перезаписать строку и показать ее на экран.

Удалить с m по n символов, перезаписать строку и показать ее на экран - C++
1. Пользователь вводит строку с клавиатуры в фиксированный массив. Необходимо проверить, cколько элементов массива теперь занято и сколько...

Удалить с m по n, символов, перезаписать строку и показать ее на экран - C++
Удалить с m по n символов, перезаписать строку и показать ее на экран. С использованием строк.

Удалить с m по n символов, перезаписать строку и показать ее на экран - C++
Уважаемые форумчане! Подскажите, как исправить ошибку? Проблема в том, что удаляет символы с хвоста #include <iostream> #include...

Удалить с m по n символов, перезаписать строку и показать ее на экран - C++
Что неправильно в решении? задание : Удалить с m по n символов, перезаписать строку и показать ее на экран #include <iostream> ...

Удалить с m по n символов, перезаписать строку и показать ее на экран - C++
Удалить с m по n символов, перезаписать строку и показать ее на экран

3
petyahohlov
27 / 22 / 5
Регистрация: 31.07.2013
Сообщений: 121
15.02.2014, 00:44 #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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <iostream>
#include <iomanip>
#include <string>
#include <stdio.h>
 
using namespace std;
 
int main()
{
    int i,m,n,j;
    char a[50];
    puts("vvedite stroky");
    gets(a);
loop:   cout<<"vvedite m i n= ";
    cin>>m>>n;
    cout<<"\n";
    if(m==n)
    {
        goto loop;
    }
    if(m<n)
    {
        for(j=0;j<n-m;j++)
        {
            for(i=m;i<n;i++)
            {
                a[i]=a[i+1];
            }
        }
    }
    else
    {
        for(j=0;j<m-n;j++)
        {
            for(i=n;i<m;i++)
            {
                a[i]=a[i+1];
            }
        }
    }
    puts(a);
    return 0;
}
вот только чуть чуть нужно доработь
0
Anwer
0 / 0 / 0
Регистрация: 02.01.2014
Сообщений: 49
15.02.2014, 01:18  [ТС] #3
Большое спасибо, а можно как-то объяснить немного решение, что бы понял... Главное хочу понять, как решается.
0
petyahohlov
27 / 22 / 5
Регистрация: 31.07.2013
Сообщений: 121
15.02.2014, 20:00 #4
Цитата Сообщение от Anwer Посмотреть сообщение
Большое спасибо, а можно как-то объяснить немного решение, что бы понял... Главное хочу понять, как решается.
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
#include <iostream>
#include <iomanip>
#include <string>
#include <stdio.h>
 
using namespace std;
 
int main()
{
    int i,m,n,j;
    char a[50];
    puts("vvedite stroky");     // вводим стоку
    gets(a);                        
loop:   cout<<"vvedite m i n= ";  //loop-это как бы закладка, она нужна для goto. затем вводим два числа.
    cin>>m>>n;
    cout<<"\n";
    if(m==n)   //если они равны то нечего удалять. и мы используем goto т.е. перейти к закладке loop чтобы      ввести другие числа.
    {
        goto loop;
    }
    if(m<n)   //проверяем с какого числа начинать удалять
    {
        for(j=0;j<n-m;j++)  //этот цикл повторяется столько раз сколько элементов нужно удалить.
        {
            for(i=m;i<n;i++)  //этот цикл удаляет один элемент т.е. сохраняет на его место следующий за ним
            {
                a[i]=a[i+1];
            }
        }
    }
    else
    {
        for(j=0;j<m-n;j++)
        {
            for(i=n;i<m;i++)
            {
                a[i]=a[i+1];
            }
        }
    }
    puts(a);            //выводим строку
    return 0;
}
прости я допустил ошибку здесь:
в строке 25
C++
1
for(i=m;i<n;i++)
n нужно поменять на strlen(a)

и здесь в строке 35
C++
1
for(i=n;i<m;i++)
m нужно поменять на strlen(a)
0
15.02.2014, 20:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.02.2014, 20:00
Привет! Вот еще темы с ответами:

Удалить символы и перезаписать строку - C++
Здравствуйте! Нужно удалить с m по n символов, перезаписать строку и показать ее на экран. Вот моя попытка, но нужно ее доработать,...

Показать на экран с m по n символов строки, - C++
Помогите написать программу (Строки) Показать на экран с m по n символов строки, введенной пользователем и записать данный отрезок в...

Написать программу, которая вводит с клавиатуры строку не более 100 символов, еще одну строку не более 50 символов и выводит на экран позиции вхождени - C++
Задание: Написать программу, которая вводит с клавиатуры строку не более 100 символов, еще одну строку не более 50 символов и выводит на...

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


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

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

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