function suma(n:byte):longint;
var
i,j:byte;
a,b:longint;
begin
a:=0;
for i:=1 to n do
begin
b:=0;
for j:=1 to i do b:=b*10+1;
a:=a+b
end;
suma:=a
end;
var n:byte;
begin
write('podaj liczbe cyfr : ');
readln(n);
writeln('suma : ',suma(n))
end.
Przepraszam, że nie spełniłem Twej prośby, ale nie mogłem się
powstrzymać i napisałem. Wierz mi starłem się, ale nie mogłem
wytrzymać. [wstyd]
[diabel]
// do anonima: zmieniłem w drugiej petli n na i
// i działa poprawnie, dzięki, troszku się ropędziłem.
// ewentualnie możesz napisać cos takiego:
var n:byte;
begin
readln(n);
writeln('suma : ' ,copy('123456789',1,n))
end.
W końcu chodzi tylko o wynik. :P Aha, działa dla 1<=n<=9. :p
Wodzu chodziło mi o to, aby nie robić pracy magisterskiej z byle dwóch pętelek na krzyż. Żeby było jak najmniej zmiennych i jak najprostszy, czołgowy algorytm. Na tym polega piękno programowania, a nie na pięciu stronach kodu.
Grzesiu: gratuluję, to, co wiekszość zrobiłaby w dwóch, Ty zrobiłeś w jednej pętli.