早教吧作业答案频道 -->其他-->
求几道pascal题目的解法1.数字矩阵:输入一个数字你,输出一个数字矩阵,例如:输入4,则输出 1234 2341 3412 41232.四位数黑洞6174 把一个四位数的四个数字由小至大排列,组成一个新数,又由大至
题目详情
求几道pascal题目的解法
1.数字矩阵:输入一个数字你,输出一个数字矩阵,例如:输入4,则输出
1234
2341
3412
4123
2.四位数黑洞6174
把一个四位数的四个数字由小至大排列,组成一个新数,又由大至小排列排列组成一个新数,这两个数相减,之后重复这个步骤,只要四位数的四个数字不重复,数字最终便会变成 6174.
例如 3109,9310 - 0139 = 9171,9711 - 1179 = 8532,8532 - 2358 = 6174.而 6174 这个数也会变成 6174,7641 - 1467 = 6174.
编程输出每一步:
3.十进制转换:将十进制数转换成二进制数,并输出,例如,输入:10 则输出1010
4.打印杨辉三角 (a+b)^n
例如:输入5,则输出如下图形:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
最好用一维数组的相关内容做,谢谢
1.数字矩阵:输入一个数字你,输出一个数字矩阵,例如:输入4,则输出
1234
2341
3412
4123
2.四位数黑洞6174
把一个四位数的四个数字由小至大排列,组成一个新数,又由大至小排列排列组成一个新数,这两个数相减,之后重复这个步骤,只要四位数的四个数字不重复,数字最终便会变成 6174.
例如 3109,9310 - 0139 = 9171,9711 - 1179 = 8532,8532 - 2358 = 6174.而 6174 这个数也会变成 6174,7641 - 1467 = 6174.
编程输出每一步:
3.十进制转换:将十进制数转换成二进制数,并输出,例如,输入:10 则输出1010
4.打印杨辉三角 (a+b)^n
例如:输入5,则输出如下图形:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
最好用一维数组的相关内容做,谢谢
▼优质解答
答案和解析
1.
var
n,i,j:longint;
a:array[1..10000]of longint;
begin
readln(n);
for i:=1 to n do //初始化数组
a[i]:=i;
j:=0;
for i:=1 to n do //每一行
begin
j:=j+1;
for k:=j to n do write(a[k],' '); //输出
for k:=1 to j-1 do write(a[k],' '); //输出
writeln; //换行
end;
end.
2.
var
a:array[1..4]of integer;
i,j,k,n,max,min,t:integer;
begin
readln(n);
max:=n;min:=0;
while max-min6174 do //当差为6174则跳出循环
begin
i:=0;n:=max-min;
while n0 do //求新的数组
begin
i:=i+1;
a[i]:=n mod 10;
n:=n div 10;
end;
for i:=1 to 3 do //排序
for j:=1 to 4-i do
if a[j+1]>a[j]then
begin
t:=a[j+1];
a[j+1]:=a[j];
a[j]:=t;
end;
max:=0;min:=0;
for i:=1 to 4 do max:=max*10+a[i]; //最大
for i:=4 downto 1 do min:=min*10+a[i]; //最小
writeln(max,'-',min,'=',max-min); //输出步骤
end;
writeln('7614-1467=6174'); //最后输出
end.
3.
var
a:array[1..100]of integer;
n,i,j:integer;
begin
readln(n);
i:=0;
while n0 do //除2求余
begin
i:=i+1;
a[i]:=n mod 2;
n:=n div 2;
end;
for j:=i downto 1 do //逆序输出
write(a[i]);
writeln;
end.
4.
var
a:array[1..100,1..100]of longint;
i,j,n:longint;
begin
readln(n);
a[1,1]:=1;
for i:=2 to n do //填写
begin
a[i,1]:=1;a[i,i]:=1;
for j:=2 to i-1 do
a[i,j]:=a[i-1,j]+a[i-1,j-1];
end;
for i:=1 to n do
begin
if i10 then write(' ':n*3-3*i); //输出格式
for j:=1 to i do
write(a[i,j]:6);
writeln;
end;
end.
看了一下题目,蛮简单的.注释也写了,还有不懂的追问我,我会回答你的.
var
n,i,j:longint;
a:array[1..10000]of longint;
begin
readln(n);
for i:=1 to n do //初始化数组
a[i]:=i;
j:=0;
for i:=1 to n do //每一行
begin
j:=j+1;
for k:=j to n do write(a[k],' '); //输出
for k:=1 to j-1 do write(a[k],' '); //输出
writeln; //换行
end;
end.
2.
var
a:array[1..4]of integer;
i,j,k,n,max,min,t:integer;
begin
readln(n);
max:=n;min:=0;
while max-min6174 do //当差为6174则跳出循环
begin
i:=0;n:=max-min;
while n0 do //求新的数组
begin
i:=i+1;
a[i]:=n mod 10;
n:=n div 10;
end;
for i:=1 to 3 do //排序
for j:=1 to 4-i do
if a[j+1]>a[j]then
begin
t:=a[j+1];
a[j+1]:=a[j];
a[j]:=t;
end;
max:=0;min:=0;
for i:=1 to 4 do max:=max*10+a[i]; //最大
for i:=4 downto 1 do min:=min*10+a[i]; //最小
writeln(max,'-',min,'=',max-min); //输出步骤
end;
writeln('7614-1467=6174'); //最后输出
end.
3.
var
a:array[1..100]of integer;
n,i,j:integer;
begin
readln(n);
i:=0;
while n0 do //除2求余
begin
i:=i+1;
a[i]:=n mod 2;
n:=n div 2;
end;
for j:=i downto 1 do //逆序输出
write(a[i]);
writeln;
end.
4.
var
a:array[1..100,1..100]of longint;
i,j,n:longint;
begin
readln(n);
a[1,1]:=1;
for i:=2 to n do //填写
begin
a[i,1]:=1;a[i,i]:=1;
for j:=2 to i-1 do
a[i,j]:=a[i-1,j]+a[i-1,j-1];
end;
for i:=1 to n do
begin
if i10 then write(' ':n*3-3*i); //输出格式
for j:=1 to i do
write(a[i,j]:6);
writeln;
end;
end.
看了一下题目,蛮简单的.注释也写了,还有不懂的追问我,我会回答你的.
看了 求几道pascal题目的解法...的网友还看了以下:
求几道pascal题目的解法1.数字矩阵:输入一个数字你,输出一个数字矩阵,例如:输入4,则输出 2020-05-13 …
三道行列式求值题目,最好是有过程,四阶行列式(1)a100,-1b10,0-1c1,0-1c1,0 2020-07-09 …
简便计算:1234+2341+3412+4123=?1234+2341+3412+4123=1x1 2020-07-24 …
计算:1234+2341+3412+4123=?主要告诉我为何转变成:1*1111+2*1111+ 2020-07-24 …
简便运算6.8×16.8+19.3×3.281.5×15.8+81.5×51.8+67.6×18. 2020-07-26 …
求教,行列式化简:1234234134124123如何化简,请网友赐教.1234;2341;341 2020-08-03 …
4阶行列式|A|=1234/4123/3412/2341,求∑4,k=1,∑4,j=1Aij|A| 2020-08-03 …
四阶行列式第一行1234第二行2341第三行3412第四行4123怎么计算 2020-08-03 …
线性代数.几道题,求解用行列式的性质计算下列行列式:(1)|1111||-1111||-1-111| 2020-11-18 …
老师,行列式第一行1234第二行4123第三行3412第四行2341每个数都带有三次方. 2020-11-30 …