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

Падежи - C++

Восстановить пароль Регистрация
 
Хопман
Сообщений: n/a
19.07.2013, 15:14     Падежи #1
помогите мне нужно написать программу на с++ с использованием оператора switch
программа: водим суму в копейках а программа должна посчитать сколько рублей и копеек и написать в нужном падеже
например:
in 156
out 1 рубль 56 копеек

in 1
out 1 копейка
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.07.2013, 15:14     Падежи
Посмотрите здесь:

Хитрые падежи русского языка
C (СИ) Задача на падежи (побитовые операции)
Падежи PHP
Библиотека для склонения русских слов в разные падежи C#

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ovner
7 / 7 / 0
Регистрация: 06.10.2012
Сообщений: 140
19.07.2013, 17:16     Падежи #2
как-то так
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
#include <iostream>
#include <fstream>
using namespace std;
 
class A
{
private:
    int coin;
    int money;
    int work;
public:
    A(){};
    A(int a)
    {
        this->work = a;
        this->money = 0;
        this->coin = 0;
    }
    ~A(){};
 
    void out()
    {   
        if (money < 1)      
            cout << work << " coins" << endl;
        else 
            cout << money << " money and " << coin << " coins" << endl;
    }
 
    void file()
    {
        ofstream f("file.txt");
        if (money < 1)      
            f << work << " coins" << endl;
        else 
            f << money << " money and " << coin << " coins" << endl;
        f.close();
    }
 
    void calc()
    {
        if (work > 99) 
        {
            coin = work%100;
            money = work/100;
        }
    }
    
};
 
void main()
{
    int a, b;
    cout << "Enter count of coins " << endl;
    cin >> a;
    A obj(a);
    obj.calc();
    cout << "For output in screen enter '1', for output in file enter '2' " << endl;
    cin >> b;
    switch(b)
    {
    case 1:
        obj.out();
        break;
    case 2:
        obj.file();
        cout << "Successful" << endl;
        break;
    default:
        exit(0);
    }
    cin.get();
    cin.get();
}
BigLow
55 / 55 / 2
Регистрация: 07.07.2013
Сообщений: 345
19.07.2013, 17:31     Падежи #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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
#include <string>
 
int main()
{
    setlocale(LC_ALL, "Russian");
 
    int kopeikiIn;
    int rubliOut, kopeikiOut;
    std::string messageRub, messageKop;
 
    std::cin >> kopeikiIn;
 
    rubliOut = kopeikiIn/100;
    kopeikiOut = kopeikiIn%100;
 
    if (rubliOut>=11 && rubliOut<=19)
        messageRub = "рублей";
    else
        switch (rubliOut%10)
        {
            case 1: messageRub = "рубль";  break;
            case 2: case 3: case 4: messageRub = "рубля";  break;
            default: messageRub = "рублей";  break;
        }
 
    if (kopeikiOut>=11 && kopeikiOut<=19)
        messageKop = "копеек";
    else
        switch (kopeikiOut%10)
        {
            case 1: messageKop = "копейка";  break;
            case 2: case 3: case 4: messageKop = "копейки";  break;
            default: messageKop = "копеек";  break;
        }
 
    std::cout << rubliOut << " " << messageRub << " " << kopeikiOut << " " << messageKop << std::endl;
 
    system("pause");
    return 0;
}
Yandex
Объявления
19.07.2013, 17:31     Падежи
Ответ Создать тему
Опции темы

Текущее время: 11:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru