IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Комбинаторика
Славик
сообщение 16.02.2006 20:46
Сообщение #1


Гость






Есть два числа n, m. Нужно посчитать количество сум которые удоволетворяют условиям:
1) количество слагаемых не больше m
2) каждое из слагаемых не больше n, причем ноль считается за слагаемое, и слагаемые могут повторяться
3) например суммы 1+3+5 и 1+5+3 считаются идентичными
Я написал программу, но не уверен в том что она рабатает верно

Код

var
f,f1:text;
n,m:integer;
sum:integer;
procedure ff(j,lev:integer);
var
i:integer;
begin
if lev<=m then
begin
for i:=j to n do
begin
  inc(sum);
  ff(i,lev+1);
end;
end;
end;
begin
assign(f,'sums.in');
assign(f1,'sums.out');
reset(f);
rewrite(f1);
readln(f,n,m);
sum:=0;
ff(0,1);
writeln(f1,sum);
close(f);
close(f1);
end.


Может ли кто-нибудь проверит эту прогу?
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.06.2025 14:27
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"