Если не использовать строки, то решение может быть таким:
var n,k,st:integer;
begin
write('n='); readln(n);
k:=0; st:=1;
while n>0 do
begin
if n mod 10 <> 0 then
begin
k:=(n mod 10)*st+k;
st:=st*10;
end;
n:=n div 10;
end;
writeln(k);
<span>end.
</span>
В первом не хватает-13,14, а во втором -1,2,3,4,5,6,7,9,11,12,13,14,15,16.
#include <iostream>
using namespace std;
int main()
{
setlocale(LC_ALL,"Russian");
int k=0,s=0,n;
cout<<"Введите размер массива: ";
cin>>n;
int a[n];
for (int i=0; i<n; i++) cin>>a[i];
cout<<"\nВведите K: ";
cin>>k;
for (int i=0; i<n; i++) if (a[i]%k==0) s+=a[i];
cout<<"\nСумма чисел кратных "<<k<<" = "<<s<<endl;
system("PAUSE");
}
var
i, c : byte;
t : integer;
begin
c := 0;
for i := 1 to 10 do
begin
read (t);
if t mod 2 = 0 then inc (c);
end;
writeln (c);
end.
var
n, i : integer;
begin
read (n);
for i := 100 to 999 do
if i mod 10 + i div 10 mod 10 + i div 100 = n then writeln (i);
end.
var
i : integer;
begin
for i := 100 to 999 do
if i mod 10 = i div 100 then writeln (i);
end.