С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/25: Рейтинг темы: голосов - 25, средняя оценка - 4.56
0 / 0 / 1
Регистрация: 04.03.2012
Сообщений: 61

Даны три строки. Определить, можно ли из символов первых двух строк получить третью строку.

18.03.2012, 06:15. Показов 5141. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не решается.. (( бьюсь 2 дня.. Код свой приводить не буду дабы не сбивать многоуважаемых программистов с толку)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.03.2012, 06:15
Ответы с готовыми решениями:

даны три строки. определить можно ли из символов первых двух строк получить третью строку
даны три строки. определить можно ли из символов первых двух строк получить третью строку.

Даны две строки, сформировать третью из символов, которые встречаются более двух раз
Добрый день, помогите с задачей пожалуйста:) Даны две строки, сформировать третью из символов , которые встречаются более двух раз. ...

Получить строку, представляющую собой конкатенацию двух строк. Определить длину строки. Сравнить эти строки
Динамические строки и массивы строк Получить строку, представляющую собой конкатенацию двух строк. Определить длину строки. Сравнить два...

14
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
18.03.2012, 07:35
Цитата Сообщение от kristina-lonsh Посмотреть сообщение
Даны три строки. Определить, можно ли из символов первых двух строк получить третью строку.
Можно.
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
18.03.2012, 07:48
programina, s₁ = "abc", s₂ = "def". Как из символов строк s₁ и s₂ получить строку s₃ = "ghi"?

А вообще, постановка задачи неоднозначная. Вот решение в смысле «каждый символ из s₃ встречается либо в s₁, либо в s₂»:
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main(int ac, char* av[])
{
    size_t i;
        
    if(ac != 4)
    {
    fprintf(stderr, "Usage: %s STR1 STR2 STR3\n", av[0]);
    exit(2);
    }
 
    for(i = 0; av[3][i] != '\0'; ++i)
    if(strchr(av[1], av[3][i]) == NULL &&
       strchr(av[2], av[3][i]) == NULL)
    {
        puts("No");
        exit(1);
    }
 
    puts("Yes");
    
    exit(0);
}
0
0 / 0 / 1
Регистрация: 04.03.2012
Сообщений: 61
18.03.2012, 08:22  [ТС]
Цитата Сообщение от programina Посмотреть сообщение
Можно.
не совсем умно, конечно.. Ну да ладно, каких только не бывает называется.
0
 Аватар для programina
2062 / 619 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
18.03.2012, 08:22
Я сделала 3 из первой, 3 из второй.
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
#include <stdio.h>
 
int main()
{
    int i = 0;      // счетчик
    
    char s1[] = "abc";  // первая строка
    char s2[] = "def";  // вторая строка
    char s3[256];       // третья строка    
 
    for ( i = 0; i < 6; i ++ )
    {
        if ( i < 3 )    
        { 
            s3[i] = s1[i];  
        }
        else 
        {   
            s3[i] = s2[i-3];    
        }   
    }
            
    printf( "%s \n", s3 );  // напечатать 3-ю строку
    getchar();
    return 0;
}
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
18.03.2012, 08:25
Цитата Сообщение от programina Посмотреть сообщение
Я сделала 3 из первой, 3 из второй.
третья строка нам уже дана, об этом ясно сказано в условии. Ее не нужно формировать
0
0 / 0 / 1
Регистрация: 04.03.2012
Сообщений: 61
18.03.2012, 08:29  [ТС]
Цитата Сообщение от programina Посмотреть сообщение
Я сделала 3 из первой, 3 из второй.
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
#include <stdio.h>
 
int main()
{
    int i = 0;      // счетчик
    
    char s1[] = "abc";  // первая строка
    char s2[] = "def";  // вторая строка
    char s3[256];       // третья строка    
 
    for ( i = 0; i < 6; i ++ )
    {
        if ( i < 3 )    
        { 
            s3[i] = s1[i];  
        }
        else 
        {   
            s3[i] = s2[i-3];    
        }   
    }
            
    printf( "%s \n", s3 );  // напечатать 3-ю строку
    getchar();
    return 0;
}
спасибо. Но задача в том что три строки уже даны!
например: строка_1="abc";
строка_2="lmn";
строка_3="mabaln";
то есть каждая из букв третьей строки есть либо в первой, либо в третьей строке. Если же будет хоть одна буква, не принадлежащая ни одной из двух первых строк, то программа должна выдать сообщение, что "Из символов первых двух строк составить третью строку нельзя!!!"
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
18.03.2012, 08:30
kristina-lonsh, Даны три строки. Определить, можно ли из символов первых двух строк получить третью строку.
0
0 / 0 / 1
Регистрация: 04.03.2012
Сообщений: 61
18.03.2012, 08:32  [ТС]
может, я чего то не совсем понимаю, но зачем мне ссылка на МОЙ ЖЕ ВОПРОС?!?
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
18.03.2012, 08:33
Цитата Сообщение от kristina-lonsh Посмотреть сообщение
может, я чего то не совсем понимаю, но зачем мне ссылка на МОЙ ЖЕ ВОПРОС?!?
там ссылка на мое решение (т.е. ссылка на пост #3)
0
0 / 0 / 1
Регистрация: 04.03.2012
Сообщений: 61
18.03.2012, 08:38  [ТС]
Цитата Сообщение от Nameless One Посмотреть сообщение
там ссылка на мое решение (т.е. ссылка на пост #3)
спасибо. Я видела, но окно с результатом я даже не успеваю увидеть)) Добавила конце system("PAUSE");
но проблема не устранена.. тем более, возможно ввиду скудности моего опыта программирования на С++ я не могу понять где здесь даются строки.. как они задаются?
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
18.03.2012, 08:43
Цитата Сообщение от kristina-lonsh Посмотреть сообщение
тем более, возможно ввиду скудности моего опыта программирования на С++ я не могу понять где здесь даются строки.. как они задаются?
они передаются в качестве параметров программы. Лучше всего программу запускать из консоли (хотя параметры запуска можно настроить и в IDE):

