Tại sao không run code được?

#include<iostream>
#include<fstream>
using namespace std;
#define max 15
void NhapMang(int a[][max], int d, int c)
{
	for (int i = 0; i < d; i++)
	{
		for (int j = 0; j < c; j++)
		{
			cout << "\nNhap vao a[" << i << "][" << j << "]: ";
			cin >> a[i][j];
		}
	}
}
void XuatMang(int a[][max], int d, int c)
{
	cout << "\nMang la : \n";
	for (int i = 0; i < d; i++)
	{
		for (int j = 0; j < c; j++)
		{
			cout << " " << '[' << a[i][j] << "]\t";
		}printf("\n\n");
	}
}
void NhapDongCot(int& d, int& c) {
	do {
		cout << "\nNhap so dong : ";
		cin >> d;
		if (d > max || d < 1)
		{
			cout << "dong >0 va <" << max << "\nNhap lai di !";
		}
	} while (d > max || d < 1);
	do {
		cout << "\nNhap so cot : ";
		cin >> c;
		if (c > max || c < 1)
		{
			cout << "cot >0 va <" << max << "\nNhap lai di !";
		}
	} while (c > max || c < 1);
}
void TaoMangRandom(int a[][max], int d, int c) {
	srand(time(0));
	for (int i = 0; i < d; i++)
	{
		for (int j = 0; j < c; j++)
		{
			a[i][j] = -100 + rand() % 201;
		}
	}
}
void TaoMangTuFile(int a[][max], int d, int c, string TenFile) {
	ifstream f;
	f.open(TenFile, ios_base::in);
	for (int i = 0; i < d; i++)
	{
		for (int j = 0; j < c; j++)
		{
			f >> a[i][j];
		}
	}
}
double TinhTBCptuTrenBien(int a[][max], int d, int c) {
	int tong = 0;
	double dem = 0;
	for (int i = 0; i < d * c; ++i) {
		if (i / c == 0 || i / c == (d - 1) || i % c == 0 || i % c == (c - 1)) {
			dem++;
			tong += a[i / c][i % c];
		}
	}
	return tong / dem;
}
double TinhTBCptuTrenDCC(int a[][max], int d, int c) {
	if (d == c) {
		double tong = 0;
		for (int i = 0; i < d * c; ++i) {
			if (i / c == i % c) {
				tong += a[i / c][i % c];
			}
		}
		return tong / d;
	}
	else
	{
		return -99;
	}

}
double TinhTBCptuTrenDCP(int a[][max], int d, int c) {
	if (d == c) {
		double tong = 0;
		for (int i = 0; i < d; ++i) {
			tong += a[i][--c];
		}
		return tong / d;
	}
	else
	{
		return -99;
	}
}
void Swap(int& a, int& b) {
	int temp = b;
	b = a;
	a = temp;
}
void HoanVi2Cot(int a[][max], int d, int c, int x, int y) {
	for (int i = 0; i < d; ++i) {
		Swap(a[i][x], a[i][y]);
	}
}
bool KiemTraSNT(int x, int i = 3) {
	if (x == 2) {
		return true;
	}
	if (x < 2 || x % 2 == 0) {
		return false;
	}
	if (i > sqrt(x)) {
		return true;
	}
	if (x % i == 0) {
		return false;
	}
	return KiemTraSNT(x, i + 2);
}
double TBNSNTTrenDong(int a[][max], int d, int c) {
	double dem = 0, tong = 1;
	for (int i = 0; i < c; i++) {
		bool x = KiemTraSNT(a[d][i]);
		if (x) {
			dem++;
			tong *= a[d][i];
		}
	}
	if (dem != 0) {
		return tong / dem;
	}
	return 0;
}
int MaxTBNSNTTrenDong(int a[][max], int d, int c, double& Max) {
	Max = TBNSNTTrenDong(a, 0, c);
	int temp;
	for (int i = 1; i < c; i++) {
		double x = TBNSNTTrenDong(a, i, c);
		if (Max < x) {
			Max = x;
			temp = i;
		}
	}
	return temp;
}
void SaoChepMang(int a[][max], int b[][max], int d, int c) {
	for (int i = 0; i < d; i++) {
		for (int j = 0; j < c; j++) {
			b[i][j] = a[i][j];
		}
	}
}
void TaoMang_B_TuMang_A_SaoChoChanTangLeGiamTrenDong(int a[][max], int d, int c, int b[][max]) {
	SaoChepMang(a, b, d, c);
	for (int k = 0; k < d; ++k) {
		for (int i = 0; i < c - 1; ++i) {
			for (int j = i + 1; j < c; j++) {
				if (b[k][i] % 2 == 0 && b[k][j] % 2 == 0) {
					if (b[k][i] > b[k][j]) {
						Swap(b[k][i], b[k][j]);
					}
				}
			}
		}
	}
	for (int k = 0; k < d; ++k) {
		for (int i = 0; i < c - 1; ++i) {
			for (int j = i + 1; j < c; j++) {
				if (b[k][i] % 2 != 0 && b[k][j] % 2 != 0) {
					if (b[k][i] < b[k][j]) {
						Swap(b[k][i], b[k][j]);
					}
				}
			}
		}
	}
}
void TaoMang_C_D_TuMang_A_Mang_C_ToanDuong_D_ToanAm(int a[][max], int d, int c, int C[][max], int D[][max]) {
	for (int i = 0; i < d; i++) {
		for (int j = 0; j < c; j++) {
			if (a[i][j] > 0) {
				C[i][j] = a[i][j];
				D[i][j] = 0;
			}
			else
			{
				D[i][j] = a[i][j];
				C[i][j] = 0;
			}
		}
	}
}
//int DemSoLanXuatHien_E_Trong_A(int a[][max], int d, int c) {
//	int E[max][max];
//	int D, C;
//	do {
//		cout << "\nNhap so dong cua ma tran E : ";
//		cin >> D;
//		if (D > d || D < 1)
//		{
//			cout << "dong >0 va <" << d << "\nNhap lai di !";
//		}
//	} while (D > d || D < 1);
//	do {
//		cout << "\nNhap so cot : ";
//		cin >> C;
//		if (C > c || C < 1)
//		{
//			cout << "cot >0 va <" << C << "\nNhap lai di !";
//		}
//	} while (C > c || C < 1);
//	NhapMang(E, D, C);
//	cout << "\nMang E :";
//	XuatMang(E, D, C);
//	for (int j = 0; j < D*C; k++) {
//		for (int i = 0; i < d*c; i++) {
//				if(a[])
//		}
//	}
//}
bool KiemTraSTV(int x) {
	int tong = 0;
	for (int i = 1; i <= x / 2; i++) {
		if (x % i == 0) {
			tong += i;
		}
	}
	return tong > x;
}
void XuatCot(int a[][max], int d, int c) {

	for (int i = 0; i < d; i++) {
		cout << "\n\t" << a[i][c];
	}
}
void LietKePhanTuCuaCotChuaToanSoThinhVuong(int a[][max], int d, int c) {
	int x[max];
	int dem = 0;
	int temp;
	for (int i = 0; i < d; i++) {
		temp = 0;
		for (int j = 0; j < c; j++) {
			if (!KiemTraSTV(a[j][i])) {
				temp = 1;
				break;
			}
		}
		if (temp == 0) {
			x[dem++] = i;
		}

	}
	if (dem == 0) {
		cout << "\nKhong co cot nao chua toan so thinh vuong !";
		return;
	}
	cout << "\nCac cot chua toan so thinh vuong nhu sau: ";
	for (int i = 0; i < dem; i++) {
		cout << "\ncot " << x[i];
		XuatCot(a, d, x[i]);
	}
}

