program string2char (input,output); uses wincrt; var a:string; b:char; function do_char (a:string):char; Begin if (length(a) = 1) then do_char:=a{1}; end; Begin Writeln ('enter string'); Readln (a); b:= do_char(a); Writeln (b); end.
הכוונה היא לפונקציה שאמורה להחזיר ערך אבל לא עושה את זה לכל המקרים. אני לא בקיא בתקן, אבל אני די משוכנע שזה אסור ויכול לגרום לתוכנה "לעוף", אם לא לדברים חמורים יותר.