Все возможные варианты это, как я понимаю, с учетом повторений(т.е. используем все 7 красных и 8 белых роз).
Для начала вспоним формулу, а потом на ее основе пишем программу:
Где n - количество всех цветов, n=15;
k - количество цветов в букете, k=5
Теперь собственно программа:
uses crt; {подключение модуля CRT}
var f1,f2,f3,i:longint; c:real; {описание переменных}
begin
f1:=1; f2:=1; f3:=1; {присваивание значений}
for i:=2 to 15 do {цикл}
f1:=f1*i;
for i:=2 to 8 do {цикл}
f2:=f2*i;
for i:=2 to 5 do {цикл}
f3:=f3*i;
c:=1307674368000/(f2*f3); {вычисление и присваивание значения}
write(c); {вывод текста на экран}
end.
p.s. получается 270270, поэтому перечислять все варианты не вижу смысла.
И программа не вычисляет факториал 15, поэтому ввела значение вручную, но тем не менее формулу в программу включила, вдруг понадобится.