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

Задача из "ООП в C++" Р. Лафоре - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Работа с ресурсами (создать файл ресурсов, загрузить туда изображения (png) и использовать их в проекте?) http://www.cyberforum.ru/cpp-beginners/thread937683.html
Как в Visual Studio Desktop создать файл ресурсов, загрузить туда изабражения (png) и использовать их в проэкте? В общем как интегрировать изображения в exe файл?
C++ Метод STL size и инициализация списка Всем доброго вечера! Вот код#include <fstream> // для потоковых файловых функций #include <typeinfo> // для typeid() using namespace std; #include <process.h> // для exit() #include <iostream>... http://www.cyberforum.ru/cpp-beginners/thread937644.html
Как сделать так, чтобы элемент массива считывался и умножался. C++
Вновь добрый вечер! Есть массив... пкод Я ввёл значение "1" в массив. Теперь пкод = 1 Но... Мне теперь нужно например это число в пкод умножить на число 1. Т.е. как я писал res = пкод * 1 - не...
Сортировка массива C++
Добрый вечер! Мне нужно отсортировать элементы массива по возрастанию. Проблема в том, что элементы состоят как из цифр, так и из символов. Вводим допустим "ff03" и должно получиться согласно...
C++ Не пойму чего хочет компилятор http://www.cyberforum.ru/cpp-beginners/thread937573.html
Вот значит перепечатал буква в букву с книги Страуструпа такой код в main() . Этот кусок должен извлекать числа со строк, если это возможно. Но в одном месте пишет требуется точка с запятой и при...
C++ .h Невозможно открыть Помогите плз. Visual Studio стал выводить что невозможно открыть .h файл. Там у меня пол программы было. Кажется файл повреждён. Возможно ли как то его восстановить? подробнее

Показать сообщение отдельно
Kins
59 / 58 / 6
Регистрация: 03.02.2013
Сообщений: 167
14.08.2013, 19:57
Цитата Сообщение от Purcell Посмотреть сообщение
Не слишком ли громоздкая конструкция у меня получилась для решения такой задачи?
Вроде это задание.

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
int a, b, c, e, f, x, y, z;
    double d, x1, y1, z1;
    char si;
    do {
        cout <<"Введите первое число, знак операции, второе число: "; cin >>a >>b >>c >>si >>d >>e >>f;
        //при умножении ввод выглядит так: 1 3 7 * 2.856 0 0
        switch (si)
            {
                case '+': x=a+d; y=b+e; z=c+f;
                    if (z>11) {++y; z%=12;}//если пенсов больше 11, то прибавляем к кол-ву шиллингов +1 и пенсы кратны 12
                    if (y>19) {++x; y%=20;}//если шиллингов больше 19, то фунтам прибавляем +1, а шиллинги кратно 12
                    break;
                case '-': x=a-d; y=b-e; z=c-f;
                    if (z<0) {--y; z+=12;}//если пенсов меньше 0, то вычитаем из шиллингов 1, а пенсы приводим к положительному числу прибавляя 12
                    if (y<0) {--x; y+=20;}//если шиллингов меньше 0, то вычитаем из фунтов 1, а шиллинги приводим к положительному числу прибавив 20
                    break;
                case '*': x1=a*d; y1=b*d; z1=c*d;
                    x=static_cast<int>(x1); y=static_cast<int>(y1); z=static_cast<int>(z1);
                    if (z>11) {y+=(z/12); z%=12;}//если пенсов больше 11, то получаем количество +шиллингов(z/12), далее к шиллингами прибавляем +шиллинги, и пенсы кратны 12
                    if (y>19) {x+=(y1/20); y%=20;}//если шиллингов больше 19, то получаем кол-во +фунтов(y/20), далее к фунтам прибавляем +фунты и шиллинги кратны 20
                    break;
            }
        cout <<x <<"." <<y <<"." <<z <<endl;
        cout <<"Еще раз? (y/n)" <<endl;
    } while ((si=_getche())!='n');
Решение всех упражнений из книги Р. Лафоре "Объектно-ориентированное программирование в С++"
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru