Об игре
Новости
Войти
Регистрация
Рейтинг
Форум
17:50
3874
 online
Требуется авторизация
Вы не авторизованы
   Форумы-->Форум для внеигровых тем-->

АвторПомогите. Информатика
пусть в доме k этажей и m квартир на этаже. Дано R номер квартиры. Определите на каком она этаже и в каком подьезде. Екран, должен иметь вид:

Введіте исходные данные:
Количество этажей в доме –> 4
Количество квартир на этаже–> 4
Номер квартиры –> 17
Квартира 17 в 2 подъезде на 1 этаже
Нужно решит с помощью mod и div. Я так понимаю, подьезд надо найти сначала, а потом уже этаж.

Вообщем, помогите;)
там одну матрицу и тупо строку и столбец...
P/S/ изходные k,m,r вводятся в самом начале - так что нужно создать общую формулу.
А номер квартиры которую нужно найти?
тоже самое проходить стали, этож через массив вроде...
для MaXiMmm:
изходные k,m,r вводятся в самом начале - Readln(k,m,R);
для Skorpis:
Да я так, хотел решить подручными средствами )
для MaXiMmm:
5 10
4 9
3 8
2 7
1 6

ты указываешь подъезд т.е. столбец и этаж т.е. строку.
Тут даже матрицу не надо.
с помощью mod и div - вот с помощью этих операторов целочисленного деления.
Сначало делишь искомую квартиру на число квартир в подъезде - находишь подъезд. А потом аналогично находишь этаж
для Йопсель:
нет. Допустим что нам данно - 5 этажей, по 3 квартиры на каждом, найти квартиру 1- (1 div 15)+1 ,НО если квартира 15- (15 div 15)+1 =2? что не соответсвует действительности. так и для последей квартиры в каждом этаже..
тут ваще нужен оператор if .
var k,m,r,a,b,c: integer;

Begin
readln(k, m, r);
a:=k*m;
b:=(r div a)+1; //подъезд
r:=r mod a;
c:=(r div m)+1; //этаж
End.

Вродь так =)
для REWesker:
я сначала тоже так)но - Допустим что нам данно - 5 этажей, по 3 квартиры на каждом, найти квартиру 1- (1 div 15)+1 ,НО если квартира 15- (15 div 15)+1 =2? что не соответсвует действительности.
9
тут ваще нужен оператор if .
- правильно;) только вот, я не знаю куда его всунуть;(
что не соответсвует действительности. так и для последей квартиры в каждом этаже..
ах да..
тогда так:
var k,m,r,a,b,c: integer;

Begin
readln(k, m, r);
a:=k*m;

If r div a=0 then b:=r div a else b:=(r div a)+1;
If r mod a=0 then r:=a else r:=r mod a;
If r div m=0 then c:=r div m else c:=(r div m)+1;
End.
тьфу, ночь, мозги совсем не варят, да и паскаля под рукой нет =) в общем, 14ый пост неверный =)
для REWesker:
огромное спасибо..Только, не мог бы ты написать где этаж и квартира?;)
для REWesker:
эм..пишет - успешно выполнен)только вот проверить нет возможности - я запутался в коде и не могу разобраться где что;)
If r mod a=0 then b:=r div a else b:=(r div a)+1; /подъезд
If r mod a=0 then r:=a else r:=r mod a;
If r mod m=0 then c:=r div m else c:=(r div m)+1; /этаж

Во, это кажется правдоподобнее =) проверь сам =)
УРЯЯ!! Спасибо большущее;) Можете прилепить скрепку для потомков)
тема закрыта by Skorpis (2010-10-05 21:10:01)
К списку тем
2007-2025, онлайн игры HeroesWM