01/10/2018, 00:31

Phân tích số N thành tích của các số nguyên tố theo thứ tự giảm dần(ví dụ 37*5*3)

Em chỉ làm được theo kiểu tăng dần(ví dụ đề bảo từ 999 in ra 37333 nhưng em chỉ làm đc 33337)

Đây là code:

#include <iostream>
using namespace std;
int main()
{
	int n, N;
	cin >> n;
	for (int i = 1; i <= n; i++)
	{
		cin >> N;
		for (int j =2; j <=N ; j++)
		{
			while (N%j == 0)
			{
				if (N == j)
					cout << j << endl;
				else
				{
					cout << j << " x ";
				}
				N = N / j;
			}
		}
	}
	return 0;
}

Em cảm ơn

Nguyễn Xuân Phúc viết 02:34 ngày 01/10/2018

rất nhiều cách

  • Dùng 1 mảng phụ để lưu lại thừa số nguyên tố
  • Dùng đệ quy
  • Dùng 1 hàm kiểm tra nguyên tố và duyệt ngược
    p/s: đưa cái đề vào topic đi bạn, để title ngắn gọn thôi, nhìn cái phát hoảng luôn
Mai Anh Dũng viết 02:38 ngày 01/10/2018

Đã gửi thông báo rồi mà @Nhut_Thach vẫn cố tình làm ngơ, nên Đạt ẩn luôn bài viết, khi nào sửa lại tiêu đề và nội dung thì hiển thị lên lại

Nhựt Thạch viết 02:31 ngày 01/10/2018

em đã sửa lại tiêu đề rầu ạ…mong anh bỏ qua…em mới vào nên chưa rõ lắm…

Nhựt Thạch viết 02:36 ngày 01/10/2018

em sửa lại rầu ạ…dùng hàm kiểm tra số nguyên tố và duyệt ngược là sao hả anh…em mới học nhập môn lập trình chưa học đến mảng nên chắc khong dùng được mảng phụ và đệ quy

Bài liên quan
0