Как преобразовать real в integer pascal abc

Преобразование типа из real в integer

Попытка присвоить переменной типа integer выражение типа real
Здравствуйте форумчане. Написала программу для замены элементов массива после максимального.

Попытка присвоить переменной типа integer выражение типа real
Здравствуйте! Моя задача: Найти сумму всех n-значных чисел, кратных k (1 ≤ п ≤ 4). Я.

преобразование integer в real
Ребята есть элементарная задачка (надо для девушки моей решить, а я Паскаль уже не помню :((.

Метод Симпсона — попытка присвоить значение integer переменной типа real
Как исправить ошибку? В строке N2:= n/2; пишет попытка присвоить значение integer переменной типа.

Ошибка : нельзя преобразовать тип real к string

Между прочим, floatToStr и StrToInt — функции, они возвращают результат, а не изменяют аргумент.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками pascal pascalabc.net freepascal или задайте свой вопрос.

дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.12.3.40888

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Pascal- Как преобразовать переменную Real в Integer

Но выход показывает: 9.000000 + EEE или что-то подобное.

Так как преобразовать, чтобы быть только 9, не эта переменная REAL.

ответ

Чтобы реально конвертировать:

Для вывода только целая часть:

Спасибо, но в первой части — дубликат идентификатора. – user2456556

Для целей показа довольно вывода на экран вы можете использовать что-то вроде этого:

Результатом на экране будет следующее:

Что это значит, кто-нибудь спросит? Ну, первое число 0 означает, насколько широка подана. если вы говорите, что это 0, то Паскаль пишет это в самой левой части экрана. Если вы сказали writeln(result:5:2) результат будет:

Другими словами я бы напечатать форму с правой стороны и оставить 5 символов, чтобы сделать это.

Второй номер 2, в этом примере означает, что вы хотите, чтобы результат был напечатан с 2 знаками после запятой. Вы можете поместить его, только если вы хотите печатать на экране значения, что является реальным, одно-, двух-, расширенная и так on.You может округлить до любого количества знаков после запятой, и если вы делаете writeln(result:0:0) вы получите поток вывода:

Если вы печатаете целое число и хотите иметь некоторую длину поля, давайте сидим 5, вы бы сделали: writeln(int:5) . Если вы добавили :2 до конца, вы получите ошибку времени компиляции.

Это все работает что-то вроде этого: writeln(5/3.5+sqrt(3):0:3) ,

Вы должны знать, что это не круглая переменная сама, но только форматы вывода. Это также правовое:

Что я сделал здесь я спросил пользователь, если на сколько знаков после запятой и с тем, что длиной поля он хочет записать введенный номер в. Это может быть полезно, поэтому я указываю это. Спасибо за чтение. Я надеюсь, что я помог

Давайте рассмотрим это довольно простое уравнение:

Что вы ожидаете? 6 , правильно?Давайте попробуем этот код

К сожалению, это число с плавающей точкой, так что он будет производить ряд, представленный на научной основе:

или 6,0000000000 х 10 , или 6 х 10 o . Что бы то ни было, вам всего лишь 6, кому нужно это странное бессмысленное длинное число? Таким образом, идея заключается в том, чтобы отрезать дробную часть и вывод на консоль только целая часть, которая может быть сделана с этой строкой коды:

Хорошо, теперь он выдает красивый номер, как ожидается,

Похоже, проблема решена, но вы говорите, что:

Я подведение некоторым числам

Примера : 2,3 + 3,4+ 3,3 = 9

Ох, чтобы равномерно красивое целое просто случайно появилось? Здесь возникает проблема, как вы ожидаете, что это уравнение выйдет?

Должно быть 6.1 , правильно? Давайте попробуем с отработанной строки кода:

Неожиданный, верно? Итак, как насчет округления до десятичных знаков, например 1 ?

Затем 3.5 + 2.5 = 6.0 и 3.6 + 2.5 = 6.1 . Но 6.0 может выглядеть довольно долго, так как сделать вывод 6 для 6.0 и 6.1 для 6.1?

На самом деле вы не можете сделать автоматическое обнаружение программы, если реальная переменная содержит целочисленное значение, поскольку способ сохранения реального var полностью отличается от целочисленного var (насколько он отличается от них, обратитесь в Google, но вы можете сделать это вручную, выполнив функцию для выполнения задания).

Итак, мое решение состоит в том, чтобы сделать вывод округленным до десятичных знаков, и все.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *