Huflit - TH0804 class |
đã có lịch học HK2 , các bạn vào lịch thông báo trong box bản tin lớp để xem ^o^ |
| | hướng giai bài tập CSLT | |
|
+6Hiru IT_moi Sat-Mafia bupbego jick TranTheQuan 10 posters | |
Tác giả | Thông điệp |
---|
TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: hướng giai bài tập CSLT 6/1/2009, 20:37 | |
| theo yêu cầu của một số bạn tớ sẽ bơ lên đây hướng giải một số bài của môn CSLT.còn mã của chường trình thì pm nick tớ nha :tranthequan1212002 Đầu tiên là bài 12 trang 108: để tính a mũ b thì ta dùng hàm pow(a,b) rồi gán giá trị này cho một biến c nào đó. để sử dụng hàm pow tải phải ghi thêm dòng lệnh #include "math.h" bài 13 trang 108: để tính số lớn nhất trong 3 số thì ta dùng một biến phụ max=-35000.rồi sau đó ta so sánh biến này voiws các biến mà ta nhập vào.nếu biến nào lớn hơn max thì ta gán max= biến đó(ví dụ a>max thì max=a) bài 14 trang 108 và bài 15 thì cứ theo cách giải thông thường là dc thui bài 16 trang 108:giải phương trình trùng phương thì lấy mấy cái hệ số đó giải phương trình bậc hai.rồi coi nghiệm nào lớn hơn không thì ta lấy căn bậc hai của nó.thế thôi. | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 6/1/2009, 22:25 | |
| tiếp tục bài 17 trang 108: ta tạo ra khai báo một biến S(tổng các số và lấy giá trị khởi đầu bằng không).sau khi nhap so đó vào máy ta dùng vòng lặp for đê cho số i chạy từ 1 đến n rồi dùng if để kiểm tra xem có thoả một trong hai điều kiện kia không.nếu thở một trong hai điều kiệm thì là cộng them vào biến tổng cứ tiếp tục tới n.cùng chia hết cho 3 và 5 la chia hết cho 15.còn cái dk thứ hai là :if ((i%3=2)&&(i%5=3) bài 18 trang 108: bài nì thì đơn giản là dùng vòng lặp rồi cộng dần dần, mỗi lần cộng thì xuất ra một lần bài 19 trang 108: bài nì thì xài định thức ai nhớ chỉ tớ voiiiiiiiiiiiiiiiiiiii tớ quên mất oy` | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 6/1/2009, 22:39 | |
| bài 21 trang 109: bài này đầu tiên ta cho người ta nhập vào năm trước.sau đo kiểm tra năm đó có phải nhuần hay ko lưu vào một biến bất kì để lưu lại(ví dụ nn=1 là năm nhuần còn =0 là ko).sau đó tới phiên nhập tháng ta sử dụng còng lặp vô thời hạn như bữa trước thầy đại chỉ .nếu người dùng nhập vào sai thì bắt họ nhập lại cho tới khi nào nhập đúng.rồi tới phiên ngày.ta chia làm 3 trường hợp. -trường hợp 1 là níu tháng nhập vào là tháng co 31 ngày thì ta kiểm tra người nhập có trên 31 ngày ko.dùng vòng lặp vô hạn như trên để cho họ nhập tới khi đúng.tương tự với tháng có 30 ngày -trường hợp dính vào tháng hai thì: nếu năm nhuần tháng 2 có 29 ngày người dùng ko nhập quá số 29 còn ko phải thì chỉ 28 thôi.cũng dùng lặp vô hạn để bắt họ nhập tới đúng hơi lằng nhằn nên pm tớ để lấy code
Bài 22 trang 109:bài nì thầy đại dạy oy` quân ko nhắc lại nữa
Bài 23 trang 109:bài này thì lấy một phần đoạn mã trên là kiểm tra số đó có phải là nguyên tố hay không.cho một biến nào đó chạy từ hai tói n kiểm tra biến đó có phải số nguyên tố hay không nếu co thì xuất ra.Xong !
Được sửa bởi TranTheQuan ngày 8/1/2009, 19:06; sửa lần 1. | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 6/1/2009, 22:42 | |
| bài 24 trang 109: bài nì hiện jo tớ mới nghĩ ra một cách duy nhất là cho một biến i chạy từ 1 đến n rồi kiểm tra từng số một.tuy hơi chậm nhưng vẫn chạy .khi nào có cách hay hơn tớ sẽ sửa.
bài 25 trang 109: cái này thì ta dùng vòng lặp for để chạy.cho biến i chạy từ 1 đến n/2. mỗi lần xong một vòng for thì cộng cho biến i 2 đơn vị( để chỉ là số lẻ).dùng biến tạm max để lưu cái ước lẻ lớn nhất đó.mỗi lần chạy vòng lặp for mà tìm ra dc một ước lẻ nào thì ta lại lấy ra so sánh với max nếu max bé hơn thì gán max bằng biến mới tìm thây.chạy cho tới khi i=n/2
bài 26 trang 109: bài này thầy đại cũng đã chỉ cho ta cách làm rồi
Được sửa bởi TranTheQuan ngày 8/1/2009, 19:09; sửa lần 1. | |
| | | jick Quản lý viên
Tổng số bài gửi : 44 Age : 33 Đến từ : Jick7 Sở thích : Sports-online Tên thật : Phạm Thanh Tùng Thanh tích cực : Registration date : 31/12/2008
| | | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 7/1/2009, 21:33 | |
| hum ni mới bà con chúng ta thảo luận cách giải bài "Tháp Hà Nội" nhá bài nì hay lém: đề bài là Người chơi được cho ba cái cọc và một số đĩa có kích thước khác nhau có thể cho vào các cọc này. Ban đầu sắp xếp các đĩa theo trật tự kích thước vào một cọc sao cho đĩa nhỏ nhất nằm trên cùng, tức là tạo ra một dạng hình nón. Người chơi phải di chuyển toàn bộ số đĩa sang một cọc khác, tuân theo các quy tắc sau:
* một lần chỉ được di chuyển một đĩa * một đĩa chỉ có thể được đặt lên một đĩa lớn hơn (không nhất thiết hai đĩa này phải có kích thước liền kề, tức là đĩa nhỏ nhất có thể nằm trên đĩa lớn nhất) bài này chúng ta sử dụng thuật toán đệ quy quay lui và tư tưởng bài toán này là như sau:
* đặt tên các cọc là A, B, C -- những tên này có thể chuyển ở các bước khác nhau * gọi n là tổng số đĩa * đánh số đĩa từ 1 (nhỏ nhất, trên cùng) đến n (lớn nhất, dưới cùng)
Để chuyển n đĩa từ cọc A sang cọc B thì cần:
1. chuyển n-1 đĩa từ A sang C. Chỉ còn lại đĩa #n trên cọc A 2. chuyển đĩa #n từ A sang B 3. chuyển n-1 đĩa từ C sang B cho chúng nằm trên đĩa #n
còn đây là code của bài bà con cố gắng nha: #include <stdio.h> #include <conio.h>
void hanoi(int, char, char, char);
void main() { int n; char c; do { printf("\n\nNhap so dia: "); scanf("%d", &n); printf("Cac buoc chuyen dia:"); hanoi(n, 'A', 'C', 'B'); printf("\n\nTiep tuc khong? (c/k): "); c = getche(); } while(c == 'C' || c == 'c'); }
void hanoi(int n, char cotA, char cotC, char cotB) { if(n == 1) { printf("\n%s%c%s%c", " chuyen dia 1 tu cot ", cotA, " den cot ", cotC); return; } hanoi(n-1, cotA, cotB, cotC); printf("\n%s%d%s%c%s%c", " chuyen dia ", n, " tu cot ", cotA, " den cot ", cotC); hanoi(n-1, cotB, cotC, cotA); } | |
| | | bupbego Lính mới
Tổng số bài gửi : 5 Age : 33 Tên thật : matrioska Thanh tích cực : Registration date : 29/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 11/1/2009, 15:07 | |
| | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 11/1/2009, 15:35 | |
| chài oy.ko hỉu ji thì pm trực tiếp nick yahoo.níu tớ online thì sẽ nói cặn kẽ hơn.đó nói từ trên gòi | |
| | | Sat-Mafia Thành viên tích cực
Tổng số bài gửi : 84 Age : 33 Đến từ : Mafia World Sở thích : Vo so_dem ko xue Tên thật : Kim Sat Thanh tích cực : Registration date : 07/02/2009
| Tiêu đề: hiiiiiiiiiiiiiiiiiiiii 7/2/2009, 15:34 | |
| | |
| | | IT_moi Lính mới
Tổng số bài gửi : 1 Age : 33 Tên thật : thien_khiem Thanh tích cực : Registration date : 13/02/2009
| Tiêu đề: Re: hướng giai bài tập CSLT 13/2/2009, 13:24 | |
| co ai hieu ve con tro ko ?chi giup moi nguoi di (nho cho vidu minh hoa nha) bai 4,bai 6c trang 114 co ai lam duoc chua vay post len gium em nha | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 23/2/2009, 19:21 | |
| #include "stdio.h" #include "conio.h" void nhap(int a[],int &n) { int i; printf(" nhap vao so phan tu cua mang "); scanf("%d",&n); for(i=1;i<=n;i++) { printf(" nhap vao phan tu thu %d: ",i); scanf("%d",&a[i]); } } void xuat(int a[],int n) { int i; printf(" mang da cho la :\n"); for(i=1;i<=n;i++) { printf("%d ",a[i]); } printf("\n"); } void chen(int a[],int &n,int x,int k) { int i; for(i=n;i>=k;i--) a[i+1]=a[i]; a[k]=x; n++; } void xuli(int a[],int &n,int b[],int m,int c[],int p) { int i,j,t; for(i=1;i<m;i++) for(j=i+1;j<=m;j++) if(b[i]>b[j]) { t=b[i]; b[i]=b[j]; b[j]=t; } for(i=1;i<=m;i++) a[i]=b[i]; n=m; for(i=1;i<=p;i++) for(j=n;i>=1;j--) if(c[i]>a[j]) { chen(a,n,c[i],j+1); break; } xuat(a,n); } void main() { int a[30],n; int b[30],m; int c[30],p; nhap(b,m); nhap(c,p); xuli(a,n,b,m,c,p); getch(); } bài 7 | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 23/2/2009, 19:39 | |
| #include "stdio.h" #include "conio.h" void nhap(int a[],int &n) { int i; printf(" nhap vao so phan tu cua mang "); scanf("%d",&n); for(i=1;i<=n;i++) { printf(" nhap vao phan tu thu %d :",i); scanf("%d",&a[i]); } } void xuat(int a[],int n) { int i; printf(" mang do la \n"); for(i=1;i<=n;i++) { printf("%d ",a[i]); } printf("\n"); } void sxcl(int a[],int n); { int i,j,t; int b[]; for(i=1;i<n;i++) b[i]=a[i]; for(i=1;i<n;i+=2) for(j=i+2;j<=n;j+=2) if(b[i]>b[j]) { t=b[i]; b[i]=b[j]; b[j]=t; } for(i=2;i<n;i+=2) for(j=i+2;j<=n;j+=2) if (b[i]<b[j]) { t=a[i]; b[i]=b[j]; b[j]=t; } xuat(b,n); } void sxnt(int a[],int n) { int i,j,t,m,p; int b[30]; int c[30]; int d[30] m=0;p=0; for(i=1;i<=n;i++) if (a[i]>=0) { m++; b[m]=a[i]; } else { p++; c[p]=a[i]; } for(i=1;i<m;i++) for(j=i+1;j<=m;j++) if(b[i]<b[j]) { t=b[i]; b[i]=b[j]; b[j]=t; } for(i=1;i<p;i++) for(j=i+1;j<=p;j++) if(c[i]<c[j]) { t=c[i]; c[i]=c[j]; c[j]=t; } for(i=1;i<=m;i++) d[i]=b[i]; for(i=1;i<=p;i++) d[i+m]=c[i]; xuat(d,n); } bài 6 còn câu c y chang nên bà con làm nha | |
| | | jick Quản lý viên
Tổng số bài gửi : 44 Age : 33 Đến từ : Jick7 Sở thích : Sports-online Tên thật : Phạm Thanh Tùng Thanh tích cực : Registration date : 31/12/2008
| Tiêu đề: bai 8 ma tran 24/2/2009, 21:13 | |
| #include "stdio.h" #include "conio.h" void NhapMang(int A[10][30],int &n,int &m) { int i,j,t; printf("Nhap vao so dong : ");scanf("%d",&n); printf("Nhap vao so cot : ");scanf("%d",&m); for(i=1;i<=n;i++) for(j=1;j<=m;j++) { printf("Nhap vao phan tu thu A[%d][%d] : ",i,j); scanf("%d",&t); A[i][j]=t; } } void XuatMang(int A[10][30],int n,int m) { int i,j; printf("Matrix : \n"); for(i=1;i<=n;i++) { for(j=1;j<=m;j++) printf("%4d ",A[i][j]); printf("\n"); } } void Min(int A[10][30],int &n,int &m) { int i,j,min,a,b; min=A[1][1]; a=1;b=1; for(i=1;i<=n;i++) for(j=1;j<=m;j++) { if(min>A[i][j]) { min=A[i][j]; a=i; b=j; } } printf("%2d",min); printf("\nVi tri : %d %d ",a,b); } void Max(int A[10][30],int &n,int &m) { int i,j,max,v,t; max=A[1][1]; v=1;t=1; for(i=1;i<=n;i++) for(j=1;j<=m;j++) { if(max<A[i][j]) { max=A[i][j]; v=i; t=j; } } printf("%2d",max); printf("\nVi tri : %d %d",v,t); } long Tong1(int A[10][30],int &n,int &m) { int i,j,d; int t=0,s; for(i=1;i<=n;i++) { s=0; for(j=1;j<=m;j++) { s = s + A[i][j]; } if(t<s) { t=s; d=i; } } printf("\nVi tri dong co tong lon nhat: %d",d); return t; } long Tong2(int A[10][30],int &n,int &m) { int i,j,d; int s,t=99999999; for(j=1;j<=m;j++) { s=0; for(i=1;i<=n;i++) { s = s + A[i][j]; } if(t>s) { t=s; d=j; } } printf("\nVi tri cot co tong nho nhat : %d",d); return t; } void Cheo1(int A[10][30],int &n,int &m,int k) { int i,j; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) if(i==j) if(((i+k)<=n)&&((j-k+1)>=1)) { printf(" %d ",A[i+k][j-k+1]); } } } void Cheo2(int A[10][30],int &n,int &m,int k) { int i,j; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) if(i==j) if(((j+k)<=m)&&((i-k+1)>=1)) { printf(" %d ",A[i-k+1][j+k]); } } } void main() { int A[10][30],n,m,k; NhapMang(A,n,m); XuatMang(A,n,m); printf("\nPhan tu nho nhat trong matrix : "); Min(A,n,m); printf("\nPhan tu lon nhat trong matrix : "); Max(A,n,m); printf("\nTong dong lon nhat : %d ",Tong1(A,n,m)); printf("\nTong cot nho nhat : %d ",Tong2(A,n,m)); printf("Nhap vao k: ");scanf("%d",&k); printf("Cheo : "); Cheo1(A,n,m,k); getch(); } | |
| | | jick Quản lý viên
Tổng số bài gửi : 44 Age : 33 Đến từ : Jick7 Sở thích : Sports-online Tên thật : Phạm Thanh Tùng Thanh tích cực : Registration date : 31/12/2008
| Tiêu đề: bai 10 ma tran 24/2/2009, 21:14 | |
| - Code:
-
#include "stdio.h" #include "conio.h" void NhapMang(int A[50][50],int n,int m) { int i,j,t; for(i=1;i<=n;i++) for(j=1;j<=m;j++) { printf("Nhap vao phan tu thu A[%d][%d] : ",i,j); scanf("%d",&t); A[i][j]=t; } } void XuatMang(int A[50][50],int n,int m) { int i,j; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) printf("%4d",A[i][j]); printf("\n"); } } void XoaDog(int A[50][50],int &n,int m,int k) { int i,j; for(j=1;j<=m;j++) { for(i=k;i<=n;i++) A[i][j]=A[i+1][j]; } n--; //XuatMang(A,n,m); } void XoaCot(int A[50][50],int n,int &m,int l) { int i,j; for(i=1;i<=n;i++) { for(j=l;j<=m;j++) A[i][j]=A[i][j+1]; } m--; printf("\n"); //XuatMang(A,n,m); } void Min(int A[50][50],int &n,int &m) { int i,j; int min=A[1][1]; int v=1;int t=1; for(i=1;i<=n;i++) for(j=1;j<=m;j++) if(min>A[i][j]) { min=A[i][j]; v=i; t=j; } XoaDog(A,n,m,v); XoaCot(A,n,m,t); XuatMang(A,n,m); } void Chen(int A[50][50],int n,int m) { int t[100]; int k,i,j; printf("Nhap vao dong can chen : "); scanf("%d",&k); printf("Mang luu ^^ gia tri muon chen : "); for(j=1;i<=m;j++) scanf("%d",&t[i]); for(j=1;j<=m;j++) for(i=n;i>=k;i--) A[i][j]=A[i-1][j]; for(j=1;j<=m;j++) A[k][j]=t[j];
} void main() { int A[50][50],n,m,k,l; printf("Nhap vao so dong : ");scanf("%d",&n); printf("Nhap vao so cot : ");scanf("%d",&m); NhapMang(A,n,m); printf("\nMang sau khi nhap : \n"); XuatMang(A,n,m); printf("\nPhan tu nho nhat trong mang : "); Min(A,n,m); //printf("\nNhap vao dong can xoa : ");scanf("%d",&k); //XoaDog(A,n,m,k); /*printf("Mang sau khi xoa dong : "); XuatMang(A,n,m);*/ //printf("Nhap vao cot can xoa : ");scanf("%d",&l); //XoaCot(A,n,m,l); /*printf("Mang sau khi xoa cot : "); XuatMang(A,n,m);*/ printf("\n"); Chen(A,n,m); getch(); }
tao sửa bài cho mày nha tùng nhưng ko sửa code ha ha | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 24/2/2009, 21:56 | |
| - Code:
-
#include "stdio.h" #include "conio.h" #include "string.h" void dao(char j[]) { int ln=strlen(j); int i; char s[200]; for(i=0;i<=ln;i++) s[i]=j[i]; for(i=0;i<=ln/2-1;i++) { char ch=s[i]; s[i]=s[ln-i-1]; s[ln-i-1]=ch; } printf(" chuoi sau khi dao %s \n",s); } int kt(char j[]) { int i; char s[200]; int ln=strlen(j); for(i=0;i<=ln;i++) s[i]=j[i]; for(i=0;i<=ln/2-1;i++) { char ch=s[i]; s[i]=s[ln-i-1]; s[ln-i-1]=ch; } for(i=1;i<=ln;i++) if (s[i]!=j[i]) return 0; return 1; } void xuatten(char s[]) { int i,j,t,ln=strlen(s); char k[30]; t=-1; for(i=ln;i>=0;i--) { if(s[i]==' ') { for(j=i+1;j<=ln;j++) { t++; k[t]=s[j]; } break; } } printf("ten cua nguoi nhap la : %s \n",k); } void xoavt(char s[],int posi,int num) { int i,ln=strlen(s); char k[200]; for(i=0;i<=ln;i++) k[i]=s[i]; strcpy(k+posi,k+posi+num); printf("%s \n",k); } void main() { char s[200]; int i,j; printf(" nhap vao mot chuoi bat ki "); gets(s); printf(" chuoi moi nhap %s \n",s); dao(s); printf(" mang co doi xung hay ko la %d \n",kt(s)); xuatten(s); printf(" nhap vao vi tri muon xoa "); scanf("%d",&i); printf(" nhap vao so phan tu xoa "); scanf("%d",&j); xoavt(s,i,j); getch(); }
chuỗi nè bà con đến câu 5
Được sửa bởi TranTheQuan ngày 6/3/2009, 10:22; sửa lần 1. | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 24/2/2009, 22:00 | |
| - Code:
-
#include "stdio.h" #include "conio.h" void NhapMang(int A[10][30],int &n,int &m) { int i,j,t; printf("Nhap vao so dong : ");scanf("%d",&n); printf("Nhap vao so cot : ");scanf("%d",&m); for(i=1;i<=n;i++) for(j=1;j<=m;j++) { printf("Nhap vao phan tu thu A[%d][%d] : ",i,j); scanf("%d",&t); A[i][j]=t; } } void XuatMang(int A[10][30],int n,int m) { int i,j; printf("Matrix : \n"); for(i=1;i<=n;i++) { for(j=1;j<=m;j++) printf("%4d ",A[i][j]); printf("\n"); } } void Min(int A[10][30],int &n,int &m) { int i,j,min,a,b; min=A[1][1]; a=1;b=1; for(i=1;i<=n;i++) for(j=1;j<=m;j++) { if(min>A[i][j]) { min=A[i][j]; a=i; b=j; } } printf("%2d",min); printf("\nVi tri : %d %d ",a,b); } void Max(int A[10][30],int &n,int &m) { int i,j,max,v,t; max=A[1][1]; v=1;t=1; for(i=1;i<=n;i++) for(j=1;j<=m;j++) { if(max<A[i][j]) { max=A[i][j]; v=i; t=j; } } printf("%2d",max); printf("\nVi tri : %d %d",v,t); } long Tong1(int A[10][30],int &n,int &m) { int i,j,d; int t=0,s; for(i=1;i<=n;i++) { s=0; for(j=1;j<=m;j++) { s = s + A[i][j]; } if(t<s) { t=s; d=i; } } printf("\nVi tri dong co tong lon nhat: %d",d); return t; } long Tong2(int A[10][30],int &n,int &m) { int i,j,d; int s,t=99999999; for(j=1;j<=m;j++) { s=0; for(i=1;i<=n;i++) { s = s + A[i][j]; } if(t>s) { t=s; d=j; } } printf("\nVi tri cot co tong nho nhat : %d",d); return t; } void Cheo1(int A[10][30],int &n,int &m,int k) { int i,j; for(i=1;i<=n;i++) for(j=1;j<=m;j++) if(i==j) if(((i+k)<=n)&&((j-k+1)>=1)) { printf(" %d ",A[i+k][j-k+1]); } } void Cheo2(int A[10][30],int &n,int &m,int k) { int i,j; for(i=1;i<=n;i++) for(j=1;j<=m;j++) if(i==j) if(((j+k)<=m)&&((i-k+1)>=1)) { printf(" %d ",A[i-k+1][j+k]); } }
void main() { int A[10][30],n,m,k; NhapMang(A,n,m); XuatMang(A,n,m); printf("\nPhan tu nho nhat trong matrix : "); Min(A,n,m); printf("\nPhan tu lon nhat trong matrix : "); Max(A,n,m); printf("\nTong dong lon nhat : %d ",Tong1(A,n,m)); printf("\nTong cot nho nhat : %d ",Tong2(A,n,m)); printf("\nNhap vao k: ");scanf("%d",&k); printf("Cheo 1 : "); Cheo1(A,n,m,k); printf("Cheo 2 : "); Cheo2(A,n,m,k); getch(); }
bài 8 mảng hai chìu nè
Được sửa bởi TranTheQuan ngày 25/2/2009, 14:55; sửa lần 1. | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 24/2/2009, 22:05 | |
| - Code:
-
#include "stdio.h" #include "conio.h" void NhapMang(int A[50][50],int n,int m) { int i,j,t; for(i=1;i<=n;i++) for(j=1;j<=m;j++) { printf("Nhap vao phan tu thu A[%d][%d] : ",i,j); scanf("%d",&t); A[i][j]=t; } } void XuatMang(int A[50][50],int n,int m) { int i,j; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) printf("%4d",A[i][j]); printf("\n"); } } void XoaDog(int A[50][50],int &n,int m,int k) { int i,j; for(j=1;j<=m;j++) { for(i=k;i<=n;i++) A[i][j]=A[i+1][j]; } n--; //XuatMang(A,n,m); } void XoaCot(int A[50][50],int n,int &m,int l) { int i,j; for(i=1;i<=n;i++) { for(j=l;j<=m;j++) A[i][j]=A[i][j+1]; } m--; printf("\n"); //XuatMang(A,n,m); } void Min(int A[50][50],int &n,int &m) { int i,j; int min=A[1][1]; int v=1;int t=1; for(i=1;i<=n;i++) for(j=1;j<=m;j++) if(min>A[i][j]) { min=A[i][j]; v=i; t=j; } XoaDog(A,n,m,v); XoaCot(A,n,m,t); XuatMang(A,n,m); } void Chen(int A[50][50],int n,int m) { int t[100]; int k,i,j; printf("Nhap vao dong can chen : "); scanf("%d",&k); printf("Mang luu ^^ gia tri muon chen : "); for(j=1;j<=m;j++) { printf(" nhap vao phan tu %d ",j); scanf("%d",&t[j]); } for(j=1;j<=m;j++) for(i=n;i>=k;i--) A[i+1][j]=A[i][j]; for(j=1;j<=m;j++) A[k][j]=t[j]; XuatMang(A,n+1,m); } void main() { int A[50][50],n,m,k,l; printf("Nhap vao so dong : ");scanf("%d",&n); printf("Nhap vao so cot : ");scanf("%d",&m); NhapMang(A,n,m); printf("\nMang sau khi nhap : \n"); XuatMang(A,n,m); printf("\nPhan tu nho nhat trong mang : "); Min(A,n,m); //printf("\nNhap vao dong can xoa : ");scanf("%d",&k); //XoaDog(A,n,m,k); /*printf("Mang sau khi xoa dong : "); XuatMang(A,n,m);*/ //printf("Nhap vao cot can xoa : ");scanf("%d",&l); //XoaCot(A,n,m,l); /*printf("Mang sau khi xoa cot : "); XuatMang(A,n,m);*/ printf("\n"); Chen(A,n,m); getch(); }
bài 10 mảng hai chiều
Được sửa bởi TranTheQuan ngày 25/2/2009, 14:52; sửa lần 2. | |
| | | Hiru Lính mới
Tổng số bài gửi : 4 Age : 33 Tên thật : Hiru Thanh tích cực : Registration date : 09/01/2009
| Tiêu đề: Re: hướng giai bài tập CSLT 24/2/2009, 22:11 | |
| Lần sau post nhớ để vào Code nhe Quân. Like this - Code:
-
#include <stdio.h> #define MAXC 100 #define MAXD 100
void Nhap(int a[MAXC][MAXD],int &nc,int &nd) { printf("Ban hay nhap so dong: "); scanf("%d",&nd); printf("Ban hay nhap so cot: "); scanf("%d",&nc); int ic,id; for(ic=0;ic<=nc-1;ic++) { for(id=0;id<=nd-1;id++) { printf("Ban hay nhap phan tu a[%d][%d]: ",ic,id); scanf("%d",&a[ic][id]); } } }
void Xuat(int a[MAXC][MAXD],int nc,int nd) { int ic,id; for(ic=0;ic<=nc-1;ic++) { for(id=0;id<=nd-1;id++) { printf("%2d",a[ic][id]); } printf("\n"); } } void main() { int nc,nd; int a[MAXC][MAXD]; Nhap(a,nc,nd); Xuat(a,nc,nd); }
| |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 25/2/2009, 09:27 | |
| - Code:
-
int th(char s[]) { int i,j,kt,ln=strlen(s); j=0; while(j<ln/2) { j++; kt=1; for(i=0;i<=ln-j-1;i++) if(s[i]!=s[i+j]) { kt=0; break; } if(kt==1) return 1; } if (kt==0) return 0; }
update bài 6 nè 1 là tuần hoàn 0 là không tuần hoàn | |
| | | Tinker_Bell Lính mới
Tổng số bài gửi : 2 Age : 34 Đến từ : Tổng Đà Cái Bang---Tập Đoàn Tự Tin Tên thật : Thuy Trang Thanh tích cực : Registration date : 09/01/2009
| Tiêu đề: Re: hướng giai bài tập CSLT 25/2/2009, 14:47 | |
| sao lan man thế??? nhìn không hỉu gì cả!!! có thể post lại cho giống 2 pài cuối để dễ nhìn hok??? | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 25/2/2009, 15:32 | |
| - Code:
-
void lanxh(char s[],char t[]) { int i,j,ln1=strlen(s),ln2=strlen(t); int kt,dem; dem=0; for(i=0;i<ln1-ln2+1;i++) if(s[i]=t[0]) { kt=1; for(j=i+1;j<=i+ln2-1;j++) { if(s[j]!=t[j-i]) { kt=0; break; } } if(kt==1) dem++; } printf("%d \n",dem); }
bài 7 chuỗi nè bà con.bài 8 giống xuất tên bà con cố gắng hén | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 27/2/2009, 21:38 | |
| - Code:
-
#include "stdlib.h" #include "string.h" #include "conio.h" #define MAX 50 struct ThoiGian { int Gio,Phut,Giay; }; typedef struct tagVDV { char HoTen[40]; ThoiGian xp; ThoiGian vd; }VDV; typedef struct tagDSVDV { VDV vdv[MAX]; int SoVDV; }DSVDV; void NhapThoiGian(ThoiGian *tg) { printf("Nhap gio: "); scanf("%d",&tg->Gio); printf("Nhap phut: "); scanf("%d",&tg->Phut); printf("Nhap giay: "); scanf("%d",&tg->Giay); } void Nhap1VDV(VDV *vdv) { printf("Nhap ho ten: "); fflush(stdin); gets(vdv->HoTen); printf("Nhap thoi gian xuat phat:\n"); //gets(vdv->xp);//Sai nghiem trong NhapThoiGian(&vdv->xp); printf("Nhap thoi gian ve dich:\n"); NhapThoiGian(&vdv->vd); } void NhapDanhSachVDV(DSVDV *ds) { printf("Nhap so van dong vien: "); scanf("%d",&ds->SoVDV); for(int i=0;i<ds->SoVDV;i++) { printf("Nhap van dong vien thu %d:\n",i); Nhap1VDV(&ds->vdv[i]); } } void XuatThoiGian(ThoiGian tg) { printf("(%2d:%2d:%2d)",tg.Gio,tg.Phut,tg.Giay); } void Xuat1VDV(VDV vdv) { printf("%-13s\t",vdv.HoTen); XuatThoiGian(vdv.xp); printf("\t"); XuatThoiGian(vdv.vd); } void XuatDanhSachVDV(DSVDV ds) { printf("Ho va ten Xuat phat\tVe dich\n"); for(int i=0;i<ds.SoVDV;i++) { Xuat1VDV(ds.vdv[i]); printf("\n"); } } int DoiGioPhutGiayRaGiay(ThoiGian t) {return t.Gio*3600+t.Phut*60+t.Giay; } ThoiGian DoiGiayRaGioPhutGiay(int giay) { ThoiGian t; t.Gio = giay/3600; t.Phut = (giay%3600)/60; t.Giay = giay%60; return t; } ThoiGian TruThoiGian(ThoiGian t1, ThoiGian t2) { int g1 = DoiGioPhutGiayRaGiay(t1); int g2 = DoiGioPhutGiayRaGiay(t2); int SoGiay = g1-g2; return DoiGiayRaGioPhutGiay(SoGiay); } void XuatDSVDVvaThanhTich(DSVDV ds) { printf("Ho va ten Xuat phat\tVe dich\tThanh tich\n"); for(int i=0;i<ds.SoVDV;i++) { Xuat1VDV(ds.vdv[i]); XuatThoiGian(TruThoiGian(ds.vdv[i].vd,ds.vdv[i].xp)); printf("\n"); } } int SoSanhThoiGian(ThoiGian t1, ThoiGian t2) { int SoGiay = DoiGioPhutGiayRaGiay(t1)- DoiGioPhutGiayRaGiay(t2); if(SoGiay>0) return 1; else if(SoGiay==0) return 0; else return -1; }
VDV VDVThanhTichCaoNhat(DSVDV ds) { int k;//vi tri VDV thanh tich cao nhat k = 0; for(int i=1;i<ds.SoVDV;i++) if(SoSanhThoiGian(TruThoiGian(ds.vdv[i].vd,ds.vdv[i].xp),TruThoiGian(ds.vdv[k].vd,ds.vdv[k].xp))==-1) k=i; return ds.vdv[k]; } void main() { DSVDV ds; NhapDanhSachVDV(&ds); XuatDanhSachVDV(ds); getch(); printf("Danh sach VDV va thanh tich cua ho:\n"); XuatDSVDVvaThanhTich(ds); getch(); VDV winner = VDVThanhTichCaoNhat(ds); printf("Van dong vien co thanh tich co nhat:\n"); Xuat1VDV(winner); printf("\n"); }
bài 5 phần cấu trúc nè bà con | |
| | | nhatvuonga1 Lính mới
Tổng số bài gửi : 5 Age : 33 Tên thật : Bui Nhat Vuong Thanh tích cực : Registration date : 22/02/2009
| Tiêu đề: Re: hướng giai bài tập CSLT 1/3/2009, 15:09 | |
| moi nguoi chu y kiem tra lai mot so bai tap o tren dien dan ve muc do chinh xac .. minh thay mot so bai tap da bi giai sai...mong pa con hay can than nha... | |
| | | TranTheQuan Quản lý viên
Tổng số bài gửi : 68 Age : 33 Đến từ : daklak Sở thích : ngủ Tên thật : Quân Thanh tích cực : Registration date : 27/12/2008
| Tiêu đề: Re: hướng giai bài tập CSLT 1/3/2009, 22:25 | |
| xạo vừa thui cha tụi thử hết rùi mới giám bỏ lên đây à với lại tự làm ko à bài bài 5 cấu trúc thì đây bản 2008 về bản 6.0 thì tự sửa.ma trận thì mí người làm theo từ 0 đến n-1 còn tớ đây từ một nên nó khác nhá bạn | |
| | | xxxabcyyy Lính mới
Tổng số bài gửi : 7 Age : 33 Đến từ : TP Dầu Mỏ Sở thích : tất tần tật Tên thật : iam cah Thanh tích cực : Registration date : 28/02/2009
| | | | Sponsored content
| Tiêu đề: Re: hướng giai bài tập CSLT | |
| |
| | | | hướng giai bài tập CSLT | |
|
Similar topics | |
|
| Permissions in this forum: | Bạn không có quyền trả lời bài viết
| |
| |
| |
|