PROGRAM Sieunguyento ;
USES crt;
VAR
dem:WORD;
n:BYTE;
a,b : LONGINT;
i: LONGINT;
f1,f2 : TEXT;
FUNCTION lt(x,y:INTEGER):LONGINT;
VAR i: BYTE;k: LONGINT;
BEGIN
k:=x;
IF y=0 THEN lt:=1
ELSE
FOR i:=1 TO y-1 DO
k:= x * k;
lt:=k;
END;
FUNCTION ngto(x:LONGINT):BOOLEAN;
VAR i:LONGINT;
BEGIN
Ngto:=TRUE;
FOR i:=2 TO x-1 DO
IF x MOD i = 0 THEN
BEGIN
ngto:=FALSE;
exit;
END;
END;
FUNCTION snt(x:LONGINT):BOOLEAN;
VAR i: BYTE;
BEGIN
snt:= TRUE;
FOR i:=1 TO n-1 DO
BEGIN
x:=x DIV 10;
IF NOT ngto(x) THEN
BEGIN
snt:= FALSE;
exit;
END;
END;
END;
BEGIN
clrscr;
Assign(f1,'NT.INP');
Reset(f1);
Readln(f1,N);
Close(f1);
Assign(f2,'NT.OUT');
Rewrite(f2);
IF n= 1 THEN
BEGIN writeln(f2,'2 3 5 7 ') ; write(f2,'Co 4 so sieu nguyen to co 1 chu so '); END
ELSE BEGIN
b:=(10*lt(10,n-1)-1);
FOR a:=lt(10,n-1) TO b DO
IF ngto(a) AND snt(a) THEN
BEGIN
dem:=dem+1;
write(f2,a:n+2);
END; Writeln(f2); Writeln(f2,'Co ',dem,' so sieu nguyen to co ',n,' chu so' ); END;
close(f2);
END.