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

Описать структуру с именем PRIMER - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ В результате ввода переменной int присваивается символ http://www.cyberforum.ru/cpp-beginners/thread816934.html
Создайте структуру с именем time. Три ее поля, имеющие тип int, будут называться hours, minutes и seconds. Напишите программу, которая просит пользователя ввести время в формате часы, минуты, секунды. Можно запрашивать на ввод как три значения сразу, так и выводить для каждой величины отдельное приглашение. Программа должна хранить время в структурной переменной типа time и выводить количество...
C++ рекурсивный перебор системы счисления Задача: вводятся два числа от 1 до 6 (n и m) n - количество цифр m - порядок системы счисления нужно вывести все варианты в столбец. например Input 2 3 Output 1 1 http://www.cyberforum.ru/cpp-beginners/thread816928.html
Возвратить object в экспортируемой функции dll C++
Добрый день. есть функция в dll, которая использует сторонние tlb (они подключены в h): extern "C" _declspec(dllexport) int Material() //чем заменить int { IMaterial** Materials = new IMaterial*(); //Абстрактный класс, верхний уровень IMaterial* Material = Materials;//Получение } есть код на NET, в котором будет использоваться этот возврат в виде object = Material()
C++ Нужно написать программу преобразующую данные в машинный вид
Нужно написать маленькую программку которая преобразует разные типы данных в машинный код (двоичной системе счисления)..... Тоесть с клавиатуры вводим слово оно преобразуется в вид который воспринимается компьютером, то есть в двоичной системе счисления....
C++ дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа. Строка должна вводиться с клавиатуры. http://www.cyberforum.ru/cpp-beginners/thread816901.html
Будьте добры,помогите с решением задачи: дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа. Строка должна вводиться с клавиатуры.
C++ Программа выдающая число с обратным порядком цифр Составить программу, воспринимающую на входе целое четырехразрядное десятичное число и выдающую на выходе четырехразрядное число с обратным порядком десятичных цифр. Например: 1984 -> 4891. Указание: числа меньшей разрядности считать дополненными слева необходимым количеством нулей, например 1 -> 1000, 31 ->1300. подробнее

Показать сообщение отдельно
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
26.03.2013, 19:07     Описать структуру с именем PRIMER
bednyaga, ну как тебе сказать, я сам не далеко ушел, тоже учусь, тут азы) подожди

Добавлено через 8 минут
bednyaga, так думаю все будет понятно

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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <locale>               //для работы с юникод 
#include <string>
using namespace std;
 
#define SIZE 2                  //размер массива         
 
struct Primer{
    int nomer;                                                  //номер примера
    string Tema;                                                //название темы
    enum difficulty{oral = 10, simple = 20, hard = 40};         //перечисления(отображает сложность)
    difficulty flag;                                            //переменная для хранения заданной сложности
 
    //процедура инициализации сложности по введенному значению
    difficulty choice(int value)
    {
        difficulty mode;
        switch(value){
            case 10:
                mode = Primer::oral;
                break;
            case 20:
                mode = Primer::simple;
                break;
            case 40:
                mode = Primer::hard;
                break;
        }
 
        return mode;
    }
 
    //вывод сложности примера
    string print_choice(difficulty value)
    {
        string str;
        switch(value){
            case Primer::oral:
                str = "oral";
                break;
            case Primer::simple:
                str = "simple";
                break;
            case Primer::hard:
                str = "hard";
                break;
        }
 
        return str;         //возвращаем выбранную сложность
    }
 
    //считваем данные о примере с клавиатуры 
    void input()
    {
        wcout << L"\nВведите номер примера: ";
            cin >> nomer;
 
        wcout << L"Введите название темы: ";
            cin.ignore();
            getline(cin, Tema, '\n');
 
        wcout << L"Введите свойство примера (10, 20, 40): ";
            int value;
            cin >> value;
            flag = choice(value);
    }
 
    //выводим на консоль данные о примере
    void output()
    {
        wcout << L"\nНомер примера: " << nomer;
        wcout << L"\nНазвание темы: ";
        cout << Tema;
        wcout << L"\nСвойство примера: ";
        cout << print_choice(flag) << "\n";
    }
 
    //булевая функция(предикат) для поиска соответствия среди всех тем
    bool find_Tema(string value)
    {
        if(Tema == value)
            return true;
        else
            return false;
    }
}; 
 
//процедура поиска темы примера(название вводим с клавиатуры)
void find(Primer *_mas)
{
    int choice;
    string them;
    bool flag = false;              //булевая переменная
 
    //цикл с постусловием(завершается пользователем)
    do{
        wcout << L"\nВведите название темы: ";
            cin.ignore();
            getline(cin, them, '\n');
 
        //осуществляем поиск по всему массиву примеров
        for(int i = 0; i < SIZE; ++i)
        {
            //если темы найдена выводим данный
            if(_mas[i].find_Tema(them))
            {
                flag = true;
                wcout << L"\nТема найдена:";
                _mas[i].output();
                cout << "\n";
            }
        }
 
        //если тема не найдена
        if(!flag)
            wcout << L"Тема не найдена!\n";
 
        wcout << L"Продолжить поиск (1 - да, 2 - нет)? ";
            cin >> choice;
 
    }while(choice != 2);
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    wcout.imbue(locale(".866"));            //для вывода юникод строк
 
    //массив примеров
    Primer *mas = new Primer[SIZE];
 
    /*вводим данные*/
    wcout << L"Введите данные о примерах: ";
    for(int i = 0; i < SIZE; ++i)
        mas[i].input();
 
    /*сортировка по алфавиту*/
    for(int i = 0; i < SIZE - 1; ++i)
        for(int j = i + 1; j < SIZE; ++j){
            if(mas[i].Tema > mas[j].Tema)
            {
                Primer tmp = mas[i];
                mas[i] = mas[j];
                mas[j] = tmp;
            }
        }
 
    /*выводим данные*/
    wcout << L"\nВывод данных о примерах:";
    for(int i = 0; i < SIZE; ++i)
        mas[i].output();
 
    /*ищем тему*/
    find(mas);
 
    delete []mas;                       //освобождаем память
    cout << "\n\n";
    return 0;
}
 
Текущее время: 07:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru