0 / 0 / 0
Регистрация: 22.01.2015
Сообщений: 5

Почему x меньше 1?

22.01.2015, 17:34. Показов 470. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int main (void)
{
 
double x = 0.7;
 
while (x < 1.2) {
  printf("x = %.1f\n", x);
  if (x < 1) printf ("x < 1 !\n");
  x += 0.1;
  }
}
вывод программы:

C++
1
2
3
4
5
6
7
8
9
x = 0.7
x < 1 !
x = 0.8
x < 1 !
x = 0.9
x < 1 !
x = 1.0
x < 1 !
x = 1.1
Почему в выводе появляется строка №8?
Компилятор: g++ 4.8.2
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.01.2015, 17:34
Ответы с готовыми решениями:

Почему при условие сравнения "меньше или равно" получается только "меньше"
Почему при условие сравнения &quot;меньше или равно&quot; получается только &quot;меньше&quot;

Определить количество элементов массива, которые меньше предыдущего и меньше последующего
В целочисленном,одномерном массиве определить кол-во элементов, которые меньше предыдущего и меньше последующего

Почему когда меньше 10 чисел выбивает ошибка
Почему когда я ввожу меньше 10 чисел у меня выбивает ошибка? int n=Edit1-&gt;Text.Length(); if (n&gt;10) {ShowMessage...

4
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
22.01.2015, 17:41
Округляется при выводе.
C++
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
 
int main()
{
    double x = 0.7;
    while ( x < 1.2 ) {
        printf( "x = %20.18f\n", x );
        if ( x < 1 ) printf( "x < 1 !\n" );
        x += 0.1;
    }
}
x = 0.699999999999999960
x < 1 !
x = 0.799999999999999930
x < 1 !
x = 0.899999999999999910
x < 1 !
x = 0.999999999999999890
x < 1 !
x = 1.099999999999999900
0
Модератор
Эксперт по электронике
8962 / 6728 / 921
Регистрация: 14.02.2011
Сообщений: 23,752
22.01.2015, 17:41
Цитата Сообщение от dmnsk Посмотреть сообщение
Почему в выводе появляется строка №8?
потому что с плавающими такие штучки не проходят
1.0 в памяти вполне может лежать как 0.99999
почитай в блогах у Evg
https://www.cyberforum.ru/blogs/18334/blog88.html
0
0 / 0 / 0
Регистрация: 22.01.2015
Сообщений: 5
22.01.2015, 18:09  [ТС]
ValeryS, castaway, спасибо
0
Модератор
Эксперт по электронике
8962 / 6728 / 921
Регистрация: 14.02.2011
Сообщений: 23,752
22.01.2015, 18:20
на всякий случай
как сравнивают числа с плавающей запятой
вводят погрешность
например
C++
1
2
3
if(n==1.0) // так неправильно
double eps=0.0001;// вот это и есть погрешность от неё зависит точность
if(fabs(n-1.0)<eps)// если разность меньше погрешности то считаем что совпали,fabs это функция которая возвращает модуль
это как в жизни расстояния между городами меряют в километрах но не в ангстремах
еще раз приведу цитату, проводил в другой теме
После первых измерений ему показалось, что картина распределения
получится слишком грубой. Он решил уточнить методику. Перебрал несколько
сортов нитей подвески. Поставил сверхчувствительный гальванометр. Затем
ему пришло в голову автоматически стабилизировать температуру прибора.
Учесть искажающее влияние трансформатора...
- Почему вы не учитываете полярных сияний? Заряды кота у сторожихи? -
спросил его Аникеев. - Вы больны. Болезнь называется "немогуостановиться".
Научитесь себя ограничивать. Получили примерную величину и двигайте
дальше. Искать истину в последней инстанции - зряшный труд. И существует
ли она, эта последняя инстанция?
Д. Гранин "Иду на грозу"
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.01.2015, 18:20
Помогаю со студенческими работами здесь

Почему флэшка стала меньше?
Флэшка в 4 Гб почему-то стала 1,9 Гб и показывает что на ней 80% занято, хотя файлов на ней никаких нет, даже скрытых. Флешке лет 5, с...

Почему в Fallout 4 меньше 20 FPS?
Купил новую видеокарту, а ФПСа нет, хотя текстуры стали быстро грузиться. Вот мой комп: Системная плата: Тип ЦП ...

Почему реальная скорость меньше заявленной ?
Здравствуйте. Есть такая проблема: в тарифе заявленная скорость 5 мб/c, когда например качаешь файл скорость не превышает 700 кб/c, хотя...

Почему у фразы с бОльшей частотностью меньше CTR?
Создаю кампанию и вижу, что некоторые из фраз не принимаются из-за низкого CTR (подсвечены серым), в то время, как частотность их намного...

Почему при выводе если х меньше 1 (-1.IND00)
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;math.h&gt; int main(int argc, char *argv) { double a, b ,K ,L ,x ,y; L=0.01; ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
MVC фреймворк в PHP
Jason-Webb 19.04.2025
Архитектурный паттерн Model-View-Controller (MVC) – это не просто модный термин из мира веб-разработки. Для PHP-программистов это фундаментальный подход к организации кода, который радикально меняет. . .
Dictionary Comprehensions в Python
py-thonny 19.04.2025
Python славится своей выразительностью и лаконичностью, что позволяет писать чистый и понятный код. Среди множества синтаксических конструкций языка особое место занимают словарные включения. . .
Шаблоны и протоколы для создания устойчивых микросервисов
ArchitectMsa 19.04.2025
Микросервисы — архитектурный подход, разбивающий сложные приложения на небольшие, независимые компоненты. Вместо монолитного гиганта, система превращается в созвездие небольших взаимодействующих. . .
Изменяемые и неизменяемые типы в Python
py-thonny 19.04.2025
Python славится своей гибкостью и интуитивной понятностью, а одна из главных его особенностей — это система типов данных. В этом языке все, включая числа, строки, функции и даже классы, является. . .
Интеграция Hangfire с RabbitMQ в проектах C#.NET
stackOverflow 18.04.2025
Разработка современных . NET-приложений часто требует выполнения задач "за кулисами". Это может быть отправка email-уведомлений, генерация отчётов, обработка загруженных файлов или синхронизация. . .
Построение эффективных запросов в микросервисной архитектуре: Стратегии и практики
ArchitectMsa 18.04.2025
Микросервисная архитектура принесла с собой много преимуществ — возможность независимого масштабирования сервисов, технологическую гибкость и четкое разграничение ответственности. Но как часто бывает. . .
Префабы в Unity: Использование, хранение, управление
GameUnited 18.04.2025
Префабы — один из краеугольных элементов разработки игр в Unity, представляющий собой шаблоны объектов, которые можно многократно использовать в различных сценах. Они позволяют создавать составные. . .
RabbitMQ как шина данных в интеграционных решениях на C# (с MassTransit)
stackOverflow 18.04.2025
Современный бизнес опирается на множество специализированных программных систем, каждая из которых заточена под решение конкретных задач. CRM управляет отношениями с клиентами, ERP контролирует. . .
Типы в TypeScript
run.dev 18.04.2025
TypeScript представляет собой мощное расширение JavaScript, которое добавляет статическую типизацию в этот динамический язык. В JavaScript, где переменная может свободно менять тип в процессе. . .
Погружение в Kafka: Концепции и примеры на C# с ASP.NET Core
stackOverflow 18.04.2025
Apache Kafka изменила подход к обработке данных в распределенных системах. Эта платформа потоковой передачи данных выходит далеко за рамки обычной шины сообщений, предлагая мощные возможности,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru