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

заданы 2 строки, состоящие из слов, разделенных пробелами - C++

Восстановить пароль Регистрация
 
bakdaulet
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 8
13.02.2013, 11:26     заданы 2 строки, состоящие из слов, разделенных пробелами #1
заданы 2 строки, состоящие из слов, разделенных пробелами. Если последнее слово больше предпоследнего , то заменить первые пять буквой "а", в противном случае все символы заменить на "*".
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2013, 11:26     заданы 2 строки, состоящие из слов, разделенных пробелами
Посмотрите здесь:

C++ Подсчет количества слов в строке s разделенных пробелами, или запятой
Дан список слов, разделенных между собой пробелами C++
Дан набор слов на английском языке, разделенных пробелами.Выбелить в последовательности нечетные слова прописными буквами C++
C++ Дана строка символов, состоящая из цифр, разделенных пробелами. Вывести четные числа этой строки
Дано строка, состоящая из русских слов, разделенных пробелами (одним или несколькими). ​​Определить количество слов, которые заканчиваются одной и той C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kuli4ok
31 / 31 / 3
Регистрация: 10.10.2012
Сообщений: 88
13.02.2013, 14:08     заданы 2 строки, состоящие из слов, разделенных пробелами #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
44
45
46
47
48
49
50
51
52
53
54
55
#include <iostream>                                                                                                            
 
using namespace std;
 
void operation(char* buffer, int n)
{
    int length_1 = 0, length_2 = 0;
    for(int i=n; i>0; i--)
    {
        if(buffer[i]==' ')
        {
            for(int j=i; buffer[j+1]!='\0'; j++)
            {
                length_1++;
            }
            for(int j=i; ((buffer[j-1]!=' ')&&((j-1))!=0); j--)
            {
                length_2++;
            }
            break;
        }
    }
    if(length_1 > length_2)
    {
        for(int i=0; i<5; i++)
            buffer[i] = 'a';
        return;
    }
    else
    {
        for(int i=0; buffer[i]!='\0'; i++)
        {
            if(buffer[i]!=' ')
                buffer[i] = '*';
            else
                continue;
        }
        return;
    }
}
 
int main()
{
    char *buffer = new char[512];
    cout << "Введите первую строку: ";
    cin.getline(buffer, 512);
    operation(buffer, 512);
    cout << "Результат выполнения для первой строки: " << buffer << "\nВведите вторую строку: ";
    cin.getline(buffer, 512);
    operation(buffer, 512);
    cout << "Результат выполнения для второй строки: " << buffer << "\n";
    delete [] buffer;
    buffer = NULL;
    return 0;
}
bakdaulet
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 8
16.02.2013, 10:42  [ТС]     заданы 2 строки, состоящие из слов, разделенных пробелами #3
На С++ выдает ошибку, можете помочь исправить ее
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11836 / 6815 / 770
Регистрация: 27.09.2012
Сообщений: 16,899
Записей в блоге: 2
Завершенные тесты: 1
16.02.2013, 10:45     заданы 2 строки, состоящие из слов, разделенных пробелами #4
Цитата Сообщение от bakdaulet Посмотреть сообщение
На С++ выдает ошибку, можете помочь исправить ее
Компилятор какой, какая ошибка и где?

P.S. MinGW все компилирует.
bakdaulet
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 8
19.02.2013, 10:46  [ТС]     заданы 2 строки, состоящие из слов, разделенных пробелами #5
В программе есть ошибка, но я ее исправил, проблема в другом. Задание выполнено не верно. Как я понял суть задачи состоит:
1. Когда вводим строку, надо чтобы вводилось не меньше трех слов, пример: "abc abcd abcdf" в данном случае последнее слово больше предпоследнего, поэтому первое слово превращается в "пять а"
2. Если же "abc abcdf abcd" , то заменить все символы на "*".
Yandex
Объявления
19.02.2013, 10:46     заданы 2 строки, состоящие из слов, разделенных пробелами
Ответ Создать тему
Опции темы

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