IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Парикмахерская, программа
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 22
Пол: Мужской

Репутация: -  0  +


Парикмахерская. Для каждого посетителя парикмахерской (с одним мастером) известны следующие величины: t – момент его прихода и τ – продолжительность его обслуживания. Сколько клиентов обслужит мастер за смену продолжительностью Т? Сколько рабочего времени он потратит на обслуживание?
Момент прихода и продолжительность обслуживания вводятся пользователем..
Помогите,плизз,если кто может..
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 22
Пол: Мужской

Репутация: -  0  +


Цитата
Не спеши. Время есть пока?

В принципе да..курсовую через три дня сдавать)

Цитата
Например,
while 2*2=4 do ...
- будет повторяться бесконечно. А этот:
while 2*2=5 do ...
- не выполнится ни разу (здесь и выше идет речь о выполнении того, что стоит на месте многоточия). А вот этот:
i:=1;
while i<50 do i:=i*2;
- выполнится раз. В первый раз i=1, во второй 2, в третий 4, в четвертый 8, потом 16, потом 32 - и все, для i=64 он уже не выполнится, и программа продолжит выполняться дальше, причем значение переменной i при этом уже будет равно 64.


с while все ясно..
с алгоритмикой у мну все в порядке..оформлять я не умею,иногда просто тупо забываю какой знак за каким стоит..буду тренироваться!

Цитата
Вот новая версия программы. Подтверди, пожалуйста, что она нормально отрабатывает и что тебе все понятно. Или задавай вопросы

Все работает и пока что все ясно!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(Дон @ 2.12.2006 20:40) *

Все работает и пока что все ясно!
Это очень хорошо.
Я извиняюсь за некоторый перерыв - был занят другими делами, на форум почти не заглядывал sad.gif.
Если это еще актуально - выкладываю окончательную версию. Она отличается от того варианта, что я выкладывал раньше.
1. Я не использую записи (record) для упрощения.
2. Убрал использование функции.
Без всего этого можно обойтись. Ну, и перевел на "квазирусский" (больше не проси.. утомительно это - писать латиницей..)
Работа программы ясна из комментариев. Если есть вопросы - задавай.
{ for Don, BarberShop, ver.06, 05/12/06 }
{ by Lapp }

var
TimeIn:array[1..100]of real; {время прихода кждого клиента}
ServiceTime:array[1..100] of Real; {время обслуживания каждого клиента}
t,t1,t2,TWork,TOpen,TClose:real;
n,i,k:integer; {общее число клиентов}

begin
TOpen:=9; {время открытия парикмахерской}
TClose:=17; {время закрытия}
WriteLn;
WriteLn('The Barber''s shop is open ',tOpen:4:2,' through ',tClose:4:2);
WriteLn('Vvedite vremya prihoda i obsluzhivaniya kazhdogo klienta po poraydku');
WriteLn('cherez probel po odnomu clientu na stroke.');
WriteLn('V konce nazhmite Ctrl-Z i Enter');
n:=0; {счетчик клиентов в очереди}
while not EoF do begin {регистрация клиентов}
Inc(n);
ReadLn(TimeIn[n],ServiceTime[n])
end;
WriteLn('Barber shop posetili ',n,' klientov. Vremya prihoda i obsluzhivaniya:');
for i:=1 to n do WriteLn(i,': ',TimeIn[i] :4 :2,' ',ServiceTime[i] :4 :2);

t:=TOpen; {текущее время по часам мастера, начинается с открытия}
TWork:=0; {рабочее время, подготавливаем}
k:=0; {счетчик обслуженных клиентов, подготавливаем}
for i:=1 to n do begin {вызываем следующего по очереди}
{начало обслуживания клиента - это либо время его прихода...}
t1:=TimeIn[i];
{.. либо время, когда мастер освободился, если он был занят}
if t>t1 then t1:=t;
{выводим время простоя, если оно было}
if t1>t then WriteLn('Vremya prostoya ',t1-t:4:2,' chasov');
{вычисляем время окончания сеанса:}
t2:=t1+ServiceTime[i];
if t2<=TClose then begin {если хватает рабочего времени ..}
t:=t2; {.. то обновляем текущее время концом сеанса (стрижем)}
TWork:=TWork+ServiceTime[i]; {увеличиваем счетчик рабочего времени}
Inc(k); {увеличиваем счетчик обслуженных клиентов}
{выводим информацию об обслуживании клиента и время сеанса}
WriteLn('Klient #',i,' byl obsluzhen s ',t1:4:2,' do ',t2:4:2)
end
{.. если не хватает времени - выводим информацию об отказе}
else WriteLn('Klientu #',i,' bylo otkazano v servise')
end;
{esli v konce rabochego dnya ne bylo clientov, vyvodim vremya prostoya}
if t<TClose then WriteLn('Vremya prostoya ',tClose-t:4:2,' chasov');
WriteLn('Za vesj denj bylo obsluzheno ',k,' klientov');
WriteLn('Rabochee vremya sostavilo ',tWork:4:2,' chasov');
ReadLn
end.

