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

Неправильная конвертация типов в MVS С++ 2008 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ нужно посчитать, сколько можно провести прямых, которые не будут параллельны другим прямым уже находящимся на коорд. плоскости. http://www.cyberforum.ru/cpp-beginners/thread855264.html
Вообщем нам даны N пар чисел X и Y, обозначающие координаты точек. Нам нужно посчитать, сколько можно провести прямых, которые не будут параллельны другим прямым уже находящимся на коорд. плоскости. Спасибо заранее!
C++ Двумерные массивы. Найти максимальный среди элементов, повторившихся более одного раза Дан массив A. Найти максимальный среди элементов, повторившихся более одного раза. http://www.cyberforum.ru/cpp-beginners/thread855256.html
C++ Как запустить процесс с параметрами
Не могу запустить процесс с параметрами. system("D:\\Program Files\\GTASA\\samp.exe -c -h 228.1337.228.1337 -p 1337"); При такой попытке пишет: Программа работает..."D:\Program" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Как исправить, чтобы программа запустилась с параметрами? Спасибо =)
Рекурентные последовательности C++
Написал код, но с ошибками... Прошу помочь! Заранее спасибо! #include "stdafx.h" #include <math.h> #include <iostream> using namespace std; void main(){
C++ Алгоритм для работы с матрицей http://www.cyberforum.ru/cpp-beginners/thread855218.html
Помогите, пожалуйста, написать на языке С++ "алгоритм перестановки левой и правой половин квадратной матрицы(размер матрицы n является чётным числом". Заранее спасибо!
C++ Чтение участка памяти Ищу, но не могу найти... Дело в том, что мне нужно в массиве выделять блоки по 4 элемента. Все было бы хорошо, если бы массив был бы у меня кратного 4м размера. Вот я и собираюсь, когда подойду к краю массива все равно прочитать 4 элемента, а затем затереть то, что прочитал лишнего(Саму помять за массивом я понятное дело трогать не буду). Так вот, возможно ли такое, что я не смогу прочитать... подробнее

Показать сообщение отдельно
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
03.05.2013, 22:56     Неправильная конвертация типов в MVS С++ 2008
при арифметике с плавающей точкой всегда есть погрешность.
вывод эту погрешность может округлять, но при операциях она не округляется и потом при касте дабла к инту это сказывается. если точность вывода увеличить, то можно увидеть более точные значения. в дебаге тоже можно увидеть:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
using namespace std;
 
int main()
{
  double r1=1.12;
  double r2=1.13;
  double r1r2 = 100*r2 - 100*r1;
  int c = r1r2;
 
  cout.precision(50);
  cout<< "100*r1=" <<100*r1<<"\n";
  cout<< "100*r2=" <<100*r2<<"\n";
  cout<< "r1r2="   <<r1r2<<"\n";
  cout<< "c="      <<c;
 
  return 0;
 
}
100*r1=112.0000000000000100000000000000
100*r2=112.9999999999999900000000000000
r1r2=0.9999999999999715800000000000000
c=0
Press any key to continue . . .
 
Текущее время: 18:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru