kiem tien, kiem tien online, kiem tien truc tuyen, kiem tien tren mang
Thứ Ba, 17 tháng 3, 2015

Đề bài: nhận vào 1 số nguyên dương N. Kiểm tra xem số N có phải là số Amstrong hay không? Sau đó hãy in ra các số amstrong có 3, 4 chữ số.

Số Amstrong (còn gọi là là narcissistic number hoặc pluperfect digital invariants - PPDI) nếu tổng lũy lũy thừa bậc n của các chữ số của nó bằng chính nó.

Ví dụ: 153 là số amstrong vì 153 = 1^3 + 5^3 + 3^3,
            tương tự 370 cũng là 1 số amstrong vì 370 = 3^3 + 7^3 + 0^3

Bài giải:


#include <stdio.h>
int SoChuSo(int n){
int
d = 0;
while
(n>0){
d++;
n=n/10;
}

return
d;
}


int
LuyThua (int x,int n){
int
kq = 1;
for
(int i=0;i<n;i++)
kq=kq*x;
return
kq;
}


int
LaSoAmstrong(int n){
int
n1=n;
int
n2=0;
int
scs = SoChuSo(n);
while
(n1>0){
int
k = n1%10;
n2+=LuyThua(k,scs);
n1=n1/10;
}

return
n == n2;

}

int
main(){
/*int n;
printf("nhap so n: ");
scanf("%d",&n);
if (LaSoAmstrong(n)){
printf("So %d la so Amstrong",n);
}
else{
printf("So %d khong la so Amstrong",n);
}*/

printf("Cac so amstrong co 3,4 chu so la: \n");
for
(int i=100;i<=9999;i++){
if
(LaSoAmstrong(i))
printf("%5d",i);
}

return
0;
}

Xem Video: 
17 Mar 2015

0 nhận xét:

Đăng nhận xét

:) :)) ;(( :-) =)) ;( ;-( :d :-d @-) :p :o :>) (o) [-( :-? (p) :-s (m) 8-) :-t :-b b-( :-# =p~ $-) (b) (f) x-) (k) (h) (c) cheer
Click to see the code!
To insert emoticon you must added at least one space before the code.

domain, domain name, premium domain name for sales

Bài đăng phổ biến