data cars (keep=make model msrp running_price);
    retain running_price 0 total 0;
    
set sashelp.cars end=eof;
    by make;

    
if first.make then
        running_price=msrp;
    else running_price+msrp;
    output;

    
if (eof) then
        
do;
            make=
"ALL TOTAL";
            model=
"ALL TOTAL";
            msrp=
.;
            running_price=total;
            
output;
        
end;
run;
/* toss a coin until "heads" (1) */
data Toss1;
call streaminit(321);
do trial = 1 to 100;               /* simulate an experiment 100 times */
   count = 
0;                      /* how many tosses until heads? */
   
do while (1);                   /* loop forever */
      coin = rand(
"Bernoulli"0.5);  /* random 0 or 1 */
      
if coin = 1 then LEAVE;      /* exit loop when "heads" */
      count + 
1;                   /* otherwise increment count */
   
end;
   
output;
end;
keep trial count;
run;

data Toss2;
call streaminit(321);
do trial = 1 to 100;               /* simulate an experiment 100 times */
   done = 
0;                       /* initialize flag variable */
   
do count = 0 to 4 until (done); /* iterate at most 5 times */
      coin = rand(
"Bernoulli"0.5);  /* random 0 or 1 */
      
if coin = 0 then CONTINUE;   /* tails: go to next iteration */
      done = 
1;                    /* exit loop when "heads" */
   
end;
   
output;
end;
keep trial count;
run;