<<PASCAL>> problem, banalny, ale no ale już nie mam pomysłu jak to zrobić więc mam napszykład wpisujemy Ala ma<enter> i chodzi o to żeby do pierwszego stringu zapisać "Ala";, a do drugiego "ma" niby wszystko ładnie ale mam taki kod
read(zn); a:=1; while zn<>' ' do begin s1[a]:=zn; a:=a+1; read(zn); end; readln(s2);
na pierwszym stringu nie działa funkcja length, i właśnie w tym jest proble, że nieche mi się przepisywać na C++ (to tylko fragment kodu) więc, zadanko jest proste wpisujemy Ala ma i powiny być takie wyniki s1 (* pierwszy string*) = "Ala" s2 (* drugi string*) = "ma" length(s1) = 3 length(s2) = 2
uses
crt;
var
s,s1,s2:string;
zn,poz,dlugosc,dlug1,dlug2:integer;
begin
clrscr;
write('Podaj tekst: '); {ala ma}
readln(s);
dlugosc:=Length(s);
poz:=pos(' ',s);
s1:=s; s2:=s;
delete(s1,poz,(dlugosc-poz)+1);
delete(s2,1,poz);
dlug1:=Length(s1);
dlug2:=Length(s2);
writeln('s1 = ',s1);
writeln('========================================');
writeln('s2 = ',s2);
writeln('========================================');
writeln('dlugosc s1 = ',dlug1);
writeln('========================================');
writeln('dlugosc s2 = ',dlug2);
readln;
end.
Program działa na wszystkich stringach z 1 spacją