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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.63
voevodin
0 / 0 / 0
Регистрация: 01.11.2010
Сообщений: 24
#1

Написать денежную сумму прописью - C++

23.02.2012, 19:48. Просмотров 2064. Ответов 1
Метки нет (Все метки)

Здравствуйте. Цель задачи - считать денежную сумму в рублях (неотрицательное десятичное число не превосходящее 999.99 и содержащее не более двух знаком после запятой. копейки склонять не надо - достаточно перенести цифры) и вывести на экран ее прописью.
т.е. например считал 123.45 и вывел сто двадцать четыре рубля 45 копеек
По этому поводу я составил некоторый код,но в процессе понял, что он идет по не правильному пути (если сотая часть числа больше 9). И я не смог разобраться с копейками т.е. чтобы их мне программа тоже выводила. К сожалению в си полный ноль,поэтому и обращаюсь к умным мб кто чем поможет)
код:
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
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main(void) 
{
        int chislo, sot, desiatki, edinisi, deskopeyki, edkopeyki; 
        puts("Please enter a number\n");
        scanf("%d",&chislo);
    
    
    sot=chislo/100;
    if(chislo > 9) {
    //then branch
    } else {
    //else branch
    
    switch (sot)
    {
        case 0: puts(""); break;
        case 1: puts("sto"); break;
        case 2: puts("dvesti"); break;
        case 3: puts("trista"); break;
        case 4: puts("chetirista"); break;
        case 5: puts("p'yatsot"); break;
        case 6: puts("shest'sot"); break;
        case 7: puts("sem'sot"); break;
        case 8: puts("vocem'sot"); break;
        case 9: puts("devyat'sot"); break;
    }
 
    desiatki=(chislo%100)/10;
    switch (desiatki)
    {     
        case 0: puts("_"); break;
        case 1: puts("desyat'"); break;
        case 2: puts("dvadsat'"); break;
        case 3: puts("tridsat'"); break;
        case 4: puts("sorok"); break;
        case 5: puts("pyat'desyat"); break;
        case 6: puts("shest'desyat"); break;
        case 7: puts("sem'desyat"); break;
        case 8: puts("vosem'desyat"); break;
        case 9: puts("devyanosto"); break;
        }
    }
    edinisi=(chislo%100)%10;
    switch (edinisi)
        {
        case 1: puts("odin rubl'"); break;
        case 2: puts("dva rublya"); break;
        case 3: puts("tri rublya"); break;
        case 4: puts("chetiri rublya"); break;
        case 5: puts("pyat' rubley"); break;
        case 6: puts("shest' rubley"); break;
        case 7: puts("sem' rubley"); break;
        case 8: puts("vosem' rubley"); break;
        case 9: puts("devyat' rubley"); break;
    }      
 
    
        
          getch();       
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2012, 19:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать денежную сумму прописью (C++):

Вывести денежную сумму прописью - C++
можете написать программу в с++ пожалуйста,очень надо:( Записать число, заданное в формате *.??, в строку (словами) и перевести на...

Найти сумму двух денежных сумм заданных прописью, ответ вывести прописью - C++
Приветствую форумчан, прошу момочь с задачей : Сложить две денежные суммы в рублях и копейках, заданные прописью. Результат вывести также...

Как наименьшим количеством купюр можно выплатить денежную сумму x - C++
надо ввести натуральное число x , и каким наименьшим количеством купюр можно выплатить денежную сумму в данном случае x, если есть купюры ...

Волосатый бизнес: найти максимальную денежную сумму, которую можно заработать за N дней. - C++
Одного неформала выгнали с работы, и теперь ему надо как-то зарабатывать себе на пиво и сигареты. Поразмыслив, он решил, что сможет иметь...

Написать программу, которая находит сумму четных и сумму нечетных элементов массива - C++
Написать программу, которая находит сумму четных и сумму нечетных элементов массива.

Составить программу, которая после введенного с клавиатуры числа (в диапазоне от 1 до 99), обозначающего денежную единицу, дописывает слово копейка - C++
Привет, по идее довольно простая задача, находил ее на паскале, но это не то ,язык С++. Я не знаю, почему не могу понять, несколько задач...

1
MrCold
855 / 753 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
24.02.2012, 03:11 #2
Цитата Сообщение от voevodin Посмотреть сообщение
обращаюсь к умным мб кто чем поможет
Тогда вам сюда Вывести число прописью
А я всего лишь дописал ваш пример
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
 
#include <stdio.h>
#include <conio.h>
int main(void) 
{
        double chislo_f = 0;
        int chislo = 0;
        int sot, desiatki, edinisi, deskopeyki, edkopeyki; 
        do{
        puts("Please enter a value\n");
        scanf("%lf",&chislo_f
            );
        if(chislo_f > 999.99 ||chislo_f < 0) puts("Wrong value !!!\n"); }
        while(chislo_f > 999.99 ||chislo_f < 0);
    
    chislo = chislo_f * 100; 
 
    sot=chislo/10000;
    
    switch (sot)
    {   
        case 1: printf("sto "); break;
        case 2: printf("dvesti "); break;
        case 3: printf("trista "); break;
        case 4: printf("chetirista "); break;
        case 5: printf("p'yatsot "); break;
        case 6: printf("shest'sot "); break;
        case 7: printf("sem'sot "); break;
        case 8: printf("vocem'sot "); break;
        case 9: printf("devyat'sot "); break;
    }
 
    desiatki=(chislo%10000)/1000;
    switch (desiatki)
    {    
       
        case 2: printf("dvadsat' "); break;
        case 3: printf("tridsat' "); break;
        case 4: printf("sorok "); break;
        case 5: printf("pyat'desyat "); break;
        case 6: printf("shest'desyat "); break;
        case 7: printf("sem'desyat "); break;
        case 8: printf("vosem'desyat "); break;
        case 9: printf("devyanosto "); break;
        }
    
    edinisi=(chislo%1000)/100;
    if(desiatki== 1&&edinisi == 0)
        printf("desyat rubley "); 
    else if(desiatki== 1&&edinisi == 1)
       printf("odinnadzat' rubley ");
    else if(desiatki== 1&&edinisi == 2)
         printf("dvenadzat' rubley ");
    else if(desiatki== 1&&edinisi == 3)
         printf("trinadzat' rubley ");
    else if(desiatki== 1&&edinisi == 4)
         printf("chetirnadzat' rubley ");
    else if(desiatki== 1&&edinisi == 5)
         printf("pyatnadzat' rubley "); 
    else if(desiatki== 1&&edinisi == 6)
         printf("shestnadzat' rubley ");
    else if(desiatki== 1&&edinisi == 7)
         printf("semnadzat' rubley ");
    else if(desiatki== 1&&edinisi == 8)
         puts("vosemnadzat' rubley ");
    else if(desiatki== 1&&edinisi == 9)
         printf("devyatnadzat' rubley "); 
    else if(desiatki== 0&&edinisi == 0)
         printf("nol' rubley "); 
       
else
    switch (edinisi)
        {
        case 0: printf("rubley "); break;
        case 1: printf("odin rubl' "); break;
        case 2: printf("dva rublya "); break;
        case 3: printf("tri rublya "); break;
        case 4: printf("chetiri rublya "); break;
        case 5: printf("pyat' rubley "); break;
        case 6: printf("shest' rubley "); break;
        case 7: printf("sem' rubley "); break;
        case 8: printf("vosem' rubley "); break;
        case 9: printf("devyat' rubley "); break;
    }  
    /////////////////////////////////////////////////
     deskopeyki =(chislo%100)/10;
    switch (deskopeyki)
    {    
       // 
        case 2: printf("dvadsat' "); break;
        case 3: printf("tridsat' "); break;
        case 4: printf("sorok "); break;
        case 5: printf("pyat'desyat "); break;
        case 6: printf("shest'desyat "); break;
        case 7: printf("sem'desyat "); break;
        case 8: printf("vosem'desyat "); break;
        case 9: printf("devyanosto "); break;
        }
    
    edkopeyki =(chislo%10);
    if(deskopeyki == 1&& edkopeyki == 0)
        printf("desyat kopeek "); 
    else if(deskopeyki == 1&& edkopeyki == 1)
       printf("odinnadzat' kopeek ");
    else if(deskopeyki == 1&& edkopeyki == 2)
         printf("dvenadzat' kopeek ");
    else if(deskopeyki == 1&& edkopeyki == 3)
         printf("trinadzat' kopeek ");
    else if(deskopeyki == 1&& edkopeyki == 4)
         printf("chetirnadzat' kopeek ");
    else if(deskopeyki == 1&& edkopeyki == 5)
         printf("pyatnadzat' kopeek "); 
    else if(deskopeyki == 1&& edkopeyki == 6)
         printf("shestnadzat' kopeek ");
    else if(deskopeyki == 1&& edkopeyki == 7)
         printf("semnadzat' kopeek ");
    else if(deskopeyki == 1&& edkopeyki == 8)
         puts("vosemnadzat' kopeek ");
    else if(deskopeyki == 1&& edkopeyki == 9)
         printf("devyatnadzat' kopeek "); 
    else if(deskopeyki == 0&& edkopeyki == 0)
         printf("nol' kopeek "); 
       
else
    switch (edkopeyki)
        {
        case 0: printf(" kopeek "); break;
        case 1: printf("odna kopeyka "); break;
        case 2: printf("dve kopeyki "); break;
        case 3: printf("tri  kopeyki"); break;
        case 4: printf("chetiri kopeyki "); break;
        case 5: printf("pyat' kopeek "); break;
        case 6: printf("shest' kopeek "); break;
        case 7: printf("sem' kopeek "); break;
        case 8: printf("vosem' kopeek "); break;
        case 9: printf("devyat' kopeek "); break;
    }     
    
        
          getch();       
}
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.02.2012, 03:11
Привет! Вот еще темы с ответами:

5. Написать программу, которая предлагает пользователю ввести два дробных числа и выводит в консоль сумму их целых частей и сумму дробных. - C++
5. Написать программу, которая предлагает пользователю ввести два дробных числа и выводит в консоль сумму их целых частей и сумму дробных.

Цифры прописью - C++
Например вводится 456 - выводится четыре пять шесть

Число прописью - C++
Дано двухзначное число.Вывести его прописью. с помошью switch... бес понятия!помогите по быстрому,пожалуйста!

Число прописью - C++
Помогите сделать программу которая пишет числа прописью от 1 до 1000000, через оператор switch


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

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

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