nan в паскале что это
Что значит nan в паскале
NaN (not a number) is a numeric data type value representing an undefined or unrepresentable value. These values result from operations which have undefined numerical results. NaN is not the same as infinity.
Note, NaN exists only in the context of floating point number calculations: 0 div 0 (integer division) is not allowed, though.
К операциям, приводящим к появлению NaN в качестве ответа, относятся:
В некоторых языках программирования есть «тихий» и «сигнальный» NaN: первый, попав в любую операцию, возвращает NaN, второй — вызывает исключительную ситуацию. Обычно «тихий» или «сигнальный» определяется старшим битом мантиссы.
Nan в паскале
Автор Efor klass задал вопрос в разделе Программное обеспечение
Нужна помощь. Что делать если при написании примера в Pascal пишет NAN. и получил лучший ответ
Ответ от Вован де Морт[гуру]
NaN (англ. Not-a-Number)
К операциям, приводящим к появлению NaN в качестве ответа, относятся:
все математические операции, содержащие NaN в качестве одного из операндов;
деление нуля на нуль;
деление бесконечности на бесконечность;
умножение нуля на бесконечность;
сложение бесконечности с бесконечностью противоположного знака;
вычисление квадратного корня отрицательного числа [1];
логарифмирование отрицательного числа.
const
c500 = 500;
c100 = 100;
c50 = 50;
var
s, n500,
подробнее.
Nan в паскале что это
Математическое выражение | Запись на языке Паскаль | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2+2=4 | 2+2=4 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
a*(1+sqr(e))/2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(-b+sqrt(sqr(b)-4*a*c))/(2*a) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
exp(2*x+y) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
abs(cos(x)*sin(x)*cos(y)/tan(y)) если компилятор не поддерживает Tan. Вычисление квадратного корняДрузья а ваот еще одна программа. Она вычисляет квадратный корень. а случайно не так надо писать?? Ну ты сам подумай. Это все равно что написать слово яблоко тире яблоко. А во вторых попробуй напиши эту программу как у меня написанно и проверь ее у себя. А потом напиши как ты сам решил то есть (Var a :longint, z :longint;) и увидеш что получиться. Met, Алексей так спросил, т.к. в vb6 нужно отдельно объявлять тип для каждой переменной. Met, не умничай! я задал такой вопрос так как в vb6 так из за variant и уменя нету Паскаля и я немогу нечего проверить. Так если у тебя нет Паскаля, то зачем задавать вопросы которые не относяться к программе, на которой ты программируеш. Я не умничяю а просто не люблю вопросов не по существу.Если у тебя стоит Паскаль и ты на нем программируеш и у человека что то не получается то он спрашивает у форумчан и ответить ему на его проблему я считаю нет ни чего зазорного, но когда человек спрашивает просто так, во первых он отнимает у меня время а во вторых зачем спрашивать если ты на этом языке не программируеш. Я же не спрашиваю у программистов на С++ ка и что можно сделать, потому что я на этом языке не программирую. И не отвлекаю людей вопросами которые ко мне не имеют ни какого отношения. Просто прежде чем спросить надо подумать а ЗАЧЕМ ЭТО НУЖНО. даааа ужж вижуу у тебя дохера времени. а ответить на вопрос займёт минуту. а то что ты тут завёл целую без смысленную поэму это твои проблемы. Я сейчас в Pascal ABC и на этот код овечает,”Ошибка: неизвестный индентификатор Sgrt Источник статьи: http://vbbook.ru/turbo-pascal/vuchislenie-kvadratnogo-kornya/ Операции целочисленного деления и остаткапредназначена для вычисления целой части от результата деления целых чисел (неполное частное). Пример:16 div 2 = 822 div 7 = 366 div 10 = 6 То есть, число N div K показывает, сколько полных раз K «помещается внутри» N. предназначена для вычисления остатка от деления одного целого числа на другое. Если числа делятся нацело, то остаток равен нулю. Пример:16 mod 2 = 022 mod 7 = 166 mod 10 = 6 Число N mod K показывает, что «остаётся от N» после того, как из него «убрали» максимальное число фрагментов размером K. Работа с отдельными цифрами числаЕсли мы работаем в 10-й системе счисления, то любое число можно разобрать на цифры, используя степени 10 и операции div и mod. Стандартный вид числа:123 = 1∗100 + 2∗10 +3 Таким образом, можно понять, как получить из общего числа отдельные его цифры: для получения сотен из трёхзначного числа, нужно вычислить частное от деления на 100; для получения десятков, нужно вычислить остаток от деления на 100, а затем частное от деления на 10 (возможен другой вариант)для получения единиц, нужно взять остаток от деления на 10. Пример: Дано трёхзначное целое число. Вывести сумму его цифр. Убедитесь, что ваша программа корректно работает с отрицательными числами. begin var a := abs(readinteger); // модуль числа println(a div 100 + (a div 10) mod 10 + a mod 10);end. Дано двузначное целое число. Требуется вывести сумму и произведение его цифр. Пример:35 => 8, 1590 => 9, 0-11 => 2, 1 // сумма и произведение цифр положительны Приведите лог работы программы с одним из введенных чисел в форме комментария. Дано трёхзначное целое число. Выполните в нем циклический сдвиг разрядов влево (разряд единиц становится разрядом десятков, разряд десятков — разрядом сотен, а разряд сотен — разрядом единиц). Функции для преобразования действительных и целых чиселПаскаль — язык программирования со статической сильной типизацией. Это означает, что компилятор не выполняет преобразований значений между типами, которые могут привести к потере информации; в частности, если подставить в конструкцию, предусматривает целое значение, действительное число, компилятор сообщит об ошибке, даже если это число имеет целое значение. Так, как мы видели выше, 13 and 11 равна 9, но выражение 13.0 and 11 вызовет сообщение компилятора об ошибке! Чтобы избежать этого, надо явно задавать преобразования действительного числа на целое с помощью следующих функций:
Логические и побитовые операцииЛогические операции используются для объединения нескольких логических условий в одну.
Логические операторы, применены к целым типов, могут использоваться, как побитовые. Чтобы получить результат побитовой операции, надо представить операнды в двоичной системе (так, как они представлены в компьютере), после чего применить соответствующую операцию в соответствующих разрядов, причем 1 означает true 0 — false. так, выведет 9, потому что
Кроме того, есть еще две побитовых операции сдвига:
Алгебраические функцииCерым обозначены функции, которые не поддерживаются в Turbo Pascal
Примечание: корень степени Y из числа X можно представить как X 1 / Y, и, соответственно, как Power (X, 1 / Y) или в Turbo Pascal как Exp (Ln (X) / Y). Тригонометрические функцииФункции для работы со случайными величинамиДля имитации случайных процессов в Паскале есть генератор псевдослучайных чисел (ГПВЧ) и функции для работы с ним; такие числа достаточно непредсказуемыми для практического использования (то есть каждое последующее использование функции Random даст какой-то мере неожиданный результат), но их последовательность может быть полностью воспроизведена, если установить начальное значение ГПВЧ.
Функции для работы со сочтеными типамиДля величин сочтеных типов (все цели, буквенный, логическое и перечни) существуют также несколько удобных стандартных функций и процедур:
Приоритет операцийВо время разбора математического выражения Паскаль сначала выполняет операции с высоким приоритетом, затем с низким, все справа налево. Так, в выражении 2 + 2 * 2 сначала будет вычислено 2 * 2 = 4, а уже затем 2 + 4 = 6 — так же, как в обычной математике; в выражении 10 mod 2 * 3 сначала будет выполнено 10 mod 2 = 0, а уже потом 0 * 3 = 0!
|