Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
1 / 1 / 0
Регистрация: 09.11.2018
Сообщений: 93
1

Склеить два куска кода в один

16.04.2019, 17:05. Просмотров 1049. Ответов 3

Помогите склеить два кода в один ,чтобы вышла программа ,которая при выборе варианта 1-будет выводить количество букв в массиве,а при выборе два средину отрезка ,точку С.Моя попытка и отдельные коды ниже .По отдельности эти куски работают ,но вместе не могу их заставить работать...

Моя попытка
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
#include<iostream>
#include<cmath>
using namespace std;
 
 char ch;
 
int main()
{
    char ch;
    char arr[N];
    char arr;
    
 
cout << "chto HyjzHo cdeLatb'?? \n";
cout << "YzhaTb KOLICHESTVO ByKV V predlozhenuu - 1\n";
cout << "Hautu cpeDiHy OTPezka AB - 2\n ";
cin >> ch;
switch(ch)
{
case '1':
char arr[N];
   
 
    int count_number = 0;
    int count_letter = 0;
 cout << "BBedite predlojhenie ::" ;
 cin >> arr;
 
    for(int i = 0; i < N; i++)
    {
        cout << arr[i] << " ";
    }
 
    for(int i = 0; i < N; i++)
    {
        if(isalpha(arr[i]))
        {
            count_letter++;
        }
        else;
       
    }
 
    cout << "\n" << "Kolichestvo bukv = " << count_letter;
  
 
 
    return 0;
    break;
    case '2':
        int x;
    int y;
    int c;
    
    cout << "BBeDITE ZHACHEHIE TOCHKI A ";
    cin >> x;
    cout << "BBDITE ZHACHENIE TOCHKI B ";
    cin >> y;
    c=((x+y)/2);
    cout << "CPEDIHA OTPEZKA=" << c ;
    return 0;
    break;
    
}
}

Отдельный код для первой части
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
#include <iostream>
 
using namespace std;
const int N = 20;
 
int main()
{
    char arr[N];
    
 
    int count_number = 0;
    int count_letter = 0;
 cout << "BBedite predlojhenie ::" ;
 cin >> arr;
 
    for(int i = 0; i < N; i++)
    {
        cout << arr[i] << " ";
    }
 
    for(int i = 0; i < N; i++)
    {
        if(isalpha(arr[i]))
        {
            count_letter++;
        }
        else;
       
    }
 
    cout << "\n" << "Kolichestvo bukv = " << count_letter;
  
 
 
    return 0;
}

Отдельный код для части 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<cmath>
#include<iostream>
using namespace std;
 
 
int main ()
{
    int x;
    int y;
    int c;
    
    cout << "BBeDITE ZHACHEHIE TOCHKI A ";
    cin >> x;
    cout << "BBDITE ZHACHENIE TOCHKI B ";
    cin >> y;
    c=((x+y)/2);
    cout << "CPEDIHA OTPEZKA=" << c ;
}
Добавлено через 47 минут
Забыл указать .Это нужно реализовать через функции
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.04.2019, 17:05
Ответы с готовыми решениями:

Как склеить два куска динамически выделенной памяти?
Есть такой код char *arr = (char *) malloc(1); char *plus = (char *) malloc(25); arr =...

Как склеить два файла в один?
Вообщем проблема в том, что мне нужно записывать в начало файла. я создаю новый файл записываю в...

Связать два кода в один
В одномерном масиве, стоящем из n вещественных элементов, вычислить: 1) Максимальный элемент...

Обьединить два кода в один
Первая программа вычисляет минимальный положительный и максимальный отрицательный элемент массива,...

3
5212 / 3543 / 2102
Регистрация: 18.12.2017
Сообщений: 11,258
16.04.2019, 18:37 2
cyberbustarf, у Вас по заданию первый код нужно сделать со строкой С-стиля или можно использовать string из C++ ?
0
1 / 1 / 0
Регистрация: 09.11.2018
Сообщений: 93
16.04.2019, 18:46  [ТС] 3
Это не имеет значения,но по заданию это нужно сделать через функции
0
5212 / 3543 / 2102
Регистрация: 18.12.2017
Сообщений: 11,258
16.04.2019, 19:26 4
Лучший ответ Сообщение было отмечено cyberbustarf как решение

Решение

так устроит ?
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
#include <iostream>
#include <string>
#include <cctype>
using namespace std;
 
void CountLetters() 
{
    int i=0, count_letter=0;
    string s;
    cout << "String:\n";
    cin.ignore();
    getline(cin, s);
    
    while(s[i])    
    {
        if (isalpha(s[i])) count_letter++;
        i++;       
    }
    
    cout << "count_letter=" << count_letter << "\n";
}
 
void Midpoint()
{
    double A, B, C;
    cout << "A="; cin >> A;
    cout << "B="; cin >> B;
    
    C=(A+B)/2.;
    
    cout << "Midpoint=" << C << "\n" ;
}
 
int main()
{
    int k; 
    cout << "Make a choice: Count letters - 1, Midpoint AB - 2 : ";
   
    cin >> k;
    
    if (k==1) CountLetters();
    else if (k==2) Midpoint();
    else cout << "ENTER ERROR\n";
    
system("pause");
return 0;
}
можно и в других вариантах сделать - например передавать данные в функцию и(или) возвращать из функций значения
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.04.2019, 19:26

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как соединить два кода в один?
Вот код генератора перестановок #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;fstream&gt;...

Как слить два кода с++ в один
Народ прошу помощи Как слить две части кода в одно целое До меня недоходит как тут что...

Два практически идентичных кода, но один почему-то работает медленней
Почему мой код работает намного медленнее? Ведь по сути одно и то же! Мой код: int ans = 0; ...

2 одинаковых куска кода - вывод разный
В общем, игра крестики нолики. Сам написал - работает криво, скопировал у автора - работает...


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

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

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