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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Pari
40 / 3 / 0
Регистрация: 24.11.2013
Сообщений: 139
#1

Неправильно работает небольшая программа-калькулятор - C++

08.07.2014, 22:16. Просмотров 1184. Ответов 43
Метки нет (Все метки)

это калькулятор фунтов, шиллингов и пенсов по старой системе. он должен уметь складывать, вычитать суммы, а также, умножать на число. складывает, вычитает, а умножать отказывается. помогите!
ан нет, наисправляла, теперь вообще не считает

C++ (Qt)
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
#include "stdafx.h"
#include <iostream>
using namespace std;
int main()
{
    int funt, funt1, shill, shill1, pens, pens1, funt2, shill2, pens2;
    char ch, t4k;
    setlocale (0, "");
    cout << "Введите первый операнд " << endl;
    cin >> funt1 >> t4k >> shill1 >> t4k >> pens1;
    cout << "операцию " << endl;
    cin >> ch;
    if (ch = '+' || '-')
    {
        cout << " и второй операнд:" << endl;
        cin >> funt2 >> t4k >> shill2 >> t4k >> pens2;
        switch (ch)
        {
        case '+': 
            funt = funt1 + funt2;
            shill = shill1 + shill2;
            if (shill > 19)
            {
                funt++;
                shill = shill - 20;
            }
            pens = pens1+pens2;
            if (pens > 11)
            {
                shill++;
                pens = pens - 12;
            } 
        break;
        case '-': 
            funt = funt1 - funt2;
            shill = shill1 - shill2;
            if (shill1 < shill2)
            {
                funt--;
                shill = shill1 + 20 - shill2;
            }
            pens = pens1 - pens2;
            if (pens1 < pens2)
            {
                shill--;
                pens = pens1 + 12 - pens2;
            } 
        break;
        }
    }
    else 
        cout << " и число:" << endl;
    cin >> funt2;
    funt = funt1 * funt2;
            shill = shill1 * funt2;
            if (shill > 19)
            {
                funt++;
                shill = shill - 20;
            }
            pens = pens1 * funt2;
            if (pens > 11)
            {
                shill++;
                pens = pens - 12;
            } 
    cout << "Всего: J" << funt << t4k << shill << t4k << pens << endl;
    system ("pause");
    return 0;                                                     
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2014, 22:16     Неправильно работает небольшая программа-калькулятор
Посмотрите здесь:

неправильно работает программа на с++. - C++
вычислить произведение и число отрицательных элементов матрицы А,находящихся под главной диагональю. #include &lt;vcl.h&gt; #pragma...

Неправильно работает программа - C++
файл complex.h #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; using namespace std; class Complex // класс...

программа работает неправильно - C++
Дана символьная матрица размера 13 на 18. Найти: номер первой по порядку строки, содержащий наибольшее число цифр; #include...

Программа работает неправильно - C++
Написал программу на C++, но она работала не правильно, начал разбираться, понемногу удаляя код нашел проблему. Проблема в строчке №12. ...

Почему программа неправильно работает - C++
string IntToStr(int a) { if (a == 0) return &quot;0&quot;; string str = &quot;&quot;; int b = a; if (a &lt; 0) a *= -1; while (a &gt; 0) str =...

Почему программа работает неправильно - C++
не могу понять почему программа работает не правильно # include &lt;stdio.h&gt; # include &lt;conio.h&gt; # include &lt;math.h&gt; float f1(int...

подскажите почему программа работает неправильно - C++
Использование двумерного массива как аргумента функции и возвращаемого значения функции выдает предупреждение:1&gt;------ Build...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kerry_Jr
Модератор
Эксперт PHP
2178 / 1974 / 689
Регистрация: 14.05.2014
Сообщений: 5,773
Записей в блоге: 1
Завершенные тесты: 5
09.07.2014, 02:49     Неправильно работает небольшая программа-калькулятор #41
Pari,
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
#include <iostream>
#include <cstdlib>
 
int pens_in_ster(int st, int sh, int pn)
{
    return (st*240 + sh*12 + pn);
}
 
void pens_to_ster(int sump, int& st, int& sh, int& pn)
{
    st = sump/240;
    sh = sump%240/12;
    pn = sump%240%12;
}
 
int main()
{
    setlocale(LC_ALL, "");
    int st, sh, pn, op, sum, sum1, sum2;
    char ch, div;
    std::cout << "Введите первый операнд: ";
    std::cin >> st >> div >> sh >> div >> pn;
    sum1 = pens_in_ster(st, sh, pn);
    std::cout << "Введите операцию: ";
    std::cin >> ch;
    std::cout << "Введите второй операнд: ";
    if (ch == '*')
        std::cin >> op;
    else
    {
        std::cin >> st >> div >> sh >> div >> pn;
        sum2 = pens_in_ster(st, sh, pn);
    }
    switch (ch)
    {
        case '+': sum = sum1 + sum2; break;
        case '-': sum = abs(sum1 - sum2); break;
        case '*': sum = sum1 * op;
    }
    pens_to_ster(sum, st, sh, pn);
    std::cout << st << div << sh << div << pn << std::endl;
    
    return 0;
}
Pari
40 / 3 / 0
Регистрация: 24.11.2013
Сообщений: 139
09.07.2014, 02:52  [ТС]     Неправильно работает небольшая программа-калькулятор #42
Цитата Сообщение от abit Посмотреть сообщение
но если что обращайтесь, помогу
будьте уверены, прибегу еще не раз на форум со своими очень красивыми кодами) в книге параграфов 12, а я только 3 дорешиваю)

