Hiển thị các bài đăng có nhãn Lập trình cơ bản. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Lập trình cơ bản. Hiển thị tất cả bài đăng

Thứ Sáu, 28 tháng 1, 2011

Định nghĩa background cho một thẻ trong CSS

Thuộc tính background trong CSS, nó sẽ cho phép chúng ta tùy biến màu nền của một thẻ HTML đặt một ảnh làm nền (background), làm cho một ảnh có thể lặp đi lặp lại (repeat) theo chiều ngang hoặc theo chiều dọc, chúng ta cũng có thể định vị một ảnh ở một vị trí nào đó trên trang.

Thuộc tính background bao gồm:

background-color:#ffffff; /*màu nền*/
background-image:url(css_series.jpg); /*ảnh nền*/
background-repeat:repeat-x; /*Lặp lại*/
background-position: center bottom; /*Vị trí*/

Hoặc ta có thể khai báo gộp lại như sau

background: #ffffff url(css_series.jpg) repeat-x center bottom;

Trong đó:

+ Màu nền bạn có thể khai báo bằng mã màu hoặc tên màu ví dụ như #ffffff hoặc white đều được định nghĩa cho màu trắng

+ Ảnh nền bạn phải chỉ ra đường dẫn đến ảnh đó.

+ Lặp lại bạn có thể cho lặp lại theo hàng ngang (repeat-x), hàng dọc (repeat-y), không lặp lại (no repeat).

Theo laptrinhvn

Thuật toán tính hàm mũ

Trong Pascal ta có thể tính a^b bằng công thức exp(b*ln(a)). Tuy nhiên nếu a không phải là số dương thì không thể áp dụng được.

Ta có thể viết hàm mũ an như sau:

function hammu(a : real; n : integer): real;
var s : real;
i : integer;
begin
s := 1;
for i := 1 to n do s := s * a;
hammu := s;
end;
Theo lập trình vn

Thuật toán nhập và in mảng 2 chiều dạng ma trận

Chương trình thực hiện nhập và in mảng 2 chiều dạng ma trận (m dòng, n cột)

1. Nhập

Để nhập các phần tử của mảng 2 chiều dạng ma trận, ta cần dùng các lệnh sau của unit CRT (nhớ phải có khai báo user crt ở đầu chương trình).

GotoXY(a,b): di chuyển con trỏ màn hình đến vị trí (a,b) trên màn hình (cột a, dòng b). Màn hình có 80 cột và 25 dòng.
whereX: hàm cho giá trị là vị trí cột của con trỏ màn hình.

whereY: hàm cho giá trị là vị trí dòng của con trỏ màn hình.

Khi nhập 1 phần tử ta dùng lệnh readln nên con trỏ màn hình sẽ xuống dòng, do đó cần quay lại dòng của bằng lệnh GotoXY(j * 10, whereY -1 ), nếu ta muốn mỗi phần tử của ma trận ứng với 10 cột màn hình.

procedure nhap;
var i,j : integer;
begin
clrscr;
write('Nhap m,n = ');
readln(m,n);
for i := 1 to m do begin
for j := 1 to n do begin
write('A[',i,',',j,']=');
readln(a[i,j]);
gotoXY(j*10,whereY-1);
end;
writeln;
end;
end;

2. In

Để in bảng dạng ma trận, với mỗi dòng ta sẽ in các phần tử trên 1 hàng rồi xuống dòng:

procedure inbang;
var i,j : integer;
begin
for i := 1 to m do begin
for j := 1 to n do
write(a[i,j]:6);
writeln;
end;
end;
Theo lập trình vn

Thuật toán tô màu LDO

Thuật toán LDO (Largest Degree Ordering): do De Werra đề xuất năm 1990 [13]. Tương tự như SDO, LDO là một cải tiến của FF, trong đó các đỉnh được tô mầu theo thứ tự bậc của đỉnh từ lớn tới bé.

Chương trình:

#include
#include
#include
int *doc_tep(int *a,int *n);
void in_matran(int *a,int n);
void in(int *b,int n);
int dem(int *b,int n);
int max(int *b,int n);
void up_date(int *a,int *SD,int *ToMau,int n);
int ktra_mau(int *a,int *b,int *c,int n,int d,int x);
void ToMau_SDO(int *a,int n);
int main()
{
int n,*a;
a=doc_tep(a,&n);
in_matran(a,n);
ToMau_SDO(a,n);
getch();
return 0;
}
int *doc_tep(int *a,int *n)
{
FILE *f;
f=fopen("Graph2.INP","r");
if(f==NULL)
{
printf("nLoi Mo Tep.");
getch();
exit(1);
}
fscanf(f,"%d",n);
a=(int *) malloc(*n**n*sizeof(int));
for(int i=0;i<*n;i++)
for(int j=0;j<*n;j++)
fscanf(f,"%d",(a+i**n+j));
fclose(f);
return a;
}
void in_matran(int *a,int n)
{
for(int i=0;i
{
for(int j=0;j
printf("%5d",*(a+i*n+j));
printf("nn");
}
}
void in(int *b,int n)
{
printf("n");
for(int i=0;i
printf("%5d",*(b+i));
}
int dem(int *b,int n)
{
int tg=0,j;
for(int i=0;i
{
if(*(b+i)==-1)
continue;
for(j=0;j
if(*(b+j)==*(b+i))
break;
if(j==i)
tg++;
}
return tg;
}
int max(int *b,int *c,int n)
{
int tg=*b,j=0;
for(int i=j+1;i
if(*(b+i)>tg && *(c+i)==0)
{
tg=*(b+i);
j=i;
}
return j;
}
void up_date(int *a,int *SD,int *ToMau,int n,int x)
{
int *ke,j=0;
ke=(int *) calloc (n,sizeof(int));
for(int i=0;i
*(ke+i)=-1;
for(int i=0;i
if(*(a+x*n+i)!=0 && *(ToMau+i)!=-1)
{
*(ke+j)=*(ToMau+i);
j++;
}
*(SD+x)=dem(ke,n);
}
int ktra_mau(int *a,int *b,int *c,int n,int d,int x)
{
for(int j=0;j
if((*(a+d*n+j)!=0 && j!=d) && *(c+j)==1 && *(b+j)==x)
return 0;
return 1;
}
void ToMau_SDO(int *a,int n)
{
int *ToMau,*SD,*b;
ToMau=(int *) calloc (n,sizeof(int));
b=(int *) calloc (n,sizeof(int));
SD=(int *) calloc (n,sizeof(int));
*ToMau=0; //To mau 0 cho dinh 1.
*b=1; //Danh dau dinh 1 da to mau.
for(int i=1;i
*(ToMau+i)=-1;
int tg;
for(int i=1;i<=n;i++)
{
for(int k=0;k
if(*(ToMau+k)==-1)
up_date(a,SD,ToMau,n,k);
tg=max(SD,b,n);
for(int j=0;j
if(ktra_mau(a,ToMau,b,n,tg,j)==1)
{
*(ToMau+tg)=j;
*(b+tg)=1;
break;
}
}
printf("nTo Mau Cho Do Thi: n");
for(int i=0;i
printf("ntDinh %d ---> Mau %d",i+1,*(ToMau+i));
}
Theo lập trình vn