С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 5.00
MsHassium
2 / 2 / 0
Регистрация: 04.03.2012
Сообщений: 21
#1

Даны две строки. Получить строку, в которой чередуются слова первой и второй строки - C++

04.03.2012, 12:37. Просмотров 1203. Ответов 6
Метки нет (Все метки)

Даны две строки. Получить строку, в которой чередуются слова первой и второй строки. Если в одной из строк число слов больше, чем в другой, то оставшиеся слова этой строки должны быть дописаны в строку-результат.
Вообще задание не написать код, а составить блок схему алгоритма решения, но я хочу решить ее а потом рисовать схему, если есть возможность помочь с кодом, то прошу писать его без лишних усложнений, а именно писать без использования лишних библиотек, т.к. я учусь только на 1 курсе, самостоятельно язык далеко еще не изучил, поэтому будет сложно разобраться в коде!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2012, 12:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Даны две строки. Получить строку, в которой чередуются слова первой и второй строки (C++):

Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции первой строки, с которой вторая строка содер-жится в ней - C++
Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции первой строки, с которой вторая строка...

Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции, с которой вторая строка содержится в первой. - C++
Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции, с которой вторая строка содержится в первой. ...

Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки - C++
Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки. 1. Я дуб дубом,даже...

Функция копирует строку в другую строку заданой длины и помещает текст первой строки по центру второй строки - C++
Ребята помогите пожалуйста с прогой оч нужно, а то я сама не могу собразить полностью и как начать Вот само задание: "Функция...

c++ Даны две строки: S1 и S2. Определить количество вхождений строки S2 в строку S1. - C++
Очень надеюсь на помощь

Даны две строки: S и S0. Определить количество вхождений строки S0 в строку S - C++
Даны две строки: S и S0. Определить количество вхождений строки S0 в строку S.

6
Catstail
Модератор
22915 / 11281 / 1833
Регистрация: 12.02.2012
Сообщений: 18,493
04.03.2012, 12:52 #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
#include "stdio.h"
 
int main(int argc, char* argv[])
{
    char S1[] = "QWERTY";
    char S2[] = "ZXC";
        char S3[100];  /* На всякий случай 100 симв. */
 
    int i,j,k;
 
    for (i=0; i <= 99; i++) S3[i]=0;
 
        i=0;
    j=0;
    k=0;
 
    while(1)
    {
       if ((S1[i]==0) && (S2[j]==0)) break;
 
           if (S1[i] != 0)
       {
           S3[k]=S1[i];
           i++;
           k++;
       }
           if (S2[j] != 0)
       {
           S3[k]=S2[j];
           j++;
           k++;
       }
    }
 
 
    printf("%s\n",S1);
    printf("%s\n",S2);
    printf("%s\n",S3);
 
 
    return 0;
}
1
MsHassium
2 / 2 / 0
Регистрация: 04.03.2012
Сообщений: 21
04.03.2012, 13:33  [ТС] #3
Все отлично, спасибо, но ты используешь переменные типа чар и работаешь с отдельными символами, а нужно со словами! Возможно ли переделать код, для работы с библиотекой STRING?
0
Catstail
Модератор
22915 / 11281 / 1833
Регистрация: 12.02.2012
Сообщений: 18,493
04.03.2012, 18:54 #4
Поясни, что значит "нужно со словами"? Нужно, чтобы слова чередовались? Так это другая задача. Можно подключить "string.h", но ведь ты сам просил "без лишних библиотек"...
1
MsHassium
2 / 2 / 0
Регистрация: 04.03.2012
Сообщений: 21
04.03.2012, 19:04  [ТС] #5
Цитата Сообщение от Catstail Посмотреть сообщение
Поясни, что значит "нужно со словами"? Нужно, чтобы слова чередовались? Так это другая задача. Можно подключить "string.h", но ведь ты сам просил "без лишних библиотек"...
именно! Согласен, моя ошибка, не пояснил что нужно именно с библиотекой string!
0
Catstail
Модератор
22915 / 11281 / 1833
Регистрация: 12.02.2012
Сообщений: 18,493
04.03.2012, 21:09 #6
Я сам тоже поторопился... В задании указаны слова. Виноват. Вот другой код:
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
56
57
58
59
60
61
62
63
64
65
66
#include "string.h"
#include "malloc.h"
#include "stdio.h"
 
int main(int argc, char* argv[])
{
 
    char S1[]="To be or not to be";
    char S2[]="Better later than never";
    char *S3;
 
    char *si1,*si2,*so;
 
    int l1,l2,i;
 
    l1=strlen(S1);
    l2=strlen(S2);
 
    S3= (char *) calloc(l1+l2+2,1);
 
    si1=S1;
    si2=S2;
 
    so=S3;
 
    while (1)
    {
        
        if ((*si1 == 0) && (*si2 == 0)) break;
 
        if (*si1 != 0) 
        {
 
            while ((*si1 != ' ') && (*si1 != 0))
            {
                *so++=*si1++;
            }
 
            if ((*si1 !=0) || (*si2 !=0)) *so++=' ';
 
            if (*si1 != 0) si1++;
 
        }
 
        if (*si2 != 0)
        {
 
            while ((*si2 != ' ') && (*si2 != 0))
            {
                *so++=*si2++;
            }
 
            if ((*si1 !=0) || (*si2 !=0)) *so++=' ';
 
            if (*si2 != 0) si2++;
 
        }
        
    }
 
    printf("%s\n",S3);
 
    free(S3);
 
    return 0;
}
1
MsHassium
2 / 2 / 0
Регистрация: 04.03.2012
Сообщений: 21
04.03.2012, 21:29  [ТС] #7
огромное Вам спасибо. Вы мне очень помогли.
0
04.03.2012, 21:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.03.2012, 21:29
Привет! Вот еще темы с ответами:

1)Даны две действительные квадратные матрицы порядка n. Получить новую матрицу : А) умножение элементов каждой строки первой матрицы на наибольшее из - C++
1)Даны две действительные квадратные матрицы порядка n. Получить новую матрицу : А) умножение элементов каждой строки первой матрицы на...

Даны две действительные квадратные матрицы порядка n. Получить новую матрицу: а) умножением элементов каждой строки первой матрицы на наибольш - C++
Даны две действительные квадратные матрицы порядка n. Получить новую матрицу: а) умножением элементов каждой строки первой матрицы ...

Даны две действительные квадратные матрицы порядка n. Получить новую матрицу: путем умножения элементов каждой строки первой матрицы на наибольшее из - C++
Даны две действительные квадратные матрицы порядка n. Получить новую матрицу: путем умножения элементов каждой строки первой матрицы на...

Приписать второе слово второй строки к первой, развернуть первую строку - C++
Заданы 2 строки, состоящие из слов, разделенных пробелами. Приписать второе слово второй строки к первой. Поменять порядок следования...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.