Cho trước một số nguyên dương N (0
2 câu trả lời
program Min;
var N,K,x,y:longint;
xet:boolean;
begin
write('Nhap N: ' ); readln(N);
K:=1; xet:=false;
repeat
begin
x:=K*N;
y:=trunc(sqrt(x));
if sqr(y)=x then xet:=true else inc(K);
end;
until xet=true;
write('K can tim la: ',K);
readln
end.
Bạn tham khảo nha, chỗ nào chưa hiểu thì hỏi mình :D
#include<stdio.h>
#include<math.h>
int main()
{
//khai báo biến
long temp, n;
int P = 1;
//sử dụng dowhile để yêu cầu người dùng nhập vào só lớn hơn 0
//nếu n < 0 thì yêu cầu nhập lại
do
{
printf("\nNhập vào số nguyên n lớn hơn 0: ");
scanf("%ld", &n);
if(n <= 0)
{
printf("\n Số n phải lớn hơn 0, vui lòng nhập lại !");
}
}while(n <= 0);
//gán biến n cho temp, ta sẽ sử dụng temp để đếm các chữ số
temp = n;
while(temp != 0)
{
P = P * (temp % 10);
temp = temp / 10;
}
printf("\nTích các chữ số của %ld là: %d",n,P);
printf("\n--------------------------------------\n");
}