[ create a new paste ] login | about

Link: http://codepad.org/EJapQsYJ    [ raw code | output | fork ]

C, pasted on May 6:
/* Bài 721/187/SBT Thầy NTTMK:Cách 1:Cho mảng một chiều các số nguyên.Hãy viết hàm đệ quy đếm số lượng giá trị phân biệt có trong mảng . 458.cpp */

/* Ý tưởng:Đếm số lượng giá trị phân biệt trong mảng a có n-1 phần tử.Sau đó xét tới phần tử cuối cùng trong mảng có trùng với phần tử nào đứng đằng trước nó không.Nếu không trùng ta tăng số lượng giá trị phân biệt lên 1.*/
/* 

Tác giả: Nguyễn Việt Nam Sơn
Trung tâm đào tạo tin học - Thiết kế phần mềm - Sơn Đẹp Trai: www.SonDepTrai.com

Nguồn source code này Tôi viết vào năm 2012 lúc mới bắt đầu học lập trình C/C++ nên một số cách sẽ không được tối ưu - Bạn chỉ nên dùng trên tinh thần tham khảo thôi nhé.
Mong giúp đỡ được Bạn trên con đường Học Lập Trình.
TẤT CẢ VÌ SỰ THÀNH CÔNG CỦA BẠN

*/
#include<stdio.h>
#include<conio.h>
#define MAX 100

void nhapmang(int a[MAX],int &n)
{
	do{
		printf("\nNhap vao so phan tu cua mang:n=");
		scanf("%d",&n);
		if(n<1||n>MAX)
			printf("\nSo ban nhap vao khong hop le!Xin vui long nhap lai!\n");
		else
			break;
	}while(n<1||n>MAX);
	for(int i=0;i<n;i++)
	{
		printf("\nNhap vao a[%d]=",i);
		scanf("%d",&a[i]);
	}
}

void xuatmang(int a[MAX],int n)
{
	for(int i=0;i<n;i++)
	{
		printf("%4d",a[i]);
	}
	printf("\n");
}

int giatriphanbiet(int a[MAX],int n)
{
	if(n<1)
		return 0;
	if(n==1)
		return 1;
	int kiemtra=1;
	int dem=giatriphanbiet(a,n-1);
	for(int i=0;i<n-1;i++)
	{
		if(a[i]==a[n-1])
			kiemtra=0;
	}
	if(kiemtra==1)
		dem++;
	return dem;
}

void main()
{
	int a[MAX],n,tieptuc;
	quaylai:nhapmang(a,n);
	printf("\n>>>>>>>>>Mang Vua Nhap La:<<<<<<<<<<<<<\n");
	xuatmang(a,n);
	int s=giatriphanbiet(a,n);
	printf("\nSo luong gia tri phan biet co trong mang la:%d",s);
	printf("\nBan co muon tiep tuc chay chuong trinh hay khong ? Neu co bam phim C,nguoc lai bam bat ky 1 phim nao khac de ket thuc!\n");
	tieptuc=getch();
	if(tieptuc=='c'||tieptuc=='C')
		goto quaylai;
}


Output:
1
2
3
4
5
6
7
8
Line 17: error: conio.h: No such file or directory
Line 18: error: expected ';', ',' or ')' before '&' token
In function 'xuatmang':
Line 37: error: 'for' loop initial declaration used outside C99 mode
In function 'giatriphanbiet':
Line 52: error: 'for' loop initial declaration used outside C99 mode
In function 'main':
Line 63: warning: return type of 'main' is not 'int'


Create a new paste based on this one


Comments: