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

Задача: "Слишком длинные слова" (RUNTIME_ERROR) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ потоковое чтение из файла http://www.cyberforum.ru/cpp-beginners/thread662866.html
Всем привет, прощу помощи. Стоит следующая задача,есть текстовый файл, в него одна программа постоянно пишет нужную мне информацию, логи. Мне надо открыть файл и начав с конца файла, построчно писать всё что появляется новое - в вектор и обрабатывать. С обработкой я разберусь. А вот с файлом не получается, я пытаюсь сравнивать размеры файла и при появлении новых данных открывать файл и...
C++ Правило "Ж, Ч, Ш,Щ пишется И, А, У, а не Ы, Я, Ю" В русском языке, как правило, после букв Ж, Ч, Ш,Щ пишется И, А, У, а не Ы, Я, Ю. Проверить заданный текст на соблюдение этого правила и исправить ошибки (с учетом исключений: ЖЮРИ, БРОШЮРА, ПАРАШЮТ). http://www.cyberforum.ru/cpp-beginners/thread662859.html
Удалить последнюю букву в каждом слове C++
удалить последнюю букву в каждом слове Алгоритм: Описание ввод слов через пробелы условие если A равно " "(пробелу) по удалить a вывод полученного текста
C++ Определение и использование дружественных шаблонов
Задача звучит следующим образом: Определите шаблон класса Bob с одним типовым параметром. Объявите Bob дружественным для всех специализаций шаблонного класса Friendly и для шаблонного класса Picky только при совпадении типов параметров Bob и Picky. Включите в Bob функции, демонстрирующие дружественное отношение между классами. #include <iostream> template<class T> class Bob { void...
C++ массивы в с++ как сделать? http://www.cyberforum.ru/cpp-beginners/thread662849.html
нужно переместить файлы с одного txt документа в другой в обратном порядке в файле числа от 0 до 9
C++ Не работает простенькая программа! Вывести все "счастливые" четырехзначные числа по семь в строке. сколько таких чисел? Четырехзначное число является "счастливым", если сумма двух первых цифр равна сумме последних двух. Я здесь набросал несколько: #include<conio.h> #include<locale.h> #include<stdio.h> int main() { for(int i=1000 ;i<=9999;i++) { подробнее

Показать сообщение отдельно
akimo
0 / 0 / 0
Регистрация: 03.10.2012
Сообщений: 10

Задача: "Слишком длинные слова" (RUNTIME_ERROR) - C++

03.10.2012, 17:13. Просмотров 1030. Ответов 3
Метки (Все метки)

"RUNTIME_ERROR" при отправлении. В чем ошибка и как сделать правильно?

Текст задачи:
A. Слишком длинные слова
ограничение по времени на тест:2 seconds
ограничение по памяти на тест:256 megabytes
ввод:standard input
вывод:standard output

Иногда некоторые слова вроде «localization» или «internationalization» настолько длинны, что их весьма утомительно писать много раз в каком либо тексте.

Будем считать слово слишком длинным, если его длина строго больше 10 символов. Все слишком длинные слова можно заменить специальной аббревиатурой.

Эта аббревиатура строится следующим образом: записывается первая и последняя буква слова, а между ними — количество букв между первой и последней буквой (в десятичной системе счисления и без ведущих нулей).

Таком образом, «localization» запишется как «l10n», а «internationalization» как «i18n».

Вам предлагается автоматизировать процесс замены слов на аббревиатуры. При этом все слишком длинные слова должны быть заменены аббревиатурой, а слова, не являющиеся слишком длинными, должны остаться без изменений.
Входные данные

В первой строке содержится целое число n (1 ≤ n ≤ 100). В каждой из последующих n строк содержится по одному слову. Все слова состоят из малых латинских букв и имеют длину от 1 до 100 символов.
Выходные данные

Выведите n строк. В i строке должен находится результат замены i-го слова из входных данных.

Примеры тестов

Входные данные
4
word
localization
internationalization
pneumonoultramicroscopicsilicovolcanoconiosis

Выходные данные
word
l10n
i18n
p43s

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
#include <cstdlib>
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
string str, m1[n], m3[n], c[2];
int m2[n], m4[n];
for (int i = 0; i < n; ++i)
{
    m4[i] = 0;
}
for (int i = 0; i < n; ++i)
{
    cin >> str;
    int k = str.length();
    if (k > 10) {
        c[1] = str[0];
        c[2] = str[k - 1];
        m1[i] = c[1];
        m2[i] = k - 2;
        m3[i] = c[2];
    }
    else {
        m4[i] = 1;
        m1[i] = str;
    }
}
for (int i = 0; i < n; ++i)
{
    if (m4[i] != 1)
    {
        cout << m1[i] << m2[i] << m3[i] << endl;
    }
    else
    {
        cout << m1[i] << endl;
    }
}
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru