Nhân 1 số nguyên dương n, hãy kiểm tra n có phải là 1 số hoàn hảo không .gợi ý số hoàn hảo là số có tổng các ước (ngoại trừ nó) bàng chính nó
Vd: 6 có Ư{1;2;3}
híc sắp thi rồi giúp em với ạ plsssssssss
câu hỏi gồm 3 câu ạ
câu 1:viết chương trình nhập 1 số tự nhiên N và kiểm tra xem N có là số hoàn hảo không? (số hoàn hảo là số có tổng các ước tự nhiên nhỏ hơn nó bằng chính nó)
câu 2:viết chương trình nhập 1 số nguyên N và kiểm tra xem N có là số nguyên tố không
câu 3: viết chương trình nhập 1 mảng A gồm N số nguyên và xuất ra màn hình số nhỏ nhất trong mảng
Dãy hoàn hảo
Trong một buổi học Toán, An được học khái niệm về số có tính chất đặc biệt. Số hoàn hảo là số có tổng các ước trừ nó ra thì bằng chính nó.
Ví dụ: Số 6 là số hoàn hảo vì 1+2+3=6
Số 8 không phải là số hoàn hảo vì 1+2+4=7≠8
Cho một dãy số gồm n số nguyên a1, a2,…..an. Hãy giúp An đếm xem trong dãy có bao nhiêu số là số hoàn hảo.
Dữ liệu vào: Từ file văn bản hoanhao.inp:
- Dòng 1: n số nguyên
- Dòng 2: Các số nguyên a1, a2,…..an.
Kết quả: Ghi ra file văn bản hoanhao.out:
- Dòng 1: Số lượng số hoàn hảo
- Dòng 2: Tổng của các số hoàn hảo có trong dãy
Nếu không tồn tại số hoàn hảo trong dãy thì ghi Dãy không có số hoàn hảo
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,t,dem;
//chuongtrinhcon
bool kthh(long long n)
{
if (n<=1) return(false);
else
long long t=0;
for (long long i=1; i<=n/2;i++)
if (n%i==0) t=t+i;
if (t==n) return(true);
else return(false);
}
//chuongtrinhchinh
int main()
{
freopen("hoanhao.inp","r",stdin);
freopen("hoanhao.out","w",stdout);
cin>>n;
t=0;
dem=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (kthh(x)==true)
{
dem++;
t=t+x;
}
}
cout<<dem<<endl;
cout<<t;
return 0;
}
Bìa 2.38:
Một số bằng tổng các ước của nó ( không kể chính nó ) gọi là số hoàn hảo. Chẳng hạn, các ước của 6 ( không kể chính nó ) là 1;2;3; ta có 1 + 2 +3 = 6.
Vậy 6 là số hoàn hảo. Em hãy chỉ ra trong các số 10;28;496; số nào là số hoàn hảo ?????????
+) Các ước của 10 (không kể chính nó) là 1; 2; 5 và 1 + 2 + 5 = 8 ≠ 10 nên 10 không là số hoàn hảo.
+) Các ước của 28 (không kể chính nó) là: 1; 2; 4; 7; 14 và 1 + 2 + 4 + 7 + 14 = 28 nên 28 là số hoàn hảo.
+) Các ước của 496 (không kể chính nó) là 1; 2; 4; 8; 16; 31; 62; 124; 248 và 1 + 2 + 4 + 8 + 16 + 31 + 62 + 124 + 248 = 496 nên 496 là số hoàn hảo.
Vậy trong các số trên có 28 và 496 là số hoàn hảo.
Ta gọi số n là số hoàn hảo nếu tổng các ước dương của nó bằng 2n, ví dụ: 6 là số hoàn hảo. Hãy tìm tất cả các số hoàn hảo n sao cho n – 1 và n + 1 là các số nguyên tố.
Số hoàn hảo là số mà tổng các ước của nó bằng 2 lần chính nó.
Ví dụ: 6 là số hoàn hảo vì 6 có tổng ước là 1+2+3+6=12=2 lần 61+2+3+6=12=2 lần số là số hoàn hảo vì 6
1
Yêu cầu: Viết chương trình nhập vào số nguyên n. In ra chữ YES nếu n là số hoàn hảo, ngược lại ghi chữ NO
program so_hoan_hao;
var
n, tong_uoc, i: integer;
begin
writeln('Nhap vao mot so nguyen duong n:');
readln(n);
tong_uoc := 0;
for i := 1 to n-1 do
begin
if n mod i = 0 then
tong_uoc := tong_uoc + i;
end;
if tong_uoc = n then
writeln('YES')
else
writeln('NO');
end.
Số hoàn hảo là số tự nhiên có giá trị bằng tổng các ước thực sự của nó(các ước nhỏ hơn chính nó) V.dụ 1 vài số hoàn hảo 6:1+2+3=6 ;28:1+2+4+7+14=28 Em hãy viết chương trình xác định số hoàn hảo đầu tiên lớn hơn số tự nhiên n được nhập vào từ bàn phím
Program HOC24;
var i,t,k,n: integer;
begin
write('Nhap N: '); readln(n);
t:=0; k=0;
while k=0 do
begin
n:=n+1;
for i:=1 to n do if n mod i=0 then t:=t+i;
if t=n then
begin
write(n);
k:=k+1
end else t:=0;
end;
readln
end.
Một số bằng tổng các ước của nó (không kể chính nó)gọi là số hoàn hảo.Chẳng hạn,các ước của 6(Không kể chính nó) là 1;2;3; ta có 1+2+3=6.Vậy 6 là số hoàn hảo.Hãy chỉ ra trong các số 10;28;496;số nào là số hoàn hảo.
+) Các ước của 10 (không kể chính nó) là 1; 2; 5 và 1 + 2 + 5 = 8 ≠ 10 nên 10 không là số hoàn hảo.
+) Các ước của 28 (không kể chính nó) là: 1; 2; 4; 7; 14 và 1 + 2 + 4 + 7 + 14 = 28 nên 28 là số hoàn hảo.
+) Các ước của 496 (không kể chính nó) là 1; 2; 4; 8; 16; 31; 62; 124; 248 và 1 + 2 + 4 + 8 + 16 + 31 + 62 + 124 + 248 = 496 nên 496 là số hoàn hảo.
Vậy trong các số trên có 28 và 496 là số hoàn hảo.
+) Các ước của 10 (không kể chính nó) là 1; 2; 5 và 1 + 2 + 5 = 8 ≠ 10 nên 10 không là số hoàn hảo.
+) Các ước của 28 (không kể chính nó) là: 1; 2; 4; 7; 14 và 1 + 2 + 4 + 7 + 14 = 28 nên 28 là số hoàn hảo.
+) Các ước của 496 (không kể chính nó) là 1; 2; 4; 8; 16; 31; 62; 124; 248 và 1 + 2 + 4 + 8 + 16 + 31 + 62 + 124 + 248 = 496 nên 496 là số hoàn hảo.
Vậy trong các số trên có 28 và 496 là số hoàn hảo.
Viết Chương Trình Pascal Cho Nhập N Nguyên , Dương Từ Bàn Phím . In ra màn hình : -Các Ước Của N Không Kể N -Xác Định N Có Phải Là Số Hoàn Hảo -Tất Cả Số Hoàn Hảo Trong Phạm Vi Từ 1-> N
program bai_toan;
var
N, i, sum: integer;
begin
write('Nhap so N: ');
readln(N);
write('Cac uoc cua ', N, ' khong ke ', N, ' la: ');
for i := 1 to N - 1 do
if N mod i = 0 then
write(i, ' ');
writeln;
sum := 0;
for i := 1 to N - 1 do
begin
if N mod i = 0 then sum := sum + i;
end;
if sum = N then writeln(N, ' la so hoan hao')
else writeln(N, ' khong phai la so hoan hao');
writeln;
writeln('Tat ca so hoan hao trong pham vi 1 -> ', N, ' la:');
for i := 1 to N do
begin
sum := 0;
for j := 1 to i - 1 do
begin
if i mod j = 0 then sum := sum + j;
end;
if sum = i then writeln(i);
end;
readln;
end.
viết chương trình nhập vào số tự nhiên n từ bàn phím và kiểm tra n có phải là số hoàn chỉnh không (Số hoàn chỉnh là 1 số có tổng các ước nhỏ hơn nó bằng chính nó).
uses crt;
var n,i,t:integer;
begin
clrscr;
write('Nhap n='); readln(n);
t:=0;
for i:=1 to n-1 do
if n mod i=0 then t:=t+i;
if t=n then writeln(n,' la so hoan chinh')
else writeln(n,' khong la so hoan chinh');
readln;
end.
program hoan_chinh;
uses crt;
var n,i,s:integer;
begin
clrscr;
write('nhap n:');readln(n);
for i:=1 to n-1 do
begin
if n mod i = 0 then s:=s+i;
end;
if s=n then writeln('1') {n là số chính phương thì viết 1}
else writeln('0');{n không là số chính phương thì viết 0}
end.