|
1 / 1 / 0
Регистрация: 18.07.2016
Сообщений: 51
|
||||||
Самый простой компилятор09.12.2018, 22:31. Показов 3212. Ответов 20
Метки компилятор (Все метки)
В чём ошибка? Компилятор выдаёт ошибку.
0
|
||||||
| 09.12.2018, 22:31 | |
|
Ответы с готовыми решениями:
20
Самый простой односвязный список Самый простой вопрос на сегодня. |
|
с++
1282 / 523 / 225
Регистрация: 15.07.2015
Сообщений: 2,562
|
|
| 09.12.2018, 22:35 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 18.07.2016
Сообщений: 51
|
||||||
| 09.12.2018, 23:06 [ТС] | ||||||
|
Здесь идут сами расчёты. Конвертирование.
Точнее это я так представляю, что ту происходит) Формулы перевода. Добавлено через 24 минуты Актуально. Немного переделал.
0
|
||||||
|
с++
1282 / 523 / 225
Регистрация: 15.07.2015
Сообщений: 2,562
|
||||||
| 09.12.2018, 23:14 | ||||||
1
|
||||||
|
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
|
|
| 09.12.2018, 23:18 | |
|
Переменные sm, E, tm должны быть целыми, т.к. определяют номер варианта. Сравнение вещественных чисел на равенство очень плохая идея. Константы нигде не используются, они тут вообще нужны в таком случае?
0
|
|
|
1 / 1 / 0
Регистрация: 18.07.2016
Сообщений: 51
|
|
| 09.12.2018, 23:55 [ТС] | |
|
Спасибо большое, Antikl.
Код работает. Но вот у меня только введённые числа почему-то не конвертируются. Не знаете причину?
0
|
|
|
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
|
||||||
| 09.12.2018, 23:59 | ||||||
|
Blacit, вы забыли его вывести в конце.
1
|
||||||
|
1 / 1 / 0
Регистрация: 18.07.2016
Сообщений: 51
|
||||||
| 10.12.2018, 00:02 [ТС] | ||||||
|
Спасибо, вывел результат (честно не знал про это)
Сама конвертация не происходит... Извините за такое количество вопросов, стараюсь учиться. Вы выше про константы говорили, предлагаете просто убрать эти 4 строчки? const int M = 100; const int CM = 1; const float F = 30.48; const float Inch = 2.54; Сам код:
0
|
||||||
|
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
|
|
| 10.12.2018, 00:16 | |
|
Blacit, или убрать (правда они ни на что не влияют), либо использовать, не зря же вы их писали.
Для начала, научитесь верно выделять код тегами: найдите кнопку языка c++, поскольку у вас это не код для Qt. И сделайте переменные sm, E, tm целочисленными (unsigned int), полагаю дело именно в ошибке сравнения вещественных чисел на равенство. Расскажите о результатах.
0
|
|
|
1 / 1 / 0
Регистрация: 18.07.2016
Сообщений: 51
|
||||||
| 10.12.2018, 00:36 [ТС] | ||||||
|
Извините. Я сразу не заметил C++. Теперь через него.
Вот то, что я сделал: 1. переменные sm, E, tm целочисленными (unsigned int) 2. Удалил константы Мои догадки: что-то не так с формулами. Именно в них уже подсчёты неправильные. Потому что конвертирование происходит, но неверное. Код, который получился:
0
|
||||||
|
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
|
|||||||
| 10.12.2018, 00:45 | |||||||
|
Кликните здесь для просмотра всего текста
Еще совет: везде, где вам нужны целые числа, используйте именно целые числа, т.к. вычисление вещественных чисел происходит приблизительно. Связано с тем, что вещественные числа могут быть бесконечными дробями, а для их представления в памяти компьютера выделяется конечное количество памяти. Записать бесконечное число конечным количеством знаков без потерь точности невозможно. Тип double имеет большую точность, нежели float, поэтому предпочтительнее использовать именно его. Тип float используется только в случаях, когда объем памяти критичен.
0
|
|||||||
|
1 / 1 / 0
Регистрация: 18.07.2016
Сообщений: 51
|
||||||
| 10.12.2018, 01:03 [ТС] | ||||||
|
То, что сделал:
Удалил float вначале и приписку у всех чисел. Прислушался ко всем Вашим замечаниям. Вставил вначале double. Не могли бы Вы объяснить, нужно у чисел в с плавающей точкой ставить на конце что-то? Код, который работает:
0
|
||||||
|
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
|
|||||||
| 10.12.2018, 01:07 | |||||||
Сообщение было отмечено Blacit как решение
Решение
Если избавиться от магических чисел в коде и вернуться к использованию констант, то можно воспользоваться переводом любой из величин в сантиметры, умножая на соответствующую константу. Перевод сантиметров в другую величину будет выполняться с помощью обратного действия - деления. Таким образом, достаточно 3 константы и правильные формулы.
Попробуйте сами разобраться. Если что-то будет непонятно, задавайте вопросы. Готовый код можно подсмотреть под спойлером. Надеюсь, не запутался во множестве строк с формулами, проверьте внимательно. Кликните здесь для просмотра всего текста
Добавлено через 1 минуту
1
|
|||||||
|
1 / 1 / 0
Регистрация: 18.07.2016
Сообщений: 51
|
|
| 10.12.2018, 01:11 [ТС] | |
|
Можно вопрос как раз по поводу Double, который выше, он актуален.
Хотел бы повысить точность и округление чисел до 10, ну или сотой. Как можно реализовать момент, чтобы пользователь , пытаясь вводить буквы, программа ему выдавала соответствующую ошибку и предлагала попробовать ввести цифры заново. Вот, например, когда используешь тип float, то в конце у чисел должна стоять "f", пример: 12.25f А у типа double такая же должна быть ситуация?
0
|
|
|
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
|
|||||||
| 10.12.2018, 01:40 | |||||||
|
Небольшой пример для наглядности
Windows XP, MinGW 5.1 Linux x64, gcc 6.3
0
|
|||||||
|
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
|
||||||||
| 10.12.2018, 02:16 | ||||||||
|
Пример проверки ввода с повторением
0
|
||||||||
|
1 / 1 / 0
Регистрация: 18.07.2016
Сообщений: 51
|
|
| 10.12.2018, 09:58 [ТС] | |
|
Конечно, можно.
Например, 1 / 3 = 0.666666 А хотелось, чтобы он округлял до сотой. Спасибо большое за примеры кодов. Обязательно разберусь в них и воспользуюсь.
0
|
|
|
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
|
||||||
| 10.12.2018, 13:27 | ||||||
|
Blacit, полагаю, нужно округление при выводе. Для этого можно задать точность (количество знаков после запятой). Часть настроек форматирования можно посмотреть/изменить через унаследованные методы от класса ios_base, остальные - библиотека <iomanip>. Посмотрите, какие она предоставляет возможности.
0
|
||||||
|
1 / 1 / 0
Регистрация: 18.07.2016
Сообщений: 51
|
||||||
| 10.12.2018, 20:11 [ТС] | ||||||
|
Большое спасибо. Пока что остановлюсь на округлении результата. Потому что с флагом ошибок пока что достаточно трудно)
Вот конечный результат. Формулу доделал, перепроверил. У меня вопрос в этом моменте: cout.precision(3); cout << "set precision(3) в скобках пишутся цифры для чего (понятно, что показывает число, до какого округляется), но , если , например, до 3 числа, то цифру "3" прописываем в двух строчках?
0
|
||||||
|
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
|
||||||||
| 10.12.2018, 21:21 | ||||||||
0
|
||||||||
| 10.12.2018, 21:21 | |
|
Помогаю со студенческими работами здесь
20
Самый простой, примитивный морской бой Самый большой простой делитель числа
Нужно создать самый простой класс (С++) Написать простой компилятор языка C Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|