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

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

Войти
Регистрация
Восстановить пароль
 
Zanoza
9 / 9 / 1
Регистрация: 16.03.2010
Сообщений: 44
#1

при вычислении выражении - одно значение,а в калькуляторе другое! - C++

10.04.2010, 12:13. Просмотров 448. Ответов 7
Метки нет (Все метки)

есть,самое простое выражение:
21/5*3
но на калькуляторе будет - 21/5=4.2(логично?) и умноженное 4.2*3=12.6(и не поспоришь!)
так вот - а это же самое выражение, только в консоли:
C++
1
2
3
float k;
 
 k=21/5*3 ; cout<<k;
выдает 12
куда делась дробная часть?!
наверное сегодня не мой день!!!
обьясните,в чем я не прав?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2010, 12:13     при вычислении выражении - одно значение,а в калькуляторе другое!
Посмотрите здесь:

С моим кодом что-то не так! на калькуляторе одно число,а в программе другое( - C++
вот код программы,я только учусь,через неделю олимпиаду писать, так что выручайте)) #include &lt;iostream&gt; #include &lt;cstdlib&gt; using...

Определить номера строк матрицы, содержащих хотя бы одно заданное значение, и умножить их на другое - C++
1. Определить номера строк матрицы R, хотя бы один элемент которых равен с, и элементы этих строк умножить на d.

Как пересчитать одно в другое? - C++
b|g 0|0000000000 1|0000000001 2|0000000011 3|0000000111 4|0000000101 5|0000000100 6|0000001100 7|0000001101 8|0000001111

Заменить в тексте одно слово на другое - C++
в текстовом файле содержащий код программы на языке С, заменить все вхождения одного заданного пользователем идентификатора на другой

Замена слова одно на другое с fgets - C++
Добрый день. Нужна помощь. Незнаю как доделать. Надо из zod в zod1 перенести все данные, потом там заменить а17 на troleibusas и записать...

Заменить в тексте одно словосочетание на другое - C++
Здравствуйте,помогите пожалуйста сделать программу которая в любом (не имеет значения в каком тексте) будет меня например словосочетание...

Проверить, делиться ли нацело одно число на другое - C++
Помогите пожалуйста!! Пользователь ввел два числа n и m. Проверить, делиться ли нацело одно число на другое.

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Demihalf
Унылый школьник
126 / 60 / 3
Регистрация: 06.11.2009
Сообщений: 354
10.04.2010, 12:15     при вычислении выражении - одно значение,а в калькуляторе другое! #2
Zanoza, у вас 21, 5 и 3 - int. А для int оператор / означает деление нацело. Надо сделать, чтобы они были float:
C++
1
2
3
float k;
 
 k=21.0/5.0*3.0 ; cout<<k;
Zanoza
9 / 9 / 1
Регистрация: 16.03.2010
Сообщений: 44
10.04.2010, 12:21  [ТС]     при вычислении выражении - одно значение,а в калькуляторе другое! #3
точно!
From_Tula
40 / 40 / 2
Регистрация: 22.05.2009
Сообщений: 482
10.04.2010, 12:35     при вычислении выражении - одно значение,а в калькуляторе другое! #4
C++
1
printf("%f",21/(5*3*1.0));
Ещё как вариант знаминатель домножить на 1.0
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
10.04.2010, 12:55     при вычислении выражении - одно значение,а в калькуляторе другое! #5
Цитата Сообщение от Demihalf Посмотреть сообщение
Zanoza, у вас 21, 5 и 3 - int. А для int оператор / означает деление нацело. Надо сделать, чтобы они были float:
C++
1
2
3
float k;
 
 k=21.0/5.0*3.0 ; cout<<k;
Вот только 21.0, 5.0, 3.0 не являются литералами типа float, это литералы типа double. Поправленный вариант:
C++
1
float k = 21.0f / 5.0f * 3.0f;
Demihalf
Унылый школьник
126 / 60 / 3
Регистрация: 06.11.2009
Сообщений: 354
10.04.2010, 13:42     при вычислении выражении - одно значение,а в калькуляторе другое! #6
CyBOSSeR, все равно они приведутся к float, разве есть разница?
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
10.04.2010, 13:52     при вычислении выражении - одно значение,а в калькуляторе другое! #7
Цитата Сообщение от Demihalf Посмотреть сообщение
CyBOSSeR, все равно они приведутся к float, разве есть разница?
Если бы разницы не было, то и литералы бы не различались. Зачем возлагать на компилятор дополнительную работу, если можно просто сделать так как принято?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2010, 13:57     при вычислении выражении - одно значение,а в калькуляторе другое!
Еще ссылки по теме:

Можно ли нацело разделить одно число на другое - C++
Помогите написать программу. Число х вводится в двоичном виде, максимальная длина числа 64 разряды, затем вводится число в. Определить...

Можно ли из букв, входящих в одно слово, составить другое - C++
Даны два слова. Составить программу проверки, можно ли из букв, входящих в одно слово, составить другое (каждая буква используется только...

Заменить в строке одно слово на другое, заданное с клавиатуры. - C++
Строка: aa1 bb1 cc1 dd1 слово 1: bb1 слово 2: ff1 решение: aa1 ff1 cc1 dd1 Для начинающего программиста, если можно то программу...

Как умножить одно число на другое без умножения - C++
Умножьте одно число на другое, пользуясь только добавлением, удвоением и делением пополам.

Заменить в строке одно слово на другое, заданное с клавиатуры. - C++
Условие задачи: Заменить в строке одно слово на другое, заданное с клавиатуры. Текст программы: #include&lt;conio.h&gt; ...


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

Или воспользуйтесь поиском по форуму:
Genius Ignat
10.04.2010, 13:57     при вычислении выражении - одно значение,а в калькуляторе другое!
  #8

Не по теме:


Пишите doulbe больше поместится......

Yandex
Объявления
10.04.2010, 13:57     при вычислении выражении - одно значение,а в калькуляторе другое!
Ответ Создать тему
Опции темы

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