Необходимо составить блок схему.
условие : в автоматизированной информационной системе содержатся анкетные данные сотрудников учреждения. в массиве y(8) содержатся года рождения сотрудников, в массиве p(8) - сведения о поле, в массиве s(8) - сведения о семейном положении. элемент массива y с номером n - год рождения сотрудника n, элемент массива p с номером n - сведения о поле сотрудника n, элемент массива s с номером n - сведения о семейном положении сотрудника n. p(n) = 0, сотрудник n женского пола p(n) = 1, сотрудник n мужского пола s(n) = 0, сотрудник n холост (не замужем) s(n) = 0, сотрудник n женат (замужем) определить: процентное соотношение
количество женщин в возрасте до 55 лет
к = х 100
общее количество женщин
код
program z1;
var y, p, s: array[1..8] of integer;
i, jt, j, t: integer;
begin
write('который сейчас год? ');
readln(t);
jt : = 0;
j : = 0;
writeln('введите сведения о сотрудниках.');
for i : = 1 to 8 do
begin
writeln('сотрудник ', i);
write('год рождения? ');
readln(y[i]);
writeln('пол (0 - женский, 1 - мужской)? ');
readln(p[i]);
writeln('семейное положение (0 - холост/не замужем, 1 - женат/замужем)? ');
readln(s[i]);
if p[i] = 0
then begin
inc(j);
if y[i] - t < 55 then inc(jt)
end
end;
if j > 0
then writeln('k = ', jt / t * 100 : 0: 2, '%')
else writeln('среди сотрудников нет женщин');
readln
end.
1. При выполнения цикла каждая из троек 8 будет заменена на одну 9. Значит у нас получится строка длиной в 334 символа, где 333 девятки и последний символ - восьмерка
2. Далее 333 девятки заменятся на 111 восьмерок плюс последняя восьмерка - всего получим 112 восьмерок
3. Из 112 восьмерок получится 37 девяток и одна восьмерка
4. И 37 девяток получим 12 восьмерок плюс одна девятка и плюс последняя восьмерка
5. 12 восьмерок дадут 4 девятки плюс последние 9 и 8
6. И наконец получаем строку 8998
ответ: 8998
Free Pascal
var
a : array of array of integer;
b : array of integer;
s, i, j, n, m : integer;
begin
writeln('Введите кол-во строк:');
readln(m);
writeln('Введите кол-во столбцов:');
readln(n);
randomize;
setlength(a, n);
setlength(b, m);
for i:=0 to n-1 do
setlength(a[i], m);
for j:=0 to m-1 do begin
s:=0;
for i:=0 to n-1 do begin
a[i,j] := random(50) - 25;
if a[i,j] <0 then inc(s);
write(a[i, j], ' ');
end;
b[j]:=s;
writeln();
end;
writeln('--------------------------');
for j:=0 to m-1 do
writeln(j+1,' строка = ', b[j]);
end.