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

Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа - C++

Восстановить пароль Регистрация
 
vagabund
0 / 0 / 0
Регистрация: 04.06.2012
Сообщений: 13
01.01.2013, 18:54     Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа #1
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
#include "stdafx.h"
#include "conio.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    char L[100], L2[100];
    int i,k;
    puts("vvedite stroku(ne bolee 100 simvolov)");
    gets(L);
    
 
    k=strlen(L);
    if (k%2==0){
        for (i=0; i<k; i++)
        {       L[i]=L[i+3];}       
        puts(L);}
    else {
        for (i=0; i<k-3; i++)   
        {       L2[i]=L[i];         }
 
        
        puts(L2);}
 
system("pause");
 
    ;
    return 0;
}

Цель программы: Ввести строку символов. Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа.
Программа сама по себе рабочая вот только есть проблема: если нечетное количество символов в строке, то удаление происходит, но появляются непонятные символы вместо удалившихся(нужно чтобы корректно удалялось). Помогите решить данную проблему, буду весьма благодарен!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.01.2013, 18:54     Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа
Посмотрите здесь:

C++ дано четырехзначное число. если сумма первых 2 цифр=сумме 2 последних, написать "yes", иначе "no"
C++ Программа должна определить длину введенной строки
Программа должна определить длину введенной строки L и, если длина L >15, то удаляются все a..z. C++
C++ Ввести строку символов, если ее длина четная, удалить 2 первых и 2 последних символа.
C++ Ввести строку символов. Определить длину введенной строки L, и если длина L кратна 3, то удаляются все символы, стоящие на местах с номером кратным 3
C++ Строка: Определите длину введенной строки, и если она кратна 4, то поменяйте местами первую часть строки со второй
C++ Программа со строками. Определить длинну введенной строки L и если длина L кратна 3 удалит каждый третий символ
Определить длину каждого слова строки, и если она четная, то вставить в середину слова "aa", иначе "а" C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
02.01.2013, 01:09     Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int _tmain(int argc, _TCHAR* argv[]) {
    
    char L[100];    
    puts("vvedite stroku(ne bolee 100 simvolov)");
    gets(L);    
 
    const int k = 3;
    int n = strlen(L);
        
    if(n >= k) {
            
        if(n % 2 == 0)        
            for(int i = 0; i < (n - k); i++)                                 
                L[i] = L[i + k];            
    
        L[n - k] = '\0';            
    }
 
    puts(L);
    system("pause");        
}
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
02.01.2013, 01:11     Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа #3
C++
1
'\0';
Yandex
Объявления
02.01.2013, 01:11     Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа
Ответ Создать тему
Опции темы

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