Форум программистов, компьютерный форум 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. подробнее

Показать сообщение отдельно
bednyaga
0 / 0 / 0
Регистрация: 24.03.2013
Сообщений: 17
25.03.2013, 04:47  [ТС]     Описать структуру с именем PRIMER
ух ты, спасибо тебе доброчеловеческое ^_^ как хорошо, что еще остались программеры хорошие))

Добавлено через 12 минут
Цитата Сообщение от yoghurt92 Посмотреть сообщение
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
#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;
}

спасибо тебе большое, но зачем ты используешь L"" и wcout? wcout насколько знаю нужен для юникода.а если я в линуксе прогаю? это нужно? щас просто не смогу компильнуть задачу, вечером отпишу, если ошибки будет выдавать.
а так, вроде бы все понятно. только вот в wcout и L"Введите данные о примерах: " все такие фразы не понятны
 
Текущее время: 00:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru