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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.64
Rafaelloo
0 / 0 / 0
Регистрация: 08.12.2010
Сообщений: 8
#1

Калькулятор на С - C++

08.12.2010, 15:09. Просмотров 2891. Ответов 18
Метки нет (Все метки)

калькулятор в принципе готов, надо только сделать деление на дробные числа, помогите кто чем может пожалуйста
0
Вложения
Тип файла: txt кальк.txt (5.8 Кб, 151 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2010, 15:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Калькулятор на С (C++):

Простой калькулятор и калькулятор с парсингом - C++
Ребят я совсем не давно только начал изучать сишку, решил написать простенький калькулятор который работает с 2 числами. Возник вопрос, как...

Калькулятор на С++ - C++
калькулятор в принципе готов, надо только сделать запрет деления на 0, помогите кто чем может #include<stdio.h> #include<conio.h> ...

калькулятор - C++
Всем привет, извините, что постю сюда эту тему, но выхода нет((( Проблема состоит в том что надо сделать калькулятор из множества действий...

Калькулятор в С++ - C++
Доброго времени суток. Нужно разработать класс «Калькулятор» Вид данных: квадрат; Необходимо осуществить ввод и вывод координат...

Калькулятор - C++
На форуме наткнулся на тему "Римский калькулятор". Вот код: Functions.cpp #include<iostream> const int arabar = { 1, 4, 5, 9,...

Калькулятор на C++ - C++
Доброго времени суток! У меня возник вопрос. При вводе чисел в cmd, они у меня просто складываются, но код (мне кажется) правильный. Думаю...

18
AshBringer4eg
26 / 26 / 3
Регистрация: 25.11.2010
Сообщений: 72
08.12.2010, 15:30 #2
Ну по идее для деления на дробные числа необходимо использовать переменные типа float для результата и дробного числа.
Хотя там насколько вижу результат и так в флоате... довольно громоздкая реализация калькулятора.
Что собственно не получается?
0
Rafaelloo
0 / 0 / 0
Регистрация: 08.12.2010
Сообщений: 8
08.12.2010, 15:56  [ТС] #3
Я незнаю как написать чтобы он делил на дробные числа,калькулятор у друга брал, не я писал, т.к. плохо в программировании пока разбераюсь
0
Kastaneda
Нарушитель
Эксперт С++
4676 / 2880 / 234
Регистрация: 12.12.2009
Сообщений: 7,314
Записей в блоге: 2
Завершенные тесты: 1
08.12.2010, 16:13 #4
Цитата Сообщение от Rafaelloo Посмотреть сообщение
чтобы он делил на дробные числа
А что, не делит? Там вроде все в float'ах, по идеи должен... Хотя в суть особо не вникал.
0
Rafaelloo
0 / 0 / 0
Регистрация: 08.12.2010
Сообщений: 8
08.12.2010, 16:28  [ТС] #5
он делит,но ответ 0,а мне надо чтобы ответ был правильный
0
AshBringer4eg
26 / 26 / 3
Регистрация: 25.11.2010
Сообщений: 72
08.12.2010, 18:27 #6
Эх вспомнить бы... там были функции для задания точности, походу дело в них... щя покопаюсь может найду.
0
Rafaelloo
0 / 0 / 0
Регистрация: 08.12.2010
Сообщений: 8
08.12.2010, 18:35  [ТС] #7
Цитата Сообщение от AshBringer4eg Посмотреть сообщение
Эх вспомнить бы... там были функции для задания точности, походу дело в них... щя покопаюсь может найду.
буду тебе ооочень благодарен
0
AshBringer4eg
26 / 26 / 3
Регистрация: 25.11.2010
Сообщений: 72
08.12.2010, 18:51 #8
setprecision(n)
setiosflags(ios::fixed | ios::showpoint)
вот 2 функции почитайте про них, и про их использование, я через 1-1.5 часа вернусь домой, если к тому времени не разберетесь, попробую обьяснить.
Вот, нашел пример их использования:
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
#include <iostream.h>
#include <iomanip.h>
#include <conio.h>
 
int main()
{float average;
int counter, grade,total;
total=0;
counter=0;
cout << "BBeDuTe 6aJI uJIu -1 DJI9l Bbl4ecJIeHu9l CyMMbl ";
cin >> grade;
while (grade !=-1){
    total+=grade;
    counter+=1;
    cout << "BBeDuTe 6aJI uJIu -1 DJI9l Bbl4ecJIeHu9l CyMMbl ";
    cin >> grade;
    }
    if (counter !=0){
        average=total/counter;
        cout << "Average= " << setprecision(2)      
        << setiosflags(ios::fixed | ios::showpoint) 
        << average << endl;
        }
        else
            cout << "No data" << endl;
            getch();
            return 0;
            }
Программа вычисляет средний бал, и выводит в формате 2 точки после запятой, запятую показывать даже если дробная часть равна 0.
0
Rafaelloo
0 / 0 / 0
Регистрация: 08.12.2010
Сообщений: 8
08.12.2010, 19:26  [ТС] #9
К сожалению это С++ а мне надо написать на чистом С
0
silent_1991
Эксперт С++
4985 / 3042 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
08.12.2010, 19:29 #10
AshBringer4eg, одна проблемка... Калькулятор-то пишут на Си, а это плюсовые плюшки. Да и не в этом, я думаю, дело.
0
Kastaneda
Нарушитель
Эксперт С++
4676 / 2880 / 234
Регистрация: 12.12.2009
Сообщений: 7,314
Записей в блоге: 2
Завершенные тесты: 1
08.12.2010, 19:36 #11
Да, дело не в этом. Скомпилил, там ответ выводит в вещественном виде, но деление происходит как целочисленное. Сейчас попробую разобраться.
П.С. для выхода из программы пришлось ctrl+c жать, что есть не хорошо.
0
AshBringer4eg
26 / 26 / 3
Регистрация: 25.11.2010
Сообщений: 72
08.12.2010, 19:37 #12
Хм... тогда беда. Лан подумаю что еще можно сделать.
0
Kastaneda
Нарушитель
Эксперт С++
4676 / 2880 / 234
Регистрация: 12.12.2009
Сообщений: 7,314
Записей в блоге: 2
Завершенные тесты: 1
08.12.2010, 19:46 #13
Вобщем просто потестил с различными значениями, диагноз - код косячный. Вот посмотрите:
Калькулятор на С
Он иногда даже дробные числа выводит, полученные при делении, так что с этим проблем нет. НО иногда и не выводит)) Разберитесь со скриншотом, я думаю нужно весь код переписывать (ну или править)
0
Kastaneda
Нарушитель
Эксперт С++
4676 / 2880 / 234
Регистрация: 12.12.2009
Сообщений: 7,314
Записей в блоге: 2
Завершенные тесты: 1
08.12.2010, 19:50 #14
ответы иногда вообще не адекватные) У меня ощущение, что автрор кода хотел реализовать отдельно целочисленное деление и дробное. Т.е. 10/4 и 10.0/4.0 дает разный результат (), а если деление идет первой операцией, то ответ вообще 0.
1
silent_1991
Эксперт С++
4985 / 3042 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
08.12.2010, 20:29 #15
Да плюс ко всему, где-то что-то не сбрасывается перед очередной итерацией, потому что на последовательность 10,0/4,0 (ответ нуль), а затем 10/4 он мне выдал WHAT ARE YOU DOING?
Честно говоря, код лучше переписать, алгоритм странноватый тут...
1
08.12.2010, 20:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.12.2010, 20:29
Привет! Вот еще темы с ответами:

калькулятор - C++
делаю калькулятор...столкнулся с проблемкой...при вычислении чисел с плавающей точкой...как можно реализовать

калькулятор ( - C++
помогите плиз... реализовать калькулятор с возможностью выполнения четырех арифметических действий. У пользователя запрашивают...

калькулятор - C++
Здравствуйте!! У меня возникла проблема. Мне нужно ввести выражение и занести его в массив. Символов не ограничено. Заранее спасибо. ...

Калькулятор на C++ - C++
Здравствуйте, нужна помощь в создании калькулятора. Калькулятор должен работать при вводе например: 5+3*2. И соответственно должен...


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

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

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