![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() В небоскребе N этажей и всего один подъезд; на каждом этаже по 3 квартиры; лифт может останавливаться только на нечетных этажах. Человек садится в лифт и набирает номер нужной ему квартиры М. На какой этаж должен доставить лифт пассажира?
|
#2
|
||||
|
||||
![]() ![]() Код:
var nujnaya_kvartira:integer; etajey_v_dome:integer; nujnuy_etaj:integer; begin etajey_v_dome:=23; nujnaya_kvartira:=14; nujnuy_etaj:=nujnaya_kvartira div 3; if nujnuy_etaj mod 2<>0 then ShowMessage('Нужно выйти на '+inttostr(nujnuy_etaj)+' этаже') else ShowMessage('Нужно выйти на '+inttostr(nujnuy_etaj-1)+' этаже'); end; ![]() |
#3
|
||||
|
||||
![]() Цитата:
|
#4
|
||||
|
||||
![]() так в условии задачи... лифт на четных не останавливается?
![]() если нужна пятая квартира ![]() ![]() Последний раз редактировалось eXplorer, 19.03.2011 в 16:24. |
#5
|
||||
|
||||
![]() а если 6-я)))))))))))
|
#6
|
||||
|
||||
![]() дак а разница какая 6-ая или 5-ая (этаж то один... и топать что с третего что с первого одинаково)
![]() да и в условии задачи об этом не было сказано ![]() и теоритически мне кажется проще и быстрее пешком подняться на второй этаж, чем доехать на лифте до третьего и спуститься на второй ![]() ![]() Последний раз редактировалось eXplorer, 19.03.2011 в 16:36. |
#7
|
||||
|
||||
![]() .................................
5 div 3 =1 6 div 3 =2 то есть квартиры находятся на одном этаже, но если ты все таки поедешь на 5 то тебе программка скажет, молодой человек выйди на 1-ом этаже. )))) |
#8
|
||||
|
||||
![]() Цитата:
у меня (смотри внимательнее) стоит условие что если при челочисленном делении (div) в ответе получается четное число ты я вычитаю 1)))... тоесть если ты нажмешь на 6 тоже лифт тебе скажет выйти на первом ![]() ![]() ![]() ![]() ![]() |
#9
|
||||
|
||||
![]() Мля, у меня щас рак мозга будет)) после синьки голова не варит вообще
![]() НО... допустим ты живешь в 14 кв. а я в 15-ой. лифт в этом случае будет останавливаться на 3 и на 5 соответственно. То есть тебе не повезло с номером квартиры, хотя живем на одном и том же этаже) |
#10
|
||||
|
||||
![]() ![]() ![]() вот рабочий код: ![]() Код:
var nujnaya_kvartira:integer; etajey_v_dome:integer; nujnuy_etaj:real; begin etajey_v_dome:=23; nujnaya_kvartira:=7; nujnuy_etaj:=nujnaya_kvartira/3; if frac(nujnuy_etaj)<>0 then nujnuy_etaj:=nujnuy_etaj+1; if trunc(nujnuy_etaj) mod 2<>0 then ShowMessage('Нужно выйти на '+inttostr(trunc(nujnuy_etaj))+' этаже') else ShowMessage('Нужно выйти на '+inttostr(trunc(nujnuy_etaj))+' этаже'); end; ![]() |
#11
|
||||
|
||||
![]() Цитата:
вот теперь правильно всё ![]() ![]() |
#12
|
||||
|
||||
![]() перемудрил с кодом))
я бы просто это nujnuy_etaj:=nujnaya_kvartira div 3; заменил на nujnuy_etaj:=round(nujnaya_kvartira / 3) что собственно я самом начале и говорил.... |
#13
|
||||
|
||||
![]() мляяяяяя.... короче у меня бошка не варит, простите, всё что я давал неправильно... в последнем вообще бред
![]() ![]() ![]() |
#14
|
||||
|
||||
![]() Прошу не бить
![]() код отладил всё исправил... незнаю... обошелся без Raund'a ![]() теперь то уж точно работает ![]() Код:
var nujnaya_kvartira:integer; etajey_v_dome:integer; nujnuy_etaj:integer; begin etajey_v_dome:=23; nujnaya_kvartira:=6; nujnuy_etaj:=nujnaya_kvartira div 3; if nujnaya_kvartira mod 3<>0 then nujnuy_etaj:=nujnuy_etaj+1; if nujnuy_etaj mod 2=0 then ShowMessage('Нужно выйти на '+inttostr((nujnuy_etaj)-1)+' этаже') else ShowMessage('Нужно выйти на '+inttostr(nujnuy_etaj)+' этаже'); end; ![]() |
#15
|
|||
|
|||
![]() Код:
var e,m:integer; begin writeln('vvedite kvartiry'); readln(m); e:=m div 3; if (m mod 3)<>0 then e:=e+1; if ((e mod 2)=0) then begin e:=e+1; writeln(e); end else writeln(e); readln; end. м - номер квартиры получается если квартира на четном этаже, например 8, тогда лифт подвезет тебя на 9 этаж)) короче поднимет выше, чтобы потом спуститься)) Последний раз редактировалось Row, 20.03.2011 в 21:11. |