Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
ARD_ElEcTrO
29 / 29 / 2
Регистрация: 22.11.2010
Сообщений: 84
1

Определить в каком подъезде и на каком этаже находится квартира с заданным номером K

17.02.2012, 20:52. Просмотров 2786. Ответов 4
Метки нет (Все метки)

Номер квартиры

Многоквартирный дом имеет N квартир, P подъездов и Q этажей, причем на каждом этаже каждого подъезда имеется одинаковое количество квартир. Определить в каком подъезде и на каком этаже находится квартира с заданным номером K.

Технические условия

Входные данные

В единственной строке файла записаны значения N, P, Q, K. 1 ≤ K ≤ N ≤ 1000, P*Q ≤ N.

Выходные данные

В единственную строку файла нужно вывести номер подъезда и этаж, на котором находится квартира с номером K.
Ребят, помогите плз, 3 теста не проходит. Не понимаю, в чём дело.

Вот мой код:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <stdio.h>
int main()
{
   int n,p,q,k,g,i,kk,kp,e;
 
   scanf("%d %d %d %d", &n, &p, &q, &k);
 
   kk=(n/p)/q;
   kp=n/p;
 
    g=k;
    i=1;
    while(g>kp)
    {
        g=g-kp;
        i++;
    }
        printf("%d ", i);
 
    e=k%kp;
    i=1;
    while(e>kk)
    {
        e=e-kk;
        i++;
    }
    printf("%d\n", i);
   return 0;
}
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2012, 20:52
Ответы с готовыми решениями:

Определить, в каком подъезде находится квартира и на каком этаже
Всем привет. Не могу сообразить какой подобрать алгоритм для решения этой задачи, надо решить ее...

Напишите программу, определяющую, в каком подъезде и на каком этаже находится n-я квартира
(я только начинаю изучать программирование) Я столкнулся с такой трудностью как эта задача,...

В каком подъезде, и на каком этаже находится n-я квартира ?
В доме 9 этажей, на каждом этаже одного подъезда по 4 квартиры. В каком подъезде, и на каком этаже...

Массивы. Узнать по номеру квартиры в каком она подъезде, на каком этаже и какая по счету на лест. клетке
Привет! Нужна помощь, мне надо написать такую программу: едитами вводится кол-во парадных в доме ,...

Определить на каком этаже расположена квартира
Дано многоэтажное здание И у нас есть первый номер квартиры это N И на каждом этаже дано номер...

4
valeriikozlov
Эксперт С++
4691 / 2517 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
17.02.2012, 22:38 2
ARD_ElEcTrO, специально для Вас контрпример:
40 2 5 20
Правильный ответ как Вы догадались: 1 5
В общем у Вас неправильный ответ, когда квартира в подъезде имеет самый последний номер для подъезда.
1
ARD_ElEcTrO
29 / 29 / 2
Регистрация: 22.11.2010
Сообщений: 84
17.02.2012, 22:55  [ТС] 3
valeriikozlov,
Ага, вот значит в чём дело!)
Спасибо, проглядел
0
DarkDiablo
0 / 0 / 0
Регистрация: 04.02.2013
Сообщений: 12
04.02.2013, 23:35 4
Я так понял, проблема только тогда, когда e (либо k%kp) = 0. Я добавил обычный if, проверяющий это и сразу делаю i = 5 в этом случае. Но тесты все равно не проходит. Как по-другому можно сделать?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <stdio.h>
int main()
{
   int n,p,q,k,g,i,kk,kp;
   double e;
 
   scanf("%d %d %d %d", &n, &p, &q, &k);
 
   kk=(n/p)/q;
   kp=n/p;
 
    g=k;
    i=1;
    while(g>kp)
    {
        g=g-kp;
        i++;
    }
        printf("%d ", i);
 
    e=k%kp;
    i=1;
    if (e==0)
    { 
    i=5; 
    }
    while(e>kk)
    {
        e=e-kk;
        i++;
    }
    printf("%d\n", i);
   return 0;
}
Добавлено через 12 минут
Я балбес, нужно было вместо 5, q поставить)) Извиняюсь, я просто новичок, только учусь))
0
easybudda
Модератор
Эксперт JavaЭксперт CЭксперт С++
10297 / 6179 / 1555
Регистрация: 25.07.2009
Сообщений: 11,762
05.02.2013, 17:03 5
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Цитата Сообщение от DarkDiablo Посмотреть сообщение
Как по-другому можно сделать?
Названия переменным дал понятные, а то в ваших этих ЭнПэКу чёрт ногу сломет
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
 
int main(void) {
    unsigned    apptsPerHouse,  // квартир в доме
                porchsPerHouse, // подъездов в доме
                floorsPerPorch, // этажей в подъезде
                apptsPerPorch,  // квартир в подъезде
                apptsPerFloor,  // квартир на этаже
                apptNumber,     // номер квартиры
                porchNumber,    // номер подъезда
                floorNumber;    // этаж
            
    if ( scanf("%u %u %u %u", &apptsPerHouse, &porchsPerHouse, &floorsPerPorch, &apptNumber) == 4 ) {
        apptsPerPorch = apptsPerHouse / porchsPerHouse;
        apptsPerFloor = apptsPerPorch / floorsPerPorch;
        porchNumber = ( apptNumber / apptsPerPorch ) + ( ( apptNumber % apptsPerPorch ) ? 1 : 0 );
        floorNumber = ( apptNumber - ( apptsPerPorch * ( porchNumber - 1 ) ) ) / apptsPerFloor + ( ( apptNumber % apptsPerFloor ) ? 1 : 0 );
            
        printf("%u %u\n", porchNumber, floorNumber);
    }
    
    return 0;           
}
0
05.02.2013, 17:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2013, 17:03

Определить, на каком этаже проживает меньше всего людей
Информация о количестве жильцов в каждой из четырех квартир каждого этажа 12-этажного дома хранится...

Используя двумерный массив, определить на каком этаже проживает больше людей
Информация о количестве жильцов в каждой из четырех квартир каждого этажа 12-этажного дома хранится...

Множества. Даны марки машин, N городов. Определить в каком городе есть все марки, в каком несколько, в каком нету вообще машин
Даны 3 марки машин,даны N городов .Определить в каком городе есть все марки,в каком несколько,в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru