Некорректная задача. Блок схема нужна только тогда, когда есть условия, циклы и т. п. Здесь f вычисляется в одну строчку:
var f: real; var x: real;
x := 8; { 16, 24 }
f := 4*x*x*x + 2*x - 1;
Далее идет исправленное решение задачи для Бочонка228 (в его задаче просто не могу изменить решение):
type pupil = record name: string[20]; sex: (female, male); age: integer; height: 140..200 end;
begin
var i, a: integer;
var group: array [1..10] of pupil;
for i:= 1 to 10 do begin writeln(i); writeln('Name:'); readln(group[i].name); writeln('Sex (1-male, 2-female):'); readln(a);
if a = 1 then begin group[i].sex := pupil.male; end else begin group[i].sex := pupil.female; end;
group[i].age := 0; while (group[i].age < 6) or (group[i].age > 100) do begin writeln('Age (6-100):'); readln(group[i].age); end;
group[i].height := 0; while (group[i].height < 140) or (group[i].height > 200) do begin writeln('Height (140-200):'); readln(group[i].height); end; end;
for i := 1 to 10 do begin if (group[i].age <= 30) and (group[i].sex = pupil.female) then begin writeln(group[i].name); writeln(group[i].age); writeln(group[i].height); end end
begin var a: array[1..N] of real; var i: integer; var growing: boolean;
for i := 1 to N do begin readln(a[i]); end;
growing := true;
for i := 2 to N do begin if a[i] <= a[i - 1] then begin growing := false; break; end; end;
writeln(growing); end.
const m = 5; const n = 4; const limit = 100;
begin var matrix: array[1..m] of array[1..n] of real; var matrixb: array[1..m - 1] of array[1..n - 1] of real; var row, col, rb, cb, lowest_row, lowest_col: integer; var lowest: real; var p: boolean;
lowest := limit;
for row := 1 to m do begin for col := 1 to n do begin matrix[row][col] := random(limit - 1); if matrix[row][col] < lowest then begin lowest := matrix[row][col]; lowest_col := col; lowest_row := row; end; write(matrix[row][col], ' '); end; writeln(''); end;
writeln(''); writeln(lowest); writeln('');
rb := 1;
for row := 1 to m do begin p := false; cb := 1; for col := 1 to n do begin if (not (col = lowest_col)) and (not (row = lowest_row)) then begin p := true; matrixb[rb][cb] := matrix[row][col]; cb := cb + 1; end; end; if p then begin rb := rb + 1; end; end;
for rb := 1 to m - 1 do begin for cb := 1 to n - 1 do begin write(matrixb[rb][cb], ' '); end; writeln(''); end;
Здесь f вычисляется в одну строчку:
var f: real;
var x: real;
x := 8; { 16, 24 }
f := 4*x*x*x + 2*x - 1;
Далее идет исправленное решение задачи для Бочонка228 (в его задаче просто не могу изменить решение):
type pupil = record
name: string[20];
sex: (female, male);
age: integer;
height: 140..200
end;
begin
var i, a: integer;
var group: array [1..10] of pupil;
for i:= 1 to 10 do begin
writeln(i);
writeln('Name:'); readln(group[i].name);
writeln('Sex (1-male, 2-female):'); readln(a);
if a = 1 then begin
group[i].sex := pupil.male;
end
else begin
group[i].sex := pupil.female;
end;
group[i].age := 0;
while (group[i].age < 6) or (group[i].age > 100) do begin
writeln('Age (6-100):'); readln(group[i].age);
end;
group[i].height := 0;
while (group[i].height < 140) or (group[i].height > 200) do begin
writeln('Height (140-200):'); readln(group[i].height);
end;
end;
for i := 1 to 10 do begin
if (group[i].age <= 30) and (group[i].sex = pupil.female) then begin
writeln(group[i].name);
writeln(group[i].age);
writeln(group[i].height);
end
end
end.