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

Строки. Удалите из неё буквы (Жалуется на if) - C++

Восстановить пароль Регистрация
 
TheAlpha
6 / 6 / 2
Регистрация: 03.01.2013
Сообщений: 113
04.01.2013, 17:47     Строки. Удалите из неё буквы (Жалуется на if) #1
Вот задача
Дана строка . Удалите из неё среднюю букву, если длина строки нечётная или две средних в противном случае

Мне пишет что ошибка в if

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
 #include<fstream>
using namespace std;
 
int main()
{
    ifstream in("input.txt"); 
    ofstream fout("output.txt");
    string s;
     in>> s;
     int len=s.length()
     if (len%2==0)
     {  fout<< s.erase(len/2,2); }
     else fout<< s.erase(len/2,1);
     return 0;
     }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2013, 17:47     Строки. Удалите из неё буквы (Жалуется на if)
Посмотрите здесь:

C++ Отсортировать цифры, символы и буквы из строки в отдельные строки
C++ Дана строка из 20 символов. вывести из неё латинские строчные буквы
Сделать маленькими все буквы в тех словах, в которых нет ни одной буквы, встречающейся в последнем слове строки. C++
Файловый ввод/вывод. Во всех словах строки переставить все входящие буквы «а» в начало слова, а буквы «я» – в конец C++
Во введенной пользователем строке удалите все пробелы в начале и конце строки C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
coloc
погромист
 Аватар для coloc
409 / 245 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
04.01.2013, 17:49     Строки. Удалите из неё буквы (Жалуется на if) #2
В 12 строке точку с запятую забыли поставить.
nonedark2008
624 / 502 / 92
Регистрация: 28.07.2012
Сообщений: 1,340
04.01.2013, 17:50     Строки. Удалите из неё буквы (Жалуется на if) #3
Цитата Сообщение от TheAlpha Посмотреть сообщение
len=s.length()
Точки с запятой в конце нет.
TheAlpha
6 / 6 / 2
Регистрация: 03.01.2013
Сообщений: 113
04.01.2013, 18:08  [ТС]     Строки. Удалите из неё буквы (Жалуется на if) #4
Спасибо с if разобрался, но существуют такие значения, при которых программа работает не правильно, какие эти значения я не знаю,но проходит она 12 тестов из 20, можете помочь

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
 #include<fstream>
using namespace std;
 
int main()
{
    ifstream in("input.txt"); 
    ofstream fout("output.txt");
    string s;
     in>> s;
     int len=s.length();
     if (len <3 || len >100)
     {return 1;}
     
     if (len%2==0)
     {  fout<< s.erase(len/2,2); }
     else fout<< s.erase(len/2,1);
     return 0;
     }
coloc
погромист
 Аватар для coloc
409 / 245 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
04.01.2013, 18:11     Строки. Удалите из неё буквы (Жалуется на if) #5
Цитата Сообщение от TheAlpha Посмотреть сообщение
но проходит она 12 тестов из 20
Напишите, что за тесты
TheAlpha
6 / 6 / 2
Регистрация: 03.01.2013
Сообщений: 113
04.01.2013, 18:16  [ТС]     Строки. Удалите из неё буквы (Жалуется на if) #6
Контестер
http://school.sgu.ru/mod/contester/p...p?a=12&pid=218
Там регистрироваться нужно, но если потребуется, то могу дать свой логин и пароль, так как там все равно нету ничего важного
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
04.01.2013, 18:26     Строки. Удалите из неё буквы (Жалуется на if) #7
Попробуй для чётных удалять так:
s.erase(len/2 - 1,2)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2013, 18:34     Строки. Удалите из неё буквы (Жалуется на if)
Еще ссылки по теме:

Упорядочить символы строки B в алфавитном порядке и удалить латинские буквы из строки A C++
C++ Создать новые строки, содержащие цифры, буквы, а также знаки пунктуации, выбранные из введенной строки
В текстовом файле заменить все строки, начинающиеся с буквы ‘f’ на строки, начинающиеся с буквы ‘a’ C++

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

Или воспользуйтесь поиском по форуму:
TheAlpha
6 / 6 / 2
Регистрация: 03.01.2013
Сообщений: 113
04.01.2013, 18:34  [ТС]     Строки. Удалите из неё буквы (Жалуется на if) #8
Сработало, спасибо!
Yandex
Объявления
04.01.2013, 18:34     Строки. Удалите из неё буквы (Жалуется на if)
Ответ Создать тему
Опции темы

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