void ChuyenMang2ChieuThanhMang1Chieu(int a[][max], int d, int c, int b[], int& n) {
	n = 0;
	for (int i = 0; i < d * c; i++) {
		b[n++] = a[i / c][i % c];
	}

}

void SapXepMangGiamDan(int a[], int n) {
	for (int i = 0; i < n - 1; i++) {
		for (int j = i + 1; j < n; j++)
			if (a[i] < a[j]) {
				Swap(a[i], a[j]);
			}
	}
}

void TaoMang_I_TuMang_A_XoanOcGiamDanNguocKimDongHo(int a[][max], int I[][max], int d, int c) {
	SaoChepMang(a, I, d, c);
	int k[max];
	int n = 0;
	ChuyenMang2ChieuThanhMang1Chieu(I, d, c, k, n);
	int x = 0;
	int temp = 0;
	int j = 0;
	do {
		for (int i = 0; i < c - x; i++) {
			I[i][x] = k[temp++];
		}
		for (int i = x + 1; i < d - x; i++) {
			I[c - x - 1][i] = k[temp++];
		}
		for (int i = c - x - 2; i >= x; i--) {
			I[i][d - x - 1] = k[temp++];
		}
		for (int i = d - x - 2; i > x; i--) {
			I[x][i] = k[temp++];
		}
		x++;
		j++;
	} while (j < d / 2);
	if (d % 2 == 1 && c % 2 == 1) {
		I[d / 2][c / 2] = k[temp];
	}
}
void XoanOc(int MT[][max], int m, int n)
{
	int b[max];
	int k = 0;
	ChuyenMang2ChieuThanhMang1Chieu(MT, m, n, b, k);
	int t = 0;
	int i = 0;
	int h = 0;
	do
	{
		for (int j = i; j < n - i; j++)
			MT[j][i] = b[h++];

		for (int k = i + 1; k < m - i; k++)
			MT[n - i - 1][k] = b[h++];

		for (int k = n - i - 2; k >= i; k--)
			MT[k][m - i - 1] = b[h++];

		for (int k = m - i - 2; k > i; k--)
			MT[i][k] = b[h++];
		i++;
		t++;
	} while (t < m / 2);
	if (m % 2 == 1 && n % 2 == 1) MT[m / 2][n / 2] = b[h];
}

