-2
想象一下 - 有一個有80個單位的房子。它有4個樓層和5個街區。每個街區有4個單位。 用戶被要求輸入平板號碼,Pascal程序應該計算並輸出平板號碼。這必須使用某種公式來計算。我唯一的提示是我必須使用div和mod操作。查找公寓號碼和樓層號碼
到目前爲止,我已經創建的程序,通過所有80個單位循環和每16個單位後增加了塊值和各4塊之後增加的臺階。
這是我的代碼:
program project1;
var
i, floors, blocks, flats, flat, block, floor, blockCounter, floorCounter : integer;
begin
floors := 4;
blocks := 5;
flats := 80;
while true do
begin
write('Flat number: ');
read(flat);
block := 1;
floor := 1;
blockCounter := 0;
floorCounter := 0;
for i := 1 to 80 do
begin
blockCounter := blockCounter + 1;
floorCounter := floorCounter + 1;
if (floorCounter = 4) then
begin
floorCounter := 0;
floor := floor + 1;
end;
if (blockCounter > 16) then
begin
block := block + 1;
blockCounter := 0;
floorCounter := 0;
floor := 1;
end;
if (i = flat) then
begin
writeln('Flat nr. ', flat, ' is in ', floor, '. floor and in ', block, '. block!');
end;
end;
end;
end.
是否有任何人誰可以幫我嗎?
那麼你的嘗試與mod和div在哪裏?你學習了嗎? –
如果你研究過'div'和'mod',並且知道它們做了什麼,那麼計算給定單位數的塊和底部實際上是微不足道的,可以用兩個簡單的賦值語句來實現。研究如何在紙面上算術運算,然後編寫代碼。由於這顯然是功課,所以我會讓你弄清楚。 – MartynA
提示:數字16是重要的。 – Stuart