Implementation
На Рис.3 приведено изменение численности лосей для частот рождения 0.25 (1) и 0.3 (2)
Рис.3. Динамика числа лосей Дополнительный материал к лекции №6. (3 октября 2014 г.) Задача 1. Удалить из строки все лишние пробелы, кроме одного.
Рис. 1 Алгоритм удаления лишних пробелов Program projstring; {$APPTYPE CONSOLE} Uses SysUtils; var s:string[20]; k,i:integer; ch:char; Begin Repeat Writeln('Enter String'); Readln(s); s:=trim(s); k:=length(s); i:=1; while i<=k do Begin if s[i]=' ' then while s[i+1]=' ' do Begin delete(s,i+1,1); k:=k-1; End; i:=i+1; End; writeln('new string =',s); writeln('Continue?'); Readln(ch); until ch='n'; End. Результат работы программы со строкой:
Рис. 2 Проанализируйте результаты и объясните результат обработки первой строки.
Пример решения задачи со строками в визуальной среде. Задача 2. Получить инверсную строку. Рис. 3 Алгоритм инверсии строки Unit Unit1_revers_string; Interface Uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; Type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; Button1: TButton; Button2: TButton; Button3: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); Private { Private declarations } Public { Public declarations } End; s=string[60]; Var Form1: TForm1; s1:s; implementation
{$R *.dfm} Procedure Revers(var ss:s;n:integer); var t:char; Begin if n>length(ss) div 2 then
begin
t:=ss[n]; ss[n]:=ss[length(ss)-n+1]; ss[length(ss)-n+1]:=t;
|