Цитата(Krjuger @ 5.06.2012 16:55)
О множествах я не подумал вообще))))Да ваш вариант наиболее оптимальный, по крайне мере еще лучше я придумать не могу.
а если самой вводить каждый раз числа разные,то это как выглядеть будет.так?или как?
[code]
program str155n10;
{$APPTYPE CONSOLE}
uses
SysUtils,
windows;
const n = 4;
var
a : array[1 .. n] of integer;
i, x : Integer;
s : set of byte;
b : boolean;
Procedure Vvod(var a:integer);
// i:integer;
begin
for i:=1 to n do
read(a[i])
end;
Function Print_mas (var a:integer):integer;
for i:=1 to n do
begin
write(a[i]);
end;
begin
Vvod(a);
Print_mas(a);
s := [];
for i := 1 to n do
begin
X := a[i];
b := true; // Èíîãäà íîëü âñå-òàêè ïðèçíàþò íàòóðàëüíûì ÷èñëîì, ïîòîìó áóäåì è íà íåãî ðàññ÷èòûâàòü.
while b or (X <> 0) do
begin
s := s + [x mod 10];
b := false;
x := x div 10;
end;
end;
for i := 0 to 9 do // Âûâîä ìîæåøü èçìåíèòü, åñëè ïðèëîæåíèå íå êîíñîëüíîå.
if i in s then write(i:2);
writeln;
readln;
end./code]