Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.10.2012, 19:49   #1
edw1n
Пользователь
 
Регистрация: 15.10.2012
Сообщений: 22
По умолчанию Задача на С. Вычисляем номер подъезда и этажа.

Ребята, прошу помощи. Язык С вообще не знаю, а только стал на путь изучения и в универе сразу дали задачу.

Собственно условие:
"Определить номер подъезда и этажа за номером квартиры 9-ти этажного дома, если на каждом этаже по 4 квартиры и нумерация начинается с 1-го этажа первого подъезда."

Заранее благодарен.
edw1n вне форума Ответить с цитированием
Старый 15.10.2012, 20:02   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
int Flat=34, Dock=(Flat/(9*4))+1, Level=Flat%(9*4)
Если не ошибаюсь.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.10.2012, 20:42   #3
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Stilet, что-то не сходится.
http://ideone.com/V0pKz

Вот такой вариант на дельфи:
Код:
var
  k, h, p, n, p1, h1, k1: integer;
begin
  //k-количество квартир на 1 этаже
  //h-количество этажей в подъезде
  //p-количество подъездов в доме
  //n-номер квартиры которую нужно найти
  p1 := n div (k * h) + 1 mod (1 + n mod (k * h));
  n := n - (p1 - 1) * k * h;
  h1 := n div k + 1 mod (1 + n mod k);
  k1 := n - (h1 - 1) * k;
  if (p >= p1) and (n > 0) then
    Showmessage(inttostr(p1) + ' Подъезд, ' + inttostr(h1) + ' этаж, ' + inttostr(k1) + ' квартира')
  else
    Showmessage('Такой квартиры нет');
end;
Осталось переписать код на си и подставить свои константы.

Update
Примерно так:
Код:
//n-номер квартиры которую нужно найти
 p1 = n / (4 * 9) + 1 % (1 + n % (4 * 9));
 n = n - (p1 - 1) * 4 * 9;
 h1 = n / 4 + 1 % (1 + n % 4);
 k1 = n - (h1 - 1) * 4;
 //p1 - Подъезд
 //h1 - этаж
 //k1 - квартира
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 15.10.2012 в 21:05.
BDA вне форума Ответить с цитированием
Старый 15.10.2012, 20:54   #4
edw1n
Пользователь
 
Регистрация: 15.10.2012
Сообщений: 22
По умолчанию

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

Я всё понимаю, но если у вас нету времени, то напишите хотя бы формулу для вычисления или алгоритм

В общем и на том огромное спасибо
edw1n вне форума Ответить с цитированием
Старый 15.10.2012, 21:44   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
что-то не сходится.
Ладно, по другому:
Код:
	int flat=48,adoc=9*4, dock=flat/adoc+1,level=(flat-(dock-1)*adoc)/4;
	printf("flat %d Dock %d Level %d",flat,dock,level);
Цитата:
Программу нужно написать на С
А я на чем тебе написал?? Внимательнее будь.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.10.2012, 19:09   #6
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Stilet, не сходится.
http://ideone.com/xUxIK
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача на записи - найти максимальный номер зачетки Tancor48 Помощь студентам 3 15.12.2011 19:44
Задача: Получить номер телефона из текста zoom711 Помощь студентам 9 24.03.2011 21:41
определение этажа по номеру квартиры Lolipo Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 29.10.2010 05:50
Вычисляем значение exp ( -x * x) ряд Тейлора kuzlar Помощь студентам 2 16.06.2010 19:44
Расчет подъезда и этажа king13 Microsoft Office Excel 7 01.10.2009 17:59