Как в pascal обозначаются натуральные числа? как описать переменную в программе, если указано, что это должно быть именно натуральное число? это ведь не integer, и не real, и не word
Натуральные числа в математике определяются как целые положительные, получающиеся при счете. Т.е. это числа 1, 2, 3, ...
В языке Паскаль (собственно, как и в большинстве других языков программирования) нет специального типа данных для натуральных чисел. Поэтому натуральные числа отображаются на целочисленные типы. Указание на то, что Вы имеете дело с натуральным числом, дается с тем, чтобы учесть это при разработке алгоритма. Например, если сказано что n - натуральное число, можно не беспокоиться, что при делении на него будет ошибка деления на ноль. Можно не озабочиваться тем, что оно попадет под квадратный корень и даст ошибку из-за появления код корнем отрицательного числа. И так далее.
Подходящим типом данных в Паскале может быть тот целочисленный, в котором разместятся любые натуральные числа, которые заданы или могут образоваться в процессе вычислений, даже как промежуточные данные. Например, если Вы возьмете тип integer, современные версии Паскаль позволят разместить в нем значение, не превышающее 2 147 483 647, т.е. примерно 2.1 миллиарда. Пусть дано n = 2 000 000 000 и надо найти остаток от деления n² на 97.
Если написать Sqr(n) mod 97, получим забавный результат -41, хотя ответ тут 65. Это потому, что 2 миллиарда в квадрате нельзя разместить в переменной типа integer (но можно в int64) и часть разрядов числа будет молча утеряна. Это одна из неприятностей неграмотной работы с целыми числами. Одна - потому что есть и другие)).
zakaz
04.03.2022
Var R1, R2, R3, S1, S2, S3: Integer; begin writeln('Введите размеры рации и чемодана'); readln(R1, R2, R3, S1, S2, S3); if ((R1 < S1) and (R2 < S2) and (R3 < S3)) or ((R3 < S3) and (R2 < S1) and (R1 < S2)) or ((R1 < S1) and (R2 < S3) and (R3 < S3)) or ((R2 < S2) and (R1 < S3) and (R3 < S1)) or ((R2 < S1) and (R3 < S2) and (R1 < S3)) or ((R1 < S2) and (R3 < S1) and (R2 < S3)) then WriteLn('ПОМЕЩАЕТСЯ') else WriteLn('НЕ ПОМЕЩАЕТСЯ'); end.
zsa100
04.03.2022
Задача 7. ВОДОЛАЗКА Задача 2. после 6 применений 64 четных цифры (после каждого применения их количество увеличивается в 2 раза) Задача 1. не может быть Даша второй, т.к. это утверждение в 4 и 5 строках. Не может быть третьей Ира (предполагается в 3 и 5 строках). Значит первая Маша. А Даша и Ира - не призеры. Из 4-й строки получаем. что и Боря не призер. Из 1 и 3 строки получаем, что Вася - не призер (т.к. указано что Вася второй и Вася третий). Значит призер Таня (не первая и не третья, значит - вторая). Из 2 строки получаем, что и Гена не призер. Остается Антон - третий ответ: Маша, Таня, Антон Задача 3. Всего можно составить 60 трехзначных чисел. Числе. меньших 200, 12. Вероятность 12/60=0,2 Задача 9. 16 Задача 4. Можно (Земля-Марс-юпитер-Венера-Меркурий) Задача 6. 370 343 640 613 910 901 271 253 550
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Как в pascal обозначаются натуральные числа? как описать переменную в программе, если указано, что это должно быть именно натуральное число? это ведь не integer, и не real, и не word
Натуральные числа в математике определяются как целые положительные, получающиеся при счете. Т.е. это числа 1, 2, 3, ...
В языке Паскаль (собственно, как и в большинстве других языков программирования) нет специального типа данных для натуральных чисел. Поэтому натуральные числа отображаются на целочисленные типы. Указание на то, что Вы имеете дело с натуральным числом, дается с тем, чтобы учесть это при разработке алгоритма. Например, если сказано что n - натуральное число, можно не беспокоиться, что при делении на него будет ошибка деления на ноль. Можно не озабочиваться тем, что оно попадет под квадратный корень и даст ошибку из-за появления код корнем отрицательного числа. И так далее.
Подходящим типом данных в Паскале может быть тот целочисленный, в котором разместятся любые натуральные числа, которые заданы или могут образоваться в процессе вычислений, даже как промежуточные данные. Например, если Вы возьмете тип integer, современные версии Паскаль позволят разместить в нем значение, не превышающее 2 147 483 647, т.е. примерно 2.1 миллиарда. Пусть дано n = 2 000 000 000 и надо найти остаток от деления n² на 97.
Если написать Sqr(n) mod 97, получим забавный результат -41, хотя ответ тут 65. Это потому, что 2 миллиарда в квадрате нельзя разместить в переменной типа integer (но можно в int64) и часть разрядов числа будет молча утеряна. Это одна из неприятностей неграмотной работы с целыми числами. Одна - потому что есть и другие)).