Часть калькулятор
Входные данные (вводит пользователь):
1. IP адрес в десятично-точечном виде.
2. Маска подсети в десятично-точечном либо префиксном виде.
Выходные данные (выводятся на экран):
1. Введенный IP адрес.
2. Введенная маска подсети в десятично-точечном и бинарном виде.
3. Маска подсети в префиксном виде.
4. Подсеть, в которой находится введенный IP адрес.
5. Первый допустимый IP адрес в подсети.
6. Последний допустимый IP адрес в подсети.
7. Широковещательный IP адрес в подсети.
8. Количество допустимых IP адресов в подсети.
Примечание:
1. Значения пунктов №1,2,4,5,6,7 должны быть представлены в
десятично-точечном и бинарном виде.
2. Значения пунктов №3,8 должны быть представлены в десятичном виде.
3. В записи IP-адресов должны отсутствовать впереди стоящие нули, т.е.
запись 010.001.001.010 некорректна, 10.1.1.10 - корректна.
на программы написал, но мне не хватает знаний.
var
a, b: real;
n: integer;
function arif_mem(a, b: real; n: integer): real;
begin
if n = 1 then arif_mem := a;
if n > 1 then arif_mem := arif_mem(a, b, n - 1) + b;
end;
function arif_sum(a, b: real; n: integer): real;
begin
if n = 1 then arif_sum := a;
if n > 1 then arif_sum := arif_sum(a, b, n - 1) + arif_mem(a, b, n);
end;
begin
write('введите первый член прогрессии:');
readln(a);
write('введите разность прогрессии:');
readln(b);
write('введите номер члена прогрессии:');
readln(n);
writeln(n, '-й член прогрессии равен :', arif_mem(a, b, n):8:2);
writeln('сумма ', n, ' членов прогрессии равна :', arif_sum(a, b, n):8:2);
end.
1.
var a:longint;
begin
read(A);
if (a mod 10)=(a div 10) then writeln('цифры одинаковы');
if (a mod 10)>(a div 10) then writeln('вторая цифра больше');
if (a div 10)>(a mod 10) then writeln('первая цифра больше');
end.
2.
var a,b,c:longint;
begin
read(A);
b:=a mod 10;
c:=a div 10;
b:=b*b*b;
c:=c*c*c;
d:=4*(b+c);
if sqr(A)=d then writeln('квадрат этого числа равен учетверённой сумме кубов его цифр') else writeln(' квадрат этого числа не равен учетверённой сумме кубов его цифр');
end.
3.
var a,b,c,d:longint;
begin
read(A);
b:=a mod 10;
c:=a div 10;
d:=c+b;
if d mod 3=0 then writeln('сумма цифр данного числа кратна 3') else writeln('сумма цифр этого числа не кратна 3');
if d mod 4=0 then writeln('сумма цифр данного числа кратна 4') else writeln('сумма цифр этого числа не кратна 4');
end.
4.
var a,b,c,d,e:longint;
begin
read(A);
b:=a mod 10;
c:=(a mod 100) div 10;
d:=a div 100;
b:=b*b*b;
c:=c*c*c;
d:=d*d*d;
e:=b+c+d;
if sqr(A)=e then writeln('квадрат этого числа равен сумме кубов его цифр.') else writeln('квадрат этого числа не равен сумме кубов его цифр.');
end.
5.
var a,b,c,d:longint;
begin
read(b,a);
c:=b mod 10;
d:=b div 10;
if (c=3)or(d=3) then writeln('в запись этого числа входит цифра 3') else writeln('в запись этого числа не входит цифра 3');
if (c=a)or(d=a) then writeln('в запись этого числа входит цифра ',a') else writeln('в запись этого числа не входит цифра ',a);
end.