## Računanje faktorijela

5!;

10!;

100!;

set_display('ascii)$

100!;

set_display('xml)$

## Binomni koeficijenti

binomial(6,4);

binomial(n,0);

binomial(n,1);

binomial(n,n);

binomial(100,98);

binomial(234,126);

## Binomni poučak

expand((a+b)^11);

expand((a+b)^100);

1. primjer

expand((x^(1/3)+x^2)^4);

2. primjer

expand((x^(1/3)-x^2)^4);

3. primjer

expand((x^(3/2)*y+y^(-1))^5);

## Matematička indukcija (računanje suma)

### prva suma

Maxima bez problema računa sume s konkretnom donjom i gornjom granicom brojača

sum(2*i*(3*i-1),i,1,23);

sum(2*i*(3*i-1),i,1,321);

sum(2*i*(3*i-1),i,150,321);

Maxima ne izračuna automatski simboličke sume

sum(2*i*(3*i-1),i,1,n);

Uz dodatne naredbe ju možemo natjerati da izračuna neke simboličke sume

sum(2*i*(3*i-1),i,1,n),simpsum;

factor(%);

### Numeričko računanje sume

sum(sin(i),i,1,20);

U ovakvim situacijama uvijek je pametnije numerički odrediti sumu kako bismo spriječili eventualno rušenje grafičkog sučelja zbog prevelikog broja simboličkih članova u sumi. Na primjer, da je suma išla od i=1 do i=10000, maxima ne bi ništa napravila osim ispisala ogromni izraz koji bi mogao srušiti grafičko sučelje. Kod numeričkog računa to se neće dogoditi.

sum(sin(i),i,1,20),numer;

sum(sin(i),i,1,10000),numer;

### druga suma

suma2:sum((-1)^i*(2*i-1),i,1,n);

sum((-1)^i*(2*i-1),i,1,37);

sum((-1)^i*(2*i-1),i,1,120);

Ovaj put Maxima ne može izračunati simboličku sumu

suma2,simpsum;

Međutim, možemo nepotpunom indukcijom zaključiti da je ta suma jednaka

(-1)^n*n;

makelist(sum((-1)^i*(2*i-1),i,1,n),n,1,200);

Ili pak možemo učitati dodatni paket koji omogućuje računanje kompliciranijih suma

load (zeilberger)$

GosperSum((-1)^i*(2*i-1),i,1,n);

ratsimp(%);

### treća suma

suma3:sum(2*i^2/((2*i-1)*(2*i+1)),i,1,n);

sum(2*i^2/((2*i-1)*(2*i+1)),i,1,98);

sum(2*i^2/((2*i-1)*(2*i+1)),i,5,98);

sum(2*i^2/((2*i-1)*(2*i+1)),i,1,n),simpsum;

GosperSum će ponovo uspjeti izračunati ovu sumu

GosperSum(2*i^2/((2*i-1)*(2*i+1)),i,1,n);

ratsimp(%);

factor(%);