Желаю успехов! И не бросай программирование..
PS
Плохо выглядит вывод времени в долях часа.. По-хорошему, надо сделать вывод в часах и минутах, но это отдельный разговор smile.gif


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Дон   Парикмахерская   21.11.2006 2:21
lapp   Задачи на моделирование встречаются не очень часто…   21.11.2006 10:49
Дон   Я в паскале очень слаб...он у нас идет первый го…   21.11.2006 17:46
lapp   сегодня-завтра сбегаю за учебником по паскалю и на…   22.11.2006 6:21
lapp   Дон, я понял, что надо не так резко. Начнем с само…   23.11.2006 20:10
Дон   Это мы обьявляем две переменные.Время открытия и…   23.11.2006 22:28
lapp   > Потом мы взяли эти переменные и присвоили им …   24.11.2006 7:46
Дон   ReadLn считывает данные с экрана.От read отличае…   25.11.2006 1:44
lapp   Привет! > ReadLn считывает данные с экрана.…   25.11.2006 15:13
Дон   Попробовал. Да,когда ReadLn отсутствует,то прогр…   25.11.2006 20:58
lapp   Тут ошибку выдал...">" expected.Закл…   26.11.2006 5:09
Дон   Все отлично работает))) { for Don, BarberShop…   26.11.2006 19:07
lapp   И..как задавать как он хочет стричься?допустим у …   27.11.2006 13:17
Дон   честно говоря не понял...а смысл?если пришел оди…   29.11.2006 1:53
lapp   > честно говоря не понял...а смысл? внимательно…   29.11.2006 6:42
lapp   Дон, ты сдался? надоело?.. Еще одна зарубка в ря…   1.12.2006 9:53
Дон   Вот уж фигушки... Ничего я не сдался..стыдно прост…   1.12.2006 18:49
lapp   Вот уж фигушки... Ничего я не сдался.. И правиль…   2.12.2006 3:48
Дон   В принципе да..курсовую через три дня сдавать) …   2.12.2006 23:40
lapp   Все работает и пока что все ясно! Это очень х…   6.12.2006 8:04
Дон   Мда..все-таки комментарии вещь хорошая...без них б…   7.12.2006 1:32
Lapp   А как вывести в начале программы большими белыми …   7.12.2006 11:39
Дон   Можно в принципе и на английсском...я просто хот…   7.12.2006 12:31
Lapp   Можно в принципе и на английсском...я просто хоте…   7.12.2006 13:08
Дон   И цвет фона поменял и текста,только... Нужно что…   8.12.2006 2:24
Lapp   [code]begin TextColor(2); Write(…   8.12.2006 6:49
Дон   Вот какая фигня...текст-то он окрасил... Только …   9.12.2006 1:25
Lapp   когда я задаю Uses Crt; в начале программы,CTRL-Z…   9.12.2006 15:35
Гость   Зашел,почитал...не разобрался :unsure: мы должн…   9.12.2006 17:20
Lapp   Зашел,почитал...не разобрался :unsure: Такое та…   9.12.2006 17:28
Дон   неа..признаться честно,не нашел.. CheckEof:Bool…   10.12.2006 1:27
Lapp   > неа..признаться честно,не нашел.. Но теперь-т…   10.12.2006 9:08
Дон   нет..признаться,с ними я не знаком.. В раздел…   10.12.2006 20:00
Lapp   В разделе CRT?Нету!я даже поиск давал по глав…   11.12.2006 9:12
Дон   У нас по приложению 4-Типы данных! не могу на…   12.12.2006 4:08
Lapp   > У нас по приложению 4-Типы данных! Это Гл…   12.12.2006 6:16
Дон   Усе..найдено))) спасибо большое :give_rose: …   13.12.2006 2:35
Lapp   > Усе..найдено))) Вывод: внимательнее относись …   13.12.2006 8:35
Дон   Прошелся по программе...возникло несколько вопросо…   14.12.2006 21:29
Lapp   > Прошелся по программе...возникло несколько во…   15.12.2006 8:42
Дон   А то... Я почему постоянно переспрашиваю..глупос…   16.12.2006 20:51


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 5.05.2024 3:46
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name