1)
var a:array [1..100] of integer;
n,i:integer;
begin
for i:=10 to 99 do begin
a[i]:=i;
if (a[i] mod n=0) then writeln(a[i]);
end;
end.
2)
var a:array [1..100] of integer;
n,k,i,x,y,z: integer;
begin
readln(n,k);
for i:=n to k do begin
a[i]:=i;
x:=a[i] mod 10;
y:=a[i] div 10;
z:=y mod 10;
y:=y div 10;
if (x=y) or (x=z) or (y=z) then writeln(a[i]);
end;
end.
3)
var a,n,an,na: integer;
begin
readln(a,n);
if (a>0) and (b>0) then begin
an:=a*10+n;
na:=n*10+a else writeln('Введены неверные числа!');
end;
end.
Не сказала бы, что это решение сильно отличается от уже имеющегося, но
а) оно совсем немножко удобнее (хотя бы из-за ClrScr и вывода ответа с определённым количеством знаков после запятой). А ещё предусмотрена возможность отсутствия таковых чисел.
б)ну не могла я пропустить задачу по паскалю)
Program n1;
Uses CRT;
Const n=10;
Var a: array[1..n] of integer;
i,s,k: integer;
begin
ClrScr;
Randomize;
For i:=1 to n do
begin
a[i]:=random(10);
write(a[i]:3);
If a[i]=i then
begin
s:=s+a[i];
writeln('s=',s);
k:=k+1;
end;
end;
writeln;
If k=0 then writeln('таких элементов нет') else
Writeln('Среднее арифметическое элементов массива, равных своим индексам, равно ',s/k:4:4);
readln
end.
Последняя цифра будет равна последней цифре произведения двух младших разрядов сомножителей 9·8 = 72, т.е. 2.
Само же произведение, увы, можно найти только вычислением.
Оно будет равно
2737716945423050345600398555176684633258912514924379847261460355903719144383097092