0
0 / 0 / 1
Регистрация: 04.03.2012
Сообщений: 61
18.03.2012, 08:51  [ТС]
Цитата Сообщение от Nameless One Посмотреть сообщение
они передаются в качестве параметров программы. Лучше всего программу запускать из консоли:

Вложение 135287
ааа, Nameless One, а можно попроще? меня как бы сразу выгонят с пары - сразу видно что скатала откуда то=)))) Мы такого не проходили и не будем)) мы только основы, а потом на Java переходим. Блин, я чувствую истина где-то рядом.... но пока у меня остановилось примерно на этом (программа у меня видоизменяется со скоростью ветра=)) ):

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<stdlib.h>
#include<iostream>
#include<string.h>
using namespace std;
int main()
{char str1[]="abcdi";
char str2[]="xzv";
char *stroka3="cdivz";
strcat(str1,str2);
char *stroka1=str1;
int length;
cout<<"Stroka 1= "<<endl;
cout<<"Stroka 3= "<<endl;
length=strcspn(stroka1,stroka3);
if (length) cout<<"YES"<endl;
else cout<<"NO"<<endl;
system("PAUSE");
}
как пользоваться редактором формул не очень понятно))) у меня все мысли о программе сейчас))
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
18.03.2012, 09:09
Цитата Сообщение от kristina-lonsh Посмотреть сообщение
ааа, Nameless One, а можно попроще? меня как бы сразу выгонят с пары - сразу видно что скатала откуда то=)))) Мы такого не проходили и не будем)) мы только основы, а потом на Java переходим
это и есть основы

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
#include <iostream>
#include <cstdlib>
#include <cstring>
 
int main()
{
    char str1[256] = "abcdi";
    const char* str2 = "xzv";
    const char* str3 = "cdivz";
    
    strcat(str1, str2);
 
    std::cout << str1 << std::endl;
    std::cout << str3 << std::endl;
    
    while(*str3)
    if(strchr(str1, *str3++) == NULL)
    {
        std::cout << "No" << std::endl;
        system("pause");
        return 1;
    }
 
    std::cout << "Yes" << std::endl;
    
    system("pause");
}
1
0 / 0 / 1
Регистрация: 04.03.2012
Сообщений: 61
18.03.2012, 09:13  [ТС]
Цитата Сообщение от Nameless One Посмотреть сообщение
это и есть основы

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
#include <iostream>
#include <cstdlib>
#include <cstring>
 
int main()
{
    char str1[256] = "abcdi";
    const char* str2 = "xzv";
    const char* str3 = "cdivz";
    
    strcat(str1, str2);
 
    std::cout << str1 << std::endl;
    std::cout << str3 << std::endl;
    
    while(*str3)
    if(strchr(str1, *str3++) == NULL)
    {
        std::cout << "No" << std::endl;
        system("pause");
        return 1;
    }
 
    std::cout << "Yes" << std::endl;
    
    system("pause");
}
ой, спасибо....... работает.... блин, как мне тебя отблагодарить???... Спасибо-спасибо-спасибо!!!!... вот она истина... к вечеру я бы до нее дошла, а может быть и нет=))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.03.2012, 09:13
Помогаю со студенческими работами здесь

Даны три строки. Определить, можно ли из символов первых двух строк получить третью строку.
Даны три строки. Определить, можно ли из символов первых двух строк получить третью строку.

Множества. Даны 3 строки, определить можно ли из символов двух первых строк получить третью
Даны 3 строки, определить можно ли из символов двух первых строк получить третью. Помогите пожалуйста! Тема множества

Определить,можно ли из символов первых двух строк получить третью строку
Даны три строки. Определить,можно ли из символов первых двух строк получить третью строку

Определить, можно ли из символов первых двух строк получить третью строку.
1. В файле записаны три строки. Определить, можно ли из символов первых двух строк получить третью строку.

Даны три строки. Определить можно ли из символов третьей строки получить первую и вторую строки
Помогите пожалуйста! 1)Даны три строки. Определить можно ли из символов третьей строки получить первую и вторую строки. 2)Дана...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru