Wystarczyło pogooglowac, wiadomo że w niektórych językach jak php do rozbicia stringa na osobne elementy
po podaniu separatora służy funkcja Explode. Można jej wersję dla Delphi znaleźć na jednym forum polskim,
z taką przeszkadzającą reklamą. Ja kiedyś znalazłem, w oryginale rozbija ona tekst na elementy dodawane
do StringGrid. Wystarczy zmienić tę funkcję tak aby dodawała do tablicy stringów. Masz poniżej gotowca,
bo źle zabrałeś się za temat według mnie. A i tak już inna osoba chciała na tym forum podać kod do tego
zadania w zamian "za wiersz na swoją cześć" czyli za friko. Także zarobić się nie da. A i tak pozostałe do
rozwiązania zadanie z rysowaniem "figur" w postaci znaków "-<:>-" i w oddzielaniem "|", a przy nim to
trzeba się więcej napracować może, bo trzeba trochę pomyślęć. To akurat zadanie (nie jest to chyba na
maturę tylko na zaliczenia, bo teraz jest na nie "sezon") jest banalne i wystarczy tylko chwilę pomyśleć.
program uszek_zad2;
{$APPTYPE CONSOLE}
const
MaxSlow = 10;
Separator = ' ';
var
Str, Tekst : string;
Tab : array[1..MaxSlow] of string;
procedure UstawWartosciTablicy;
var
I : integer;
X : Integer;
begin
{usuwanie zbędnych spacji z poczatku jezeli sa}
I := 1;
while Tekst[I] = Separator do
begin
Delete(Tekst, I, 1);
end;
{usuwanie zbędnych spacji z konca jeżeli sa}
I := Length(Tekst);
while Tekst[I] = Separator do
begin
I := I - 1;
Delete(Tekst, I + 1, Length(Tekst));
end;
{rozdziela wpisany tekst na kolejne elementy tablicy}
I := Low(Tab);
Str := Tekst;
X := Pos(Separator, Str);
while X > 0 do
begin
Tab[I] := Copy(Str, 1, X - 1);
if X <= Length(Str) then
begin
Str := Copy(Str, X + Length(Separator), Length(Str));
end;
X := Pos(Separator, Str);
I := I + 1;
end;
if (Length(Str) > 0) then
begin
Tab[I] := Str;
end;
end;
procedure WypiszZawartoscTablicy;
var
S, Rezultat : string;
I, J, K, Dlugosc : integer;
begin
Str := '';
for I := Low(Tab) to High(Tab) do
begin
if Tab[I] <> '' then
begin
S := Tab[I];
Rezultat := '';
Dlugosc := Length(S);
J := 1;
repeat
for K := 1 to Dlugosc do
begin
Rezultat := Rezultat + S[J];
end;
J := J + 1;
Dlugosc := Dlugosc - 1;
until J > Length(S);
Str := Str + Rezultat + ' ';
end;
end;
Writeln(Str);
end;
begin
repeat
Write('Wpisz wyrazy oddzielone spacjami: ');
Readln(Tekst);
until Tekst <> '';
UstawWartosciTablicy;
WypiszZawartoscTablicy;
Readln;
end.