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

Сколько цифр можно составить из заданных букв? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вставить в середину записи одного числа другое http://www.cyberforum.ru/cpp-beginners/thread1636706.html
Вводятся два числа >=10 и <10^4. Образовать новое число, вставив первое число в середину второго. (Серединой числа с нечетным числом цифр можно считать любой промежуток рядом с центральной цифрой). Например: для исходных чисел 1234, 5678, результат: 56123478. Распечатать полученное число и его умноженное на 2. Спасибо!
C++ В заданной матрице удалить все столбцы, содержащие максимальные элементы среди диагональных элементов Сгенерировать матрицу размера NxN из случайных числел (N вводится с клавиатуры). Удалить все столбцы, содержащие максимальных элемент среди диагональных элементов матрицы. Распечатать исходную и полученную матрицы. Спасибо Добавлено через 1 час 15 минут Помогите пожалуйста хотя бы решить до нахождения диагоналей http://www.cyberforum.ru/cpp-beginners/thread1636703.html
C++ Сортировка массива структур по заданному полю
Здравствуйте. Нужна помощь в сортировке. Вот само задание: Составить таблицу, содержащую следующие сведения о сотрудниках кафедры: ФИО должность оклад домашний телефон рабочий телефон
C++ Написать функцию замены всех русских символов в строке пробелами
Нужно было написать функцию замены всех русских символов в строке пробелами. Написал, но использовал не свою функцию, а стороннюю. Сказали переделать, разработав собственную функцию замены русских букв пробелами. Вот код моей программы. #include <iostream> #include <conio.h> #include<string> using namespace std;
C++ Возврат индексов двумерного массива http://www.cyberforum.ru/cpp-beginners/thread1636687.html
Нужно получить индексы минимального элемента в матрице. Не понимаю, как передать индексы.Как-то через указатели? int min(int A, int n, int m) { int min = A; int index_n,index_m; for (int i = 0; i < n-1; i++)
C++ Написать программу для вычисления энтропии по формуле Шеннона для заданной последовательности Очень нужна программа для Dev С ++ для вычисления энтропии по формуле Шеннона для последовательности от 1 до 256 подробнее

Показать сообщение отдельно
Termit779
 Аватар для Termit779
44 / 29 / 10
Регистрация: 22.11.2015
Сообщений: 98
13.01.2016, 15:53     Сколько цифр можно составить из заданных букв?
Во как. На "коленке собрал"
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
//  Составляет возможные варианты представления
//  чисел из набора символов. Выводит представление
//  чисел и остаток неиспользуемых символов ("шум" :)
 
#include <iostream>
using namespace std;
 
//  Функция ищет совпадения между двумя входными строками
string out_slovo(string v_simvol, string v_slovo) {  
    string v_res;   
    for (int i = 0; i < v_slovo.size(); i++)
    {
        for (int j = 0; j < v_simvol.size(); j++)
        {
            if (v_slovo[i] == v_simvol[j])
            {
                v_res.push_back(v_simvol[j]);               
                break;
            }
        }
    }   
    if (v_slovo.size() > v_res.size())
    {
        v_res.clear();
        
        
    }
    return v_res; 
}
 
//  Функция удаляет из исходного набора символов уже использованные
string out_simvol(string v_simvol, string v_res) {      
        for (int i = 0; i < v_res.size(); i++)
        {
            for (int j = 0; j < v_simvol.size(); j++)
            {
                if (v_res[i] == v_simvol[j])
                {
                    v_simvol[j] = '0';
                    break;
                }
            }
        }
        return v_simvol;    
}
 
//  Функция выводит результат совпадения v_res
void out_v_res(string v_res) {
 
    if (v_res != "") {
        for (int i = 0; i < v_res.size(); i++)
        {
            cout << v_res[i];
        }
    }
    cout << " ";    
}
 
//  Функция выводит не использованные символы
void out_v_simvol(string v_simvol) {
    for (int i = 0; i < v_simvol.size(); i++)
    {
        if (v_simvol[i] != '0') {
            cout << v_simvol[i];
        }
    }
    cout << "\n";
    
}
 
 
int main() {
    setlocale(0, "Russian");
    string v_res; // Результат совпадения
    string v_simvol = { "LTOLEN" }; // Строка произвольных символов
    string zero = "ZERO"; // Строки для поиска
    string ten = "TEN";
    string two = "TWO";
    //  И так далее ...
    
    // ZERO
    v_res = out_slovo(v_simvol, zero); // Ищем совпадения
    if (v_res != "") {                  // Если результат найден
    v_simvol = out_simvol(v_simvol, zero); // Удаляем использованные символы
    }
    cout << "Составлены представления чисел: ";
    out_v_res(v_res); // Выводим совпадение
    
    // TEN
    v_res = out_slovo(v_simvol, ten); 
    if (v_res != "") {
    v_simvol = out_simvol(v_simvol, ten);
    }   
    out_v_res(v_res);   
 
    // TWO
    v_res = out_slovo(v_simvol, two); 
    if (v_res != "") {
    v_simvol = out_simvol(v_simvol, two);
    }
    out_v_res(v_res); 
    cout << "\nНе использованные символы: ";
    out_v_simvol(v_simvol); //  Выводим неиспользуемые символы
 
    // И так далее ...
    
 
 
    system("pause");
}
 
Текущее время: 13:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru