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

Округлить любое вещественное число до определённого количества знаков с математической точностью - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Помогите плиз модифицировать прогу http://www.cyberforum.ru/cpp-beginners/thread378868.html
Добрый вечер! Есть функция, переставляющая соседние слова в строке: #include "stdafx.h" #include <clocale> #include <iostream> #include <windows.h> using namespace std;
C++ Помогите со стеком.. Смоделировать стек на базе статического массива по заданию. Написать основные операции для работы со стеком (push, pop, top, empty, full) . Для этого (если в задании не указан иной способ) в программе на входе задать последовательность из К (К> 10) целых чисел (числа вводить с клавиатуры). Все положительные числа последовательно заносить в стек, а каждое отрицательное число должно изымать из... http://www.cyberforum.ru/cpp-beginners/thread378859.html
C++ Игра в камень,ножницы бумага.Что можно улучшить\оптимизировать?
// KamenNozhnicyBumaga.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include "time.h" #include "stdio.h" #include "stdlib.h" int _tmain(int argc, _TCHAR* argv)
C++ Простейший класс
Разработать класс 1.Комплексное число 2. время 3. массив 4. дата 5. стек 6 строка 7. многочлен Любой из этих классов, очень буду благодарен!!!
C++ wchar_t http://www.cyberforum.ru/cpp-beginners/thread378831.html
что ето за тип данних: wchar_t скок у нему байт??
C++ Подскажите! Интерпретатор форматов... Доброго времени суток, Ув.! Была поставлена задача написать программку, которая будет производить открытие файлов с разными расширениями doc, rtf, docx, bmp, pcx, jpg...эт ведь интерпретатор получается. А как это реализовать в С++? К примеру в С#, ищем файл и оупен... System.Diagnostics.Process.Start("имя_файла");, вроде так. Но тут в какую сторону копать...и что делать...а? Подскажите... подробнее

Показать сообщение отдельно
Alesandro07
1 / 1 / 0
Регистрация: 22.01.2015
Сообщений: 17
21.03.2015, 18:06     Округлить любое вещественное число до определённого количества знаков с математической точностью
Народ, посмотрите мой код по этой теме. Не могу понять где ошибка. Криво работает. Если ввести число например с 15 знаками после запятой, а потом прописать цифру, которая оставит соответствующее кол-во знаков после запятой например 9... то что-то не так работает. Библиотеку #include <string> не подключать.

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
#include <iostream>
#include <math.h>
using namespace std;
 
void okrugl(double a, int b)
{
    double celoe, drobi, st;
    int full;
    st=pow(10.0, b);
    celoe=a*st;
    full=(int)celoe;
    drobi=celoe-full;
    if(drobi>=0.5) // условие позволяющие корректно округлять при последней 5 и >
    {
        full=full+1;}
    celoe=full/st;
    cout<<celoe<<"\n";
}
void main()
{
    setlocale(LC_ALL,"Russian");
    double a, b;
    cout<<"Введите число с любым количеством знаков после запятой: "<<"\n";
    cin>>a;
    cout<<"Введите число равное порядковому номеру после запятой, которое должно остаться с учетом округления:"<<"\n";
    cin>>b;
 
    okrugl(a,b);//вызов функции и показ результата
}
Подправьте пожалуйста код или прокомментируйте где и в чём ошибка.
 
Текущее время: 19:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru