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

Народ гляньте код и подскажите что не так. - C++

Восстановить пароль Регистрация
 
Дмитрий Павлов
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 33
06.11.2011, 14:05     Народ гляньте код и подскажите что не так. #1
Условие:
Написать функцию, которая округляет любое вещественное число до определённого количества знаков с математической точностью.
Пример:
1.234567
надо округлить до 4 знаков на выходе получу
1.2346
то есть если следующие число больше 5 тогда +1 к предыдущему.

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
#include <iostream>
#include <math.h>
using namespace std;
double Num( int q , double w )
{
    int e = w;
    double t,y,u,i ;
    int r = pow ( 10 , q );
    t = e * r;
    y = w * r;
    u = y - t;
    if( u > 5 )
    {
        u++;
    }
    i= u/r;
    return i;
}
 
void main()
{
    int a;
    double b; 
    cin>>a>>b;
    cout<< Num(a,b)<< endl ;
}
И почему то оно pow не возводит в степень??
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2011, 14:05     Народ гляньте код и подскажите что не так.
Посмотрите здесь:

C++ Гляньте код...
C++ Подскажите что не правильно чему оно не так выводит и по возможности исправьте ошибки вот условие и код программы
Подскажите что не так? C++
C++ Подскажите что не так ?
Так, норм задачка, гляньте, скажите что да как C++
Подскажите, что не так C++
C++ Ребят, уже запарился, гляньте, что не так!? конструктор копирования и оператор присваивания

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Мастер Шифу
 Аватар для Мастер Шифу
917 / 70 / 4
Регистрация: 15.10.2011
Сообщений: 583
Записей в блоге: 1
06.11.2011, 14:21     Народ гляньте код и подскажите что не так. #2
Цитата Сообщение от Дмитрий Павлов Посмотреть сообщение
подскажите что не так.
Абсолютно нечитабельный код. Назовите переменные хотя бы на транслите или расставьте комментарии.
Дмитрий Павлов
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 33
06.11.2011, 14:57  [ТС]     Народ гляньте код и подскажите что не так. #3
Цитата Сообщение от Дмитрий Павлов Посмотреть сообщение
Условие:
Написать функцию, которая округляет любое вещественное число до определённого количества знаков с математической точностью.
Пример:
1.234567
надо округлить до 4 знаков на выходе получу
1.2346
то есть если следующие число больше 5 тогда +1 к предыдущему.

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
#include <iostream>
#include <math.h>
using namespace std;
double Num( int q , double w )
{
    int e = w;//число дабл превращаем в цело численное
    double t,y,u,i ;
    int r = pow ( 10 , q );//возведение в степень
    t = e * r;//умножаем целое число на 10 возведенную в степень
    y = w * r;//умножаем число с цифрами после комы на 10 в возведенную степень
    u = y - t;//отнимаем их
    if( u > 5 )// если их разница больше 5 тогда к тому числу прибавляем 1.
    {
        u++;
    }
    i= u/r;//делим то число опять на 10 возведенную в степень и получаем ответ
    return i;
}
 
void main()
{
    int a;//-до сколки знаков сократить
    double b; //само число 
    cin>>a>>b;//водим с клавиатуры число и сколько знаков.
    cout<< Num(a,b)<< endl ;//вывод функции
}
И почему то оно pow не возводит в степень??
Понятно

Добавлено через 24 минуты
Народ что никто не знает???
Yandex
Объявления
06.11.2011, 14:57     Народ гляньте код и подскажите что не так.
Ответ Создать тему
Опции темы

Текущее время: 05:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru