1樓:匿名使用者
數字操作:var
n,s:integer;
beginreadln(n);
s:=0;while n>0 do begins:=s+n mod 10;
n:=n div 10;
end;writeln(s);
end.字串操作:
vari,s:integer;
n:string;
beginreadln(n);
s:=0;for i:=1 to length(n) dos:=s+ord(n[i])-ord('0');
writeln(s);
end.
用pascal 一個正整數的個位數字是6,如果把個位數字移到首位,所得到的數是原數的4倍,試程式設計 5
2樓:匿名使用者
1、設原數x位數為n,形為:x = 6 = 0 + 6
移位後得到:4x = 6???60000 + 6*10^(n - 1) +
= 6*10^(n - 1) +x - 6) /10兩邊同乘10,得到:40x = 6*10^n + x - 6簡化可得:39x = 6*10^n - 6,題目轉化為等式右邊能否被39整除的問題。
2、程式如下。
program project1;
// pascal沒有冪函式,自己寫。
function power(x, i: word): int64;
beginresult :=1;
while i > 0 do
beginresult :=result * x;
dec(i);
end;end;
varx, y: int64;
n: integer;
begin// int64型別表示為10進位制最多19位for n :=1 to 19 do
beginy :=6 * power(10, n) -6;
x :=y div 39;
if x * 39 = y then
writeln(x);
end;readln;
end.
pascal程式設計問題:一個數將它變成一位數字,變成一位數字的方法如下
四位數,這個四位數與它的各位數字之和是2019,求這個四位數,並說明理由
靠勾引人贏戰爭 下面那位方法太複雜了。我們可以用排除法,求差。根據題意這是個相加的題目,總和是1999,那另外四個數字肯定不會超過4 9 36。又因為千位數字一定是1,所以另外三個數字最大是3 9 27。這個四個數的和肯定不會超過1 27 28 這樣的話用1999 28 1971 從1971一個一個...
四位數除法豎式,求,四位數除以三位數的最簡單的豎式計算方法。
通過兩個豎式可以看出 被除數在1200 1600之間,第一個豎式的商是120以上,第二個商是二百零幾,並且最小是202,且第二個豎式中的除數是6,7,8,9中的一個,第一個豎式的除數比第二個豎式的除數大 從第二個豎式開始討論 假如商是6,則被除數是1212,1218,1224,1230,1236,1...
四位數,每個數位上的數字都與它相鄰數位上的數字相差6,這個數最大是多少?最小是多少
顏代 這個數最大是9393。最小是1717。解 因為這個四位數,每個數位上的數字都與它相鄰數位上的數字相差6,那麼當這個四位數的第一位數為1時,這個四位數為1717,當這個四位數的第一位數為2時,這個四位數為2828,當這個四位數的第一位數為3時,這個四位數為3939,當這個四位數的第一位數為4時,...