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

Округление float до единицы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не могу разобраться в чём ошибка(инфиксная и постфиксная запись выражения) http://www.cyberforum.ru/cpp-beginners/thread1000557.html
на вход для простоты подаю коротенько выражение меньше 10 символов цифры во входе тоже от 0 до 10 при выводе строки otvet ничег оне выходит.(строка пустая получается) #include <iostream> #include <string> using namespace std; struct stek { char d;
C++ Программа по ООП(виртуальный двд плеер) Нужно создать объектно ориентированную модель dvd плеера. Со свойствами: 1.состояние (вкл./выкл.); 2.наличие диска ; 3.активный трек (1 … X), где X – количество треков на диску; 4.Состояние плеера (нет диска/бездействие/проигрывание/конец диска). Методы: вкл/выкл вставка/вытягивание диска Старт проигрывания http://www.cyberforum.ru/cpp-beginners/thread1000550.html
Сформировать квадратную матрицу порядка n по заданному образцу на с++ C++
вот на паскале написал. Const nmax=20; Var A:array of integer; i,j,n:byte; Begin Repeat write('vvedite N='); readln(n); Until n in ;
C++ Do_while statement missing
Что-то напортачил, с оператором do...while. Укажите, где ошибка. Заранее благодарю. #include <iostream.h> main() { int x, i=1; float sum=0; do { cin>>x;
C++ Определить длину строки, вывести строку http://www.cyberforum.ru/cpp-beginners/thread1000534.html
Здравствуйте, если кто-то понимает как это сделать, помогите пожалуйста, потому что это я вообще не понимаю как сделать, "чередующиеся" длиной n. Пусть дано строку и два символа. Необходимо определить длину строки, вывести строку, которая состоит из двух символов, "чередующиеся" длиной n. Определить, сколько раз встречается данный символ в обеих строках. Добавлено через 2 часа 38 минут...
C++ программа с работой над словом Помогите написать программу чтобы в начале выдавала все буквы алфавита и посли того как вбить слово она его делила на 3 раздела гласные буквы твердые согласные и мягкиесогласные!!! очень надо а не знаю как! подробнее

Показать сообщение отдельно
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
07.11.2013, 18:21  [ТС]     Округление float до единицы
C++
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <cmath>
using namespace std;
 
float goo1(float D)
{
    if(D != 0.0) return 2*(ceil(D/10000.0)-0.5);
    else return 0.0;
}  
float goo2(float D)
{
    if(D != 0.0) return D/abs(D);
    else return 0.0;
}  
float goo3(float D)
{
    if(D != 0.0) return -((float)((*((int *)&D) >> 30) & 2) - 1);
    else return 0.0;
}  
float goo4(float D)
{
    if(D != 0.0) return (D > 0) - (-D > 0);
    else return 0.0;
} 
 
 
int main()
{
    srand(time(0));
    clock_t t;
    int N = 1000000000; // миллиард
    float *R = new float[N];
    for(int i = 0; i < N; i++) R[i] = (rand()%100-50)/100.0;
 
    // ===================
 
    t = clock(); // старт 
    for(int i = 0; i < N; i++) goo1(R[i]);
    t = clock() - t; // финиш
    cout << "goo1() => " << ((float)t)/CLOCKS_PER_SEC << endl;
 
    t = clock(); // старт 
    for(int i = 0; i < N; i++) goo2(R[i]);
    t = clock() - t; // финиш
    cout << "goo2() => " << ((float)t)/CLOCKS_PER_SEC << endl;
 
    t = clock(); // старт 
    for(int i = 0; i < N; i++) goo3(R[i]);
    t = clock() - t; // финиш
    cout << "goo3() => " << ((float)t)/CLOCKS_PER_SEC << endl;
 
    t = clock(); // старт 
    for(int i = 0; i < N; i++) goo4(R[i]);
    t = clock() - t; // финиш
    cout << "goo4() => " << ((float)t)/CLOCKS_PER_SEC << endl;
 
    // ===================
 
    delete [] R;
}
Это поразительно, способ castaway самый быстрый
Bash
goo1() => 13.3622
goo2() => 16.6615
goo3() => 9.32718
goo4() => 10.3528
 
Текущее время: 20:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru