Вопрос задан 07.10.2023 в 07:28. Предмет Информатика. Спрашивает Михеев Александр.

ДАЮ 60 БАЛЛОВ Студент Василий живет в общежитии. Отделение банка, в котором он производит оплату

за проживание, имеет всего две кассы, поэтому почти всегда длинная очередь к ним. Первая касса открывается в 8.00, вторая – в 8.05. Последний клиент будет принят в 20.00. Очередь единая, и очередной клиент обслуживается, как только освобождается одна из касс. На обслуживание одного клиента уходит ровно 10 минут. Василий приходит ровно в 8.00 и видит, сколько человек стоит перед ним. Требуется определить, сколько времени ему придется простоять в очереди, и вообще обслужат ли его сегодня. Помогите пожалуйста очень срочно Сделать в паскале и построить блок-схему
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Басанец Данил.

program raf105;

var

 people,time,o1,o2:integer;

begin

write('Сколько человек увидел василий: ');

readln(people);

while people<>0 do

begin

 time+= 1;

 if people>0 then

   begin

     if o1=10 then

       begin

         people-=1;

         o1:=0;

       end;

     o1+=1;

   end;

 if (people>0) and (time>=5) then

   begin

     if o2=10 then

       begin

         people-=1;

         o2:=0;

       end;

     o2+=1;

   end;

end;

time-=1;

if time<=720 then

 writeln('Василию придётся простоять в очереди ',time div 60,' ч. ',time mod 60,' мин.')

else

 writeln('Василия не обслужат сегодня');

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я могу помочь вам решить эту задачу на языке Pascal и создать блок-схему. Давайте начнем с кода на Pascal:

pascal
program BankQueue; var currentTime, queueLength, remainingTime, clientsServiced: integer; begin currentTime := 800; // Время прихода Василия (8:00 утра) queueLength := 0; // Начальная длина очереди clientsServiced := 0; // Количество обслуженных клиентов // Считываем количество человек в очереди writeln('Введите количество человек в очереди: '); readln(queueLength); // Пока Василий не обслужен и не закрыты кассы while (currentTime <= 2000) and (clientsServiced < queueLength) do begin // Проверяем, доступна ли одна из касс if (currentTime mod 100 = 0) or (currentTime mod 100 = 500) then begin // Обслуживаем клиента clientsServiced := clientsServiced + 1; currentTime := currentTime + 10; end else begin // Если кассы заняты, ждем 1 минуту currentTime := currentTime + 1; end; end; // Проверяем, обслужат ли Василия if clientsServiced >= queueLength then begin writeln('Василий будет обслужен.'); remainingTime := 2000 - currentTime; writeln('Время ожидания: ', remainingTime, ' минут.'); end else begin writeln('Василий не будет обслужен сегодня.'); end; readln; end.

Этот код сначала считывает количество человек в очереди, а затем симулирует обслуживание клиентов в течение дня. Он также проверяет, обслужат ли Василия, и если да, то выводит время ожидания.

Теперь создадим блок-схему. Пожалуйста, обратитесь к программе или инструментам для создания блок-схем, таким как draw.io или Lucidchart, и используйте псевдокод выше, чтобы создать соответствующую блок-схему.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос