Lập trình đơn giản

Bạn chưa đăng nhập. Vui lòng đăng nhập để hỏi bài
dinhnguyentuhuy

viết chương trình pascal nhập n thực hiện

dòng 1 xuất ra màn hình các chữ số của n

dòng 2 tổng các chữ số của n và xét xem tổng đó có phải là số nguyên tố không

dòng 3 các chữ số ở vị trí lẻ của n và tổng của chúng. Xét tổng đó có phải là số chính phương không

dòng 4 các chữ số ở vị trí chẵn của n và tổng của chúng. Xét tổng đó có phải là số hoàn hảo không

dòng 5 số lớn nhất và số nhỏ nhất của n và tổng của hai số đó 

Giúp với !!

Nguyễn Lê Phước Thịnh
31 tháng 1 2021 lúc 8:53

uses crt;

var n,i,d,dem,kt,t,kt1,t1,t2,t3,max,min,x,j:integer;   

a,b:array[1..100]of integer;   

st:string;

begin

clrscr;

write('Nhap n='); readln(n);

str(n,st);

d:=length(st);

for i:=1 to d do 

val(st[i],a[i],x);

dem:=1;

b[1]:=a[1];

for i:=1 to d do 

begin     

kt:=0;     

for j:=1 to dem do       

if a[i]=b[j] then kt:=1;     

if kt=0 then       

begin           

inc(dem);           

b[dem]:=a[i];       

end; 

end;

writeln('Cac chu so cua ',n,' la: ');

for i:=1 to dem do 

write(b[i]:4);

writeln;

t:=0;

for i:=1 to d do 

t:=t+a[i];

writeln('Tong cac chu so cua ',n,' la: ',t);

kt1:=0;

for i:=2 to trunc(sqrt(t)) do 

if t mod i=0 then     

begin       

kt1:=1;       

break;     

end;

if (kt1=0) and (t>1) then writeln(t,' la so nguyen to')

else writeln(t,' khong la so nguyen to');

writeln('Cac chu so o vi tri le cua ',n,' la: ');

t1:=0;

for i:=1 to d do 

if i mod 2=1 then     

begin       

write(a[i]:4);       

t1:=t1+a[i];     

end;

writeln;

writeln('Tong cac chu so o vi tri le la: ',t1);

if trunc(sqrt(t1))=sqrt(t1) then writeln(t1,' la so chinh phuong')

else writeln(t1,' khong la so chinh phuong');

writeln('Cac chu so o vi tri chan cua ',n,' la: ');

t2:=0;

for i:=1 to d do 

if i mod 2=0 then     

begin       

write(a[i]:4);       

t2:=t2+a[i];     

end;

writeln('Tong cac chu so o vi tri chan la: ',t2);

t3:=0;

for i:=1 to t2 do 

if t2 mod i=0 then t3:=t3+i;

if (t3=t2) and (t2>0) then writeln(t2,' la so hoan hao')

else writeln(t2,' khong la so hoan hao');

max:=a[1];

min:=a[1];

for i:=1 to d do 

begin     

if max<a[i] then max:=a[i];     

if min>a[i] then min:=a[i]; 

end;

writeln('Chu so lon nhat cua ',n,' la: ',max);

writeln('Chu so nho nhat cua ',n,' la: ',min);

writeln('Tong cua chung la: ',max+min);

readln;

end.


Các câu hỏi tương tự
dinhnguyentuhuy
Xem chi tiết
dinhnguyentuhuy
Xem chi tiết
dinhnguyentuhuy
Xem chi tiết
dinhnguyentuhuy
Xem chi tiết
Phan Đức Duy
Xem chi tiết
Kamato Heiji
Xem chi tiết
dinhnguyentuhuy
Xem chi tiết
Oanh Kim
Xem chi tiết
Trần Ngọc Hảo
Xem chi tiết