Вопрос задан 17.06.2023 в 18:37. Предмет Информатика. Спрашивает Вишнёва Людмила.

PASCAL ABC Автомат отпускает максимум N единиц товара по Z рублей за одну единицу и выдает сдачу.

У каждого покупателя S рублей. Составить программу обслуживания автоматом очереди из K покупателей.
0 0
Перейти к ответам

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

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

Ответ:

var n,z,s,k,i,p,rez1,rez2:integer;

   

begin  

     write ('Кол-во покупателей = ');

     readln (k);

     write ('Стоимость товара за 1 шт = ');

     readln (z);

     write ('Количество товара = ');

     readln (n);

     write ('Денег у каждого покупателя = ');

     readln (s);

     

     for i:=1 to k do

     begin

          //сколько мы можем продать - n

                     

          Randomize;

          n:= Random(6);

           

          if (n>=p) and (p*z<=s) then  

          begin

               rez2:=s-p*z;//сдача

               n:=n-p;//осталось товара

               writeln('сдача ',i,'-му покупателю ',rez2);

         end

         else  

         begin

              writeln('Не хватает товара или денег');// на случаи сделать

              break;

         end;

     end;

end.

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

Да, конечно, я могу помочь вам написать программу на языке Pascal ABC для обслуживания автомата по продаже товаров. Для начала опишем задачу более подробно.

Предположим, у нас есть автомат, который может отпускать максимум N единиц товара по цене Z рублей за одну единицу. Каждый покупатель имеет S рублей и ждет своей очереди. Автомат выдает сдачу. Нам нужно написать программу, которая будет обслуживать очередь из K покупателей.

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

```pascal program VendingMachine;

const N = 5; // максимум единиц товара Z = 10; // цена за одну единицу товара K = 3; // количество покупателей S = 20; // количество денег у каждого покупателя

var i, quantity, change, totalMoney: integer;

begin totalMoney := 0; // общая сумма денег, полученная от покупателей

for i := 1 to K do begin writeln('Покупатель ', i, ' вставляет ', S, ' рублей.');

// проверяем, достаточно ли денег для покупки if S >= Z then begin quantity := S div Z; // количество единиц товара, которые покупатель может купить change := S mod Z; // сдача

// проверяем, не превышено ли максимальное количество единиц товара if quantity > N then quantity := N;

writeln('Покупатель ', i, ' купил ', quantity, ' товара за ', quantity * Z, ' рублей.'); writeln('Сдача: ', change, ' рублей.');

totalMoney := totalMoney + quantity * Z; // обновляем общую сумму денег

// здесь могут быть дополнительные действия, связанные с обслуживанием автомата

end else begin writeln('У покупателя ', i, ' недостаточно денег для покупки товара.'); end;

writeln; end;

writeln('Общая сумма денег, полученная от покупателей: ', totalMoney, ' рублей.'); end. ```

Этот код представляет собой простую симуляцию обслуживания покупателей автоматом. Вы можете настроить значения констант N, Z, K, и S, чтобы соответствовать вашим требованиям. Кроме того, вы можете добавить дополнительные шаги или условия в цикл для более сложного обслуживания.

0 0

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

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

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

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