Добавлено через 2 минуты
Kerry_Jr, к сожалению, не могу оценить код, так как несколько операторов с него еще не изучила, но спасибо. обязательно к нему вернусь когда дойду до этих операторов. я все записываю)
Kerry_Jr
Модератор
Эксперт PHP
2178 / 1974 / 689
Регистрация: 14.05.2014
Сообщений: 5,773
Записей в блоге: 1
Завершенные тесты: 5
09.07.2014, 02:58     Неправильно работает небольшая программа-калькулятор #43
Цитата Сообщение от Pari Посмотреть сообщение
а как сделать так, чтобы они не отбрасывались?
Во-первых, нужно, чтобы тип переменной, которой присваивается результат деления, был либо float, либо double.
Во-вторых, если делится переменная типа int на число, то у числа нужно указать нулевую дробную часть
C++
1
2
3
int a = 7;
double b = a / 2.0;// b = 3.5
double c = a / 2; // c = 3
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.07.2014, 03:03     Неправильно работает небольшая программа-калькулятор
Еще ссылки по теме:

Почему моя программа неправильно работает? - C++
Постоянно выводится сообщение Incorrect letter grade entered. Enter a new grade. #include &lt;stdlib.h&gt; #include &lt;stdio.h&gt; int...

Компиляция проходит, но программа работает неправильно - C++
Задача: дан текстовый файл. в нем символы &quot;.&quot; и &quot;,&quot; заменить на &quot;тчк&quot; и &quot;зпт&quot; соответственно. ...

Не могу понять, почему программа неправильно работает! - C++
Изучаю С++ по Страуструпу Б. - Программирование. Принципы и практика использования C++. Есть задание: 9. Вычислите сумму введенных...

Неправильно работает программа по нахождению в строке похожего символа - C++
Здравствуйте форумчани! Помогите пожалуйста исправить ошибку в программе. Программа должна находить символы +,-* и цифры в строке s2 и...

Программа работает неправильно. Цикл не выполняется. Подскажите ошибку - C++
Здравствуйте. Подскажите, пожалуйста, почему неправильно выполняется программа( не выполняется цикл). Заранее спасибо. #include...


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

Или воспользуйтесь поиском по форуму:
Pari
40 / 3 / 0
Регистрация: 24.11.2013
Сообщений: 139
09.07.2014, 03:03  [ТС]     Неправильно работает небольшая программа-калькулятор #44
Kerry_Jr, спасибо, теперь поняла.
Yandex
Объявления
09.07.2014, 03:03     Неправильно работает небольшая программа-калькулятор
Ответ Создать тему
Опции темы

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