Задача №8.Дано натуральное число n. Верно ли, что сумма цифр этого числа является нечётной.
Решение.
Program for_8;
uses crt;
var a : string;
t,er,n,i,s : integer;
begin
clrscr;
write('введитечисло ');readln(a);
s:=0;
for i:=1 to length(a) do
begin
val(a[i],t,er);
s:=s+t;
end;
if s mod 2<>0
then write('сумма являетсяся нечётной')
else write('сумма является чётной');
readln;
end.
Задача №9.Натуральное число из n цифр является ся числом Армстронга, т.е. сумма его цифр возведенная в степеньn, равна самому числу (153=1*1*1+5*5*5+3*3*3).Получить все числа Армстронга для n=4 и n=3
Решение
Program for_9;
uses crt;
var i,j,k,l : integer;
n,m : longint;
begin
clrscr;
begin
for i:=1 to 9 do
for j:=0 to 9 do
for k:=0 to 9 do
for l:=0 to 9 do
begin
n:=1000*i+100*j+10*k+l;
if i*i*i*i+j*j*j*j+k*k*k*k+l*l*l*l=n
then writeln(n);
end;
end;
begin
for i:=1 to 9 do
for j:=0 to 9 do
for k:=0 to 9 do
begin
m:=100*i+10*j+k;
if i*i*i+j*j*j+k*k*k=m
then writeln(m);
end;
end;
readln;
end.
Задача №10.Посчитать сумму цифр всех целых чисел 1 до n.
Решение.
Program for_10;
uses crt;
var i,j,n,er,s,t : integer;
a : string;
begin
clrscr;
write('введитечисло n ');readln(n);
s:=0;
for i:=1 to n do
begin
str(i,a);
for j:=1 to length(a)do
begin
val(a[j],t,er);
s:=s+t;
end;
end;
write('сумма=',s);
readln;
end.
Задача №11.Имеется n бактерий красного цвета. Через 1 такт времени красная бактерия меняется на зелёную, затем через 1 такт времени делится на красную и зелёную. Сколько будет всех бактерий через k тактов времени?
Решение.
Program for_11;
uses crt;
var i,k,n,z,nz,nk:longint;
begin
clrscr;
write('кол-во бактерий:');readln(n);
write('кол-во тактов времени:');readln(k);
z:=0;
for i:=1 to k do
begin
nz:=0;
nk:=0;
nz:=nz+z;
nk:=nk+z;
nz:=nz+n;
n:=nk;
z:=nz;
end;
n:=z+n;
writeln('Число бактерий=',n);
readln;
end.
Задача №12.Можно ли данное натуральное число представить в виде суммы двух квадратов чисел.
Решение.
Program for_12;
uses crt;
var k,g,i,j,m : longint;
begin
clrscr;
write('введитечисло ');readln(m);
k:=0;
for i:=1 to m do
begin
for j:=1 to m do
if i*i+j*j=m then
begin
k:=k+1;
writeln(i,'*',i,'+',j,'*',j,'=',m);
end;
end;
if k>0 then write('можно ',k,' способами')
else write('нельзя');
readln;
end.
Задача №13.Получить n четырёхзначных чисел, в записи которых нет двух одинаковых цифр.
Решение.
Program for_13;
uses crt;
var i,j,k,l,a : longint;
m,n : integer;
begin
clrscr;
write('введите количество чисел ');readln(n);
m:=0;
for i:=1 to 9 do
for j:=0 to 9 do
for k:=0 to 9 do
for l:=0 to 9 do
if (i<>j)and(i<>k)and(i<>l)and(j<>k)and(j<>l)and(k<>l)and(m<=n)then