программа вылетает т.к. много значений перебирает, если не хочется подобного просто смените ограничение.
var i,a,b,c,d: integer;
begin
for i: =1000 to 9999 do begin
a: =i mod 10;
b: =(i div 10) mod 10;
c: =(i div 100) mod 10;
d: =(i div 1000) mod 10;
if (a=b) and (b=c) and (c=d) then writeln ('odinakovie cifri - ',i);
if (a< > b) and (a< > c) and (a< > d) and (b< > c) and (b< > d) and (c< > d) then writeln('ne odinakovie cifri - ',i);
end;
1. всем трем областям соответствует условие "3 спортсмена посещают и драмкружок, и хор)". ставим число 3 (помечено красным).
2. в драмкружке 10 из хора. следовательно, в области пересечения "драмкружок+хор" должно находиться число 10. но часть этой области пересекается с областью, где находятся все три категории занятий, поэтому из 10 вычитаем стоящую в этой области красную тройку и получаем число 7 (помечено синим). т.е. посещают драмкружок и хор, но не занимаются спортом 7 человек.
3. в хоре 6 спортсменов. рассуждая аналогично (2) получаем синее число 3.
4. в драмкружке 8 спортсменов. получаем синее число 5.
5. 27 занимаются в драмкружке. вычитаем из этого количества число , принадлежащее общим областям 7+5+3=15 и получаем 27-15=12 человек, которые занимаются только в драмкружке.
6. аналогично получаем 11 спортсменов и 19 участников хора.
7. всего 70 учеников. вычитая количество учеников, которые чем-либо заняты, определяем, что 10 человек не заняты ничем.
8. только спортом, как видно из рисунка, занимаются 11 человек
Поделитесь своими знаниями, ответьте на вопрос:
Какие модели называют натурными? 2-3 примера натурных моделей.