Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
63 / 35 / 13
Регистрация: 21.10.2010
Сообщений: 538
1

Подправьте решение

26.11.2010, 19:34. Показов 580. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Скажите пожалуйста почему программа работает не правильно
вот задача:

Вам дана непустая строка, состоящая из строчных латинских букв, цифр и пробелов. Длина строки не превышает 250 символов. Словом для данной строки называется наибольшая по включению подстрока, не содержащая пробелов. Ваша задача - удалить из строки все лишние пробелы так, чтобы два последовательных слова разделял ровно один пробельный символ. Лидирующих и концевых пробелов в строке быть не должно. Гарантируется, что в строке имеется хотя бы один непробельный символ.


Входные данные
Входных данные - это единственная строка.


Выходные данные
Выведите отредактированную строку без лишних пробелов.


Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "stdafx.h"
#include "iostream"
 
int _tmain(int argc, _TCHAR* argv[])
{
    char str[250];
    std::cout << "Vvedi_strocu\n";
    std::cin >> str;
    for(int a=1;a<strlen(str);a++)
        if(str[a]==' ' & str[a+1]==' ')
        {
            for(int b=a;a<strlen(str);a++)
                str[a]=str[a+1];
        }
        std::cout << str;
        char w;
        std::cin >> w;
        return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.11.2010, 19:34
Ответы с готовыми решениями:

Подправьте код
Постоянно ругается на choise, где бы я его не объявлял. Если можно, выложите что вы исправили, и...

Подправьте немного...
Суть задачи: найти сумму ряда с точностью 0.001 общий член n!/3^n^n вот написал какой то бред ...

Подправьте игру пятнашки
Решил написать игрушку 15-ки я хочу что бы прога содержала такие функции: заполнение поля...

циклы for (подправьте код)
Нужно очень простое решение #include&lt;iostream&gt; #include&lt;string&gt; using namespace std; void...

1
5231 / 3204 / 362
Регистрация: 12.12.2009
Сообщений: 8,116
Записей в блоге: 2
26.11.2010, 21:43 2
1. cin считывает строку до пробела, поэтому воспользуйтесь ф-цией getline(), для вашего случая:
C++
1
cin.getline(str,249);]
2.if(str[a]==' ' & str[a+1]==' ') - оператор & - это оператор, который работает с битами, вам нужно &&. т.е. вот так:
C++
1
if(str[a]==' ' && str[a+1]==' ')
Добавлено через 2 минуты
да, еще цикл не правильный, вот так надо:
C++
1
2
for(int b=a;b<strlen(str);b++)
                                str[b]=str[b+1];
0
26.11.2010, 21:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.11.2010, 21:43
Помогаю со студенческими работами здесь

Подправьте мой код)
Нужно вывести только буквы без символов input \\\aBaBba\\\ output AbBbBA #include...

Массивы! Подправьте прогу!
Подскажите ошибки! Прога должна: 1. Превращать в массив введенную строку символов и выводить...

Подправьте прогу( сортировка массивов)
Подправьте прогу пожалуйста, проверьте на ошибки и добавьте нужные cout, cin, чтоб выводило...

Подправьте код кому не сложно
#include &quot;iostream&quot; #include &lt;stdio.h&gt; using namespace std; class Rastenie { ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru