Рассуждаем так. Предположим, мы хотим записать все возможные распределения. Введём обозначения: ноль - ученик, 1 - разделитель между аудиториями. Тогда варианты распределения запишутся так:
1) 0101010000000 - в 1-й, 2-й и 3-й аудиториях по 1 ученику, в 4-й аудитории 7 учеников,
2) 0101001000000 - в 1-й и 2-й аудиториях по 1 ученику, в 3-й аудитории 2 ученика, в 4-й аудитории 6 учеников,
и т.д.
Чтоб найти количество всех таких вариантов, запишем 10 нулей (учеников) в ряд:
0 0 0 0 0 0 0 0 0 0
Между ними есть 9 промежутков. Нам нужно узнать сколько есть разместить три разделителя (единички) на этих 9 промежутках. Это вычисляется по формуле:
ответ: 84
PS Если существенно не только количество учеников в аудиториях, но и порядок размещения (то есть кто конкретно в какую аудиторию пойдет), то полученный ответ надо умножить на количество вариантов размещения 10 учащихся в ряд: Р=10!= 3628800
Program JolieWErnAje; uses crt; const n=10; var a:array[1..n,1..n] of integer; i,j: integer; tp: integer; begin writeln('*** alphaues is thinking... ***'); writeln('*** OK ***'); writeln(); tp:=1; randomize; for i:=1 to n do begin for j:=1 to n do begin a[i,j]:= random(20)+1; {заполняем массив} write(a[i,j]:4); if a[i,j] mod 3 = 0 then tp:=tp*a[i,j]; end; writeln(); end; writeln(); writeln('Произведение элементов, кратных 3, равно ',tp) end.
Рассуждаем так. Предположим, мы хотим записать все возможные распределения. Введём обозначения: ноль - ученик, 1 - разделитель между аудиториями. Тогда варианты распределения запишутся так:
1) 0101010000000 - в 1-й, 2-й и 3-й аудиториях по 1 ученику, в 4-й аудитории 7 учеников,
2) 0101001000000 - в 1-й и 2-й аудиториях по 1 ученику, в 3-й аудитории 2 ученика, в 4-й аудитории 6 учеников,
и т.д.
Чтоб найти количество всех таких вариантов, запишем 10 нулей (учеников) в ряд:
0 0 0 0 0 0 0 0 0 0
Между ними есть 9 промежутков. Нам нужно узнать сколько есть разместить три разделителя (единички) на этих 9 промежутках. Это вычисляется по формуле:
ответ: 84
PS Если существенно не только количество учеников в аудиториях, но и порядок размещения (то есть кто конкретно в какую аудиторию пойдет), то полученный ответ надо умножить на количество вариантов размещения 10 учащихся в ряд: Р=10!= 3628800
Тогда ответ будет:
Program JolieWErnAje;
uses crt;
const n=10;
var
a:array[1..n,1..n] of integer;
i,j: integer;
tp: integer;
begin
writeln('*** alphaues is thinking... ***');
writeln('*** OK ***');
writeln();
tp:=1;
randomize;
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:= random(20)+1; {заполняем массив}
write(a[i,j]:4);
if a[i,j] mod 3 = 0 then tp:=tp*a[i,j];
end;
writeln();
end;
writeln();
writeln('Произведение элементов, кратных 3, равно ',tp)
end.