void Menu() {
	cout << "\n\t===============================================================================";
	cout << "\n\t[]                                      MENU                                 []";
	cout << "\n\t===============================================================================";
	cout << "\n\t[] 1.Nhap Mang thu cong                                                      []";
	cout << "\n\t[] 2.Tao mang random                                                         []";
	cout << "\n\t[] 3.Tao Mang tu file                                                        []";
	cout << "\n\t[] 4.Tinh gia tri tbc cua ptu tren bien, DCC&DCP                             []";
	cout << "\n\t[] 5.Liet Ke DS ptu cua tung cot chua toan bo so thinh vuong                 []";
	cout << "\n\t[] 6.Dong co tb nhan cua cac snt lon nhat                                    []";
	cout << "\n\t[] 7.Hoan vi 2 cot                                                           []";
	cout << "\n\t[] 8.Tao mang B tu Mang A sao cho cac dong chan tang, le giam dan            []";
	cout << "\n\t[] 9.Tao 2 mang C&D tu mang a, mang C toan duong & mang D toan am            []";
	cout << "\n\t[] 10.Tao ma tran E kich thuoc nho hon mang A dem so lan xuat hien E trong A []";
	cout << "\n\t[] 11.Tao mang F bang cach dich phai xoay vong k lan trai->phai              []";
	cout << "\n\t[] 12.Tao mang I xoan oc giam dan nguoc chieu kim dong ho tu mang A          []";
	cout << "\n\t[] 0.thoat                                                                   []";
	cout << "\n\t===============================================================================";
	cout << "\n\t===============================================================================";
}
void ThucThi() {
	Menu();
	int a[max][max];
	int d, c;
	int luachon;
	do
	{
		cout << "\nNhap lua chon: ";
		cin >> luachon;
		if (luachon == 1) {
			NhapDongCot(d, c);
			NhapMang(a, d, c);
			XuatMang(a, d, c);
		}
		else if (luachon == 2)
		{
			NhapDongCot(d, c);
			TaoMangRandom(a, d, c);
			XuatMang(a, d, c);
		}
		else if (luachon == 3)
		{
			NhapDongCot(d, c);
			TaoMangTuFile(a, d, c, "../Data/inputc1.txt");
			XuatMang(a, d, c);
		}
		else if (luachon == 4)
		{
			cout << "\nTBC cac phan tu tren bien cua mang la: " << TinhTBCptuTrenBien(a, d, c);
			double x = TinhTBCptuTrenDCC(a, d, c);
			if (x == -99) {
				cout << "\nKhong phai ma tran vuon ! khong co DCC & DCP";
			}
			else
			{
				cout << "\nTBC cac phan tu tren DCC cua mang la: " << x;
				x = TinhTBCptuTrenDCP(a, d, c);
				cout << "\nTBC cac phan tu tren DCP cua mang la: " << x;
			}
		}
		else if (luachon == 5)
		{
			LietKePhanTuCuaCotChuaToanSoThinhVuong(a, d, c);
		}
		else if (luachon == 6)
		{
			double Max;
			int x = MaxTBNSNTTrenDong(a, d, c, Max);
			cout << "\nTBN cua cac SNT tren dong " << x << " lon nhat voi: " << Max;
		}
		else if (luachon == 7)
		{
			int x, y;
			do {
				cout << "\n Nhap cot can hoan vi : ";
				cin >> x;
				if (x > max || x < 0)
				{
					cout << "cot >=0 va <" << max << "\nNhap lai di !";
				}
			} while (x > max || x < 0);
			do {
				cout << "\n Hoan vi cot " << x << " va cot: ";
				cin >> y;
				if (y > max || y < 0)
				{
					cout << "cot >=0 va <" << max << "\nNhap lai di !";
				}
			} while (y > max || y < 0);
			HoanVi2Cot(a, d, c, x, y);
			cout << "\nMang sau khi hoan vi cot " << x << " va cot " << y << endl;
			XuatMang(a, d, c);
		}
		else if (luachon == 8)
		{
			int b[max][max];
			TaoMang_B_TuMang_A_SaoChoChanTangLeGiamTrenDong(a, d, c, b);
			cout << "\nMang A ban dau:";
			XuatMang(a, d, c);
			cout << "\nMang B Chan tang le giam tren cac dong:";
			XuatMang(b, d, c);
		}
		else if (luachon == 9)
		{
			int C[max][max], D[max][max];
			TaoMang_C_D_TuMang_A_Mang_C_ToanDuong_D_ToanAm(a, d, c, C, D);
			cout << "\nMang C:";
			XuatMang(C, d, c);
			cout << "\nMang D:";
			XuatMang(D, d, c);
		}
		else if (luachon == 10)
		{

		}
		else if (luachon == 2)
		{


		}
		else if (luachon == 12)
		{
			/*int I[max][max];
			TaoMang_I_TuMang_A_XoanOcGiamDanNguocKimDongHo(a, I, d, c);
			XuatMang(I, d, c);*/
			XoanOc(a, d, c);
			XuatMang(a, d, c);

		}
	} while (luachon != 0);

}
int main() {


	ThucThi();

	//system("pause");
	return 0;
}

Tại sao bạn chỉ “vứt” một đống mã lên rồi hỏi câu cụt lủn như vậy?

  • “Không run code” của bạn là gì? Không biên dịch được, khi chạy báo lỗi, chạy không in ra gì, không nhập vào được?
  • Bạn chạy trên IDE gì?
  • Trình biên dịch nào?
4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?