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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.63
opensuse2008
2 / 2 / 0
Регистрация: 23.09.2010
Сообщений: 15
#1

double a=1/2; cout<<a;(a=0) что не так? - C++

23.09.2010, 10:47. Просмотров 1028. Ответов 6
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
#include <iostream>
using namespace std;
void main()
{
    double a=1/2;
    cout<<a;
}
выводит a=0;
использую 2008 студию.
почему округляет до целого? Как исправить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.09.2010, 10:47     double a=1/2; cout<<a;(a=0) что не так?
Посмотрите здесь:

Что не так с cout << или стеком? - C++
Привет. Вопрос к спецам, сам сломал голову. Есть маленький класс-стек, кидаем туда элементы 1,2,3 извлекаем 3,2,1 и направляем в cout...

cout (double) - C++
Всем привет! Подскажите плз как вывести число типа дабл при помощи cout так чтобы были видны столько знаков, сколько я захочу а не 6...

double + cout - C++
Через cout вывожу double. double a = 48.799999999999997; cout &lt;&lt; a; Выводит: 48.8. Как сделать, что бы не...

требуетсяя изменить программу так что бы она считывала значения int а не double - C++
вродибы у меня всё получилось кроме sqrt я изменил double n на double ns и под ним написал int n = ns; и получилось что выводило только...

Неправильно работает cout для чисел типа double и float - C++
Здравствуйте. Скажите, почему эта программа выводит на экран число 2, а не 2.5 ? #include &lt;iostream.h&gt; int main() { double...

Ошибки error C2296: -: недопустимо, левый операнд имеет тип "double (__cdecl *)(double,double,double - C++
Думаю из-за polp #include&lt;iostream&gt; #include&lt;cmath&gt; #include&lt;cstdlib&gt; using namespace std; double polp(double af,double...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
oxotnik
1586 / 1063 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
23.09.2010, 10:50     double a=1/2; cout<<a;(a=0) что не так? #2
Код
double a=1.0/2.0;
opensuse2008
2 / 2 / 0
Регистрация: 23.09.2010
Сообщений: 15
23.09.2010, 10:51  [ТС]     double a=1/2; cout<<a;(a=0) что не так? #3
а можно узнать, почему так просиходит?
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
23.09.2010, 10:52     double a=1/2; cout<<a;(a=0) что не так? #4
Цитата Сообщение от opensuse2008 Посмотреть сообщение
а можно узнать, почему так просиходит?
1/2 - это деление двух целочисленных значений. соответственно результатом будет также целочисленная переменная.
чтобы этого избежать надо либо явно указывать, что число вещественное, добавив .0, либо приводить типы (double)1/2.
oxotnik
1586 / 1063 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
23.09.2010, 10:53     double a=1/2; cout<<a;(a=0) что не так? #5
автоматическое преобразование компилятором к целому числу
opensuse2008
2 / 2 / 0
Регистрация: 23.09.2010
Сообщений: 15
23.09.2010, 10:53  [ТС]     double a=1/2; cout<<a;(a=0) что не так? #6
тему удалите тогда, или как ее удалить?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.09.2010, 11:10     double a=1/2; cout<<a;(a=0) что не так?
Еще ссылки по теме:

Ошибка: error LNK2001: unresolved external symbol "double __cdecl Akk(double,double,double)" - C++
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; double Akk(double x, double y, double z); int main() { int a, b, c; ...

Что такое CIN и COUT - C++
фоном звучит вопрос printf и scanf - осмелюсь написать что они используют те же механизмы не знаю покажется ли это кому то интересным,...

Cout<<object; что это? - C++
Всем привет! Ниже код из книги Лафоре. Меня смущает 12 строка cout &lt;&lt; &quot;\nfile = &quot; &lt;&lt; file;, и компилятор её не принимает. Что это может...

[C++] Пишет что необъявленный оператор cout - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; int main() {cout &lt;&lt;&quot;vvedite granizy a and b&quot; &lt;&lt;endl; int a,b,x; ...


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

Или воспользуйтесь поиском по форуму:
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
23.09.2010, 11:10     double a=1/2; cout<<a;(a=0) что не так? #7
opensuse2008, никого не надо удалять
Yandex
Объявления
23.09.2010, 11:10     double a=1/2; cout<<a;(a=0) что не так?
Ответ Создать тему
Опции темы

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