[ create a new paste ] login | about

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

C, pasted on May 5:
/* Bài 254/74/SBT Thầy NTTMK:Hãy đếm số lượng giá trị trong mảng thỏa tính chất :"lớn hơn tất cả các giá trị đứng đằng trước nó". 155.cpp */

/* Ở đây chương trình cho phép liệt kê ra các giá trị thỏa tính chất lớn hơn tất cả các giá trị đứng đằng trước nó kèm theo vị trí của nó trong mảng,in ra cả số lượng của chúng. */

/* Ý TƯỞNG CHO BÀI NÀY:Ta xét tuần tự phần tử a[1] đi so sánh với a[0],nếu a[1]>a[o]=>a[1] thỏa.tiếp đó ta xét đến a[2] thì ta sẽ tìm ra MAX giữa 2 giá trị trước nó là a[0] và a[1],nếu a[2]>MAX=>a[2] thỏa,xét đến a[3] thì ta sẽ tìm ra MAX giữa 3 giá trị trước nó là a[0],a[1],a[2],nếu a[3]>MAX=>a[3] thỏa...cứ xét tuần tự như thế đến a[n-1] thì kết thúc. */
/* 

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>
#include<limits.h>
#define MAX 100

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

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

void xulydulieu(int a[MAX],int n)
{
	int max=INT_MIN,vitri=0,dem=0;
	printf("\nLUU Y:Doi voi cac gia tri thoa dieu kien lon hon tat ca cac gia tri dung truoc no thi ta se liet ke them vi tri cua no ngay ben canh gia tri do.vi du gia tri thoa la 5 va tai vi tri 1 thi ta se ghi ra la:(5,1)");
	printf("\nCac gia tri lon hon tat ca moi gia tri dung truoc no la:");
	for(int i=1;i<n;i++)
	{
		for(int j=i-1;j>=0;j--)
		{
			if(a[j]>max)
				max=a[j];
		}
			if(a[i]>max)
			{
				vitri=i;
				printf("(%d,%d)",a[i],vitri);
				dem++;
			}
	}
	if(dem!=0)
		printf("\nCo %d gia tri trong mang lon hon tat ca cac gia tri dung dang truoc no",dem);
	else
		printf("\nKhong co gia tri nao trong mang thoa dieu kien lon hon tat ca cac gia tri dung dang truoc no");
}

void main()
{
	int a[MAX],n,NAMSON;
	quaylai:nhapmang(a,n);
	xuatmang(a,n);
	xulydulieu(a,n);
	printf("\nBan co muon tiep tuc chay chuong trinh khong ? Neu co bam phim C,nguoc lai bam bat ky phim nao khac de ket thuc\n");
	NAMSON=getch();
	if(NAMSON=='c'||NAMSON=='C')
		goto quaylai;
}


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


Create a new paste based on this one


Comments: