-2
상상해보십시오 - 아파트가 80 개있는 집이 있습니다. 그것에는 4 개의 마루와 5 개의 블록이 있습니다. 각 블록에는 4 개의 평면이 있습니다. 사용자는 플랫 번호를 입력해야하고 파스칼 프로그램은 플랫 번호를 계산하여 출력해야합니다. 이것은 일종의 공식을 사용하여 계산해야합니다. 내가 가진 유일한 팁은 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