30/09/2018, 20:21 
               
            Nhờ chỉnh sửa code
//dem so luong so duong tren bien cua ma tran so thuc
#include <stdio.h>
#include <conio.h>
void NhapMatran(float Matrix[][100], int &Sodong, int &Socot) {
	do{
		printf("
Nhap vao so dong: ");
		scanf("%d", &Sodong);
		if(Sodong< 0) 
			printf("
So dong phai lon hon khong!");
	}while(Sodong< 0);
	do{
		printf("
Nhap vao so cot: ");
		scanf("%d", &Socot);
		if(Socot< 0) 
			printf("
So cot phai lon hon khong!");
	}while(Socot< 0);
	for(int i= 0; i< Sodong; i++) {
		for(int j= 0; j< Socot; j++) {
			float temp;
			printf("Nhap Matrix[%d][%d]: ", i, j);
			scanf("%f", &temp);
			Matrix[i][j]= temp;
		}
	}
}
void XuatMatran(float Matrix[][100], int Sodong, int Socot) {
	for(int i= 0; i< Sodong; i++) {
		for(int j= 0; j< Socot; j++) {
			printf("%8.3f  ", Matrix[i][j]);
		}//end for j
		printf("
");
	}//end for i
}
int DemSoDuongTrenBien(float Matrix[][100], int Sodong, int Socot) {
	int dem= 0;
	for(int j= 0; j< Socot; j++){
		if(Matrix[0][j]> 0) {
			dem++;
		}
		if(Matrix[Socot- 1][j]> 0) {
			dem++;
		}
	}
	for(int i= 1; i< Sodong- 1; i++){
		if(Matrix[i][0]> 0) {
			dem++;
		}
		if(Matrix[i][Sodong- 1]> 0) {
			dem++;
		}
	}
	return dem;
}
void main() {
	float Matrix[100][100];
	int Sodong, Socot;
	printf("
Nhap vao ma tran: 
");
	NhapMatran(Matrix, Sodong, Socot);
	printf("
Ma tran moi nhap la: 
");
	XuatMatran(Matrix, Sodong, Socot);
	int dem= DemSoDuongTrenBien(Matrix, Sodong, Socot);
	printf("
cac so duong co tren bien la: %d", dem);
	getch();
}
ví dụ khi em nhập:
-1  2  -3  -4  5
2 -1  1  -6  -5
8  7  5  1  -4
-4  -4  2  6  4
đáng lẽ là 7 nhưng kết quả chương trình có 5 thôi 
em nhập vào ma trận thì nó ra kết quả sai ạ. các cao thủ chỉ cho em cái sai với
Thanks nhiều ạ
            Bài liên quan
         
                
            




for(int i= 1; i< Sodong- 1; i++){ // for(i=0; i<sodong; i++) // vòng for này phải bắt đầu từ 1 nếu khong sẽ trùng lặp với giá trị trên dòng if(Matrix[i][0]> 0) { dem++; } if(Matrix[i][Sodong- 1]> 0) { Matrix[i][Socot-1] > 0 dem++; } }đã sửa được. thanks bnaj nhiều