Натуральные числа в математике определяются как целые положительные, получающиеся при счете. Т.е. это числа 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) и часть разрядов числа будет <u>молча</u> утеряна. Это одна из неприятностей неграмотной работы с целыми числами. Одна - потому что есть и другие)).
Var
a,b,d,K,kp:integer;
P:boolean;
Begin
kp:=0;
ReadLn(a,b);
if (a = 1)or(a = 2) then
Begin
kp:=2;
Write(2,' ',3)
end
else if a = 3 then
Begin
kp:=1;
Write(3);
End;
if a < 5 then a:=5
else if a mod 2 = 0 then a:=a+1;
While a<=b do
Begin
K:=Trunc(Sqrt(A));
d:=3;
P:=true;
While d <= K do
Begin
if A mod d = 0 then P:=false;
d:=d+2
End;
if P then
Begin
kp:=kp+1;
Write(' ',a);
End;
a:=a+2
End;
if kp = 0 then Write(0)
End.
<h2>ответ 30</h2>
количество путей, проходящих через точки:
А 1
Б 1
В 1
Г 3(А+Б+В)
Д 3(=Г)
Е 3(т.к. путь ВЕ не проходит через пункт Г, его не учитываем)
Ж 9(Д+Г+Е)
З 9(=Ж)
И 21(Д+Ж+З)
К 30(И+З)
Дело в том, что под этим понятием можно понимать ряд разных вещей. Они похожи между собой идеей.
1) Подключение заголовочного файла.
#include <stdio.h>
#include "myfile.h"
В заголовочных файлах чаще всего хранятся прототипы различных функций и некоторые константы. Это нужно, чтобы компилятор знал описание функций, которые вы используете, если они описаны не вами.
2) Подключение lib-файла.
Обычно делается в настройках проекта или коммандой #pragma comment(lib, "mylib.lib")
Таким образом мы можем использовать код, хранящийся, например в dll, без ручной загрузки.
3) Загрузка dll.
Делается через вызов функции LoadLibrary и последующими GetProcAddress - это ручная загрузка функций из библиотеки.
Все это предназначено для того, чтобы вы могли использовать сторонний код (будь то стандартные средства языка или код написанный просто другими программистами).
А) информацию из разных учебников пишешь в один конспект
б) копирование на флешку
в) восприятие информации органами чувств и ее обработка мозгом
г) разговор
д) краткий пересказ
е) <span>сидишь на уроке и принимаешь информацию от учителя в своей голове
ж) пишешь книгу
з) сжигаешь газету
и) учишь стих
к) систематизация по категориям
л) подсчет слов в предложении
м) любой поиск в поисковой системе</span>