Answer
See explanation
Work Step by Step
The situations in a multiprogramming system in which a process does not consume the entire time slice allocated to it are given below:
1. If a high priority process comes, then the scheduler will put the current process in wait queue or ready queue although its slice slice is still not over.
2. If an interupt or a trap occurs due to some issue with the process or hardware then also the process can prempt before its time slice still not over.