esercizi di chimica con turbo pascal 1.1 su mac

Program fissio1;
(* grafico per simulazione FISSIONE NUCLEARE *)
   USES Memtypes,QuickDraw,OSIntf,ToolIntf;
   
   VAR
      gPort:   GrafPort;           
      gra1,gra2,gra3,gra4,cancella,gomma,u,uf,ba,ne,kr:rect;
      a,y1,t,h,y,x:integer;
      sfondo,sfondo1,sfondo2,sfondo3:pattern;
      
procedure pausa; (* attesa che si prema enter *)
begin
moveto(10,10);drawstring('premi enter ');readln;
end;
  
  procedure grafica;  (* attivazione comandi grafici *)
BEGIN
   InitGraf(@thePort);      
   initfonts;
   InitCursor;
   HideCursor;
   OpenPort(@gPort); 
   textfont(9);
   textface([outline]);  
   PenPat(white);
   BackPat(Black);
   EraseRect(gPort.portRect);
   FrameRect(gPort.portRect);
end;
procedure sosta(h:integer);
begin
for t:=1 to h do
write('');
end;
procedure testo(x,y:integer;frase:string);
begin 
penpat(white);
moveto(x,y);drawstring(frase);
end;
procedure cancellatesto;
begin
setrect(cancella,10,10,500,70);
penpat(black);
paintrect(cancella);
end;
procedure cancellagrafo;
begin
setrect(gomma,1,1,500,370);
penpat(black);
paintrect(gomma);
end;
procedure testoschermo;
begin
testo(20,320,'contenitore reattore SCHERMATO');
testo(20,330,'riempito di MODERATORE ,grafite,acqua pesante');
end;
procedure schermo;
begin
setrect(gra1,50,100,450,300);
paintrect(gra1);
setrect(gra1,55,105,445,295);
penpat(black);paintrect(gra1);
end;
procedure testouranio;
begin
testo(20,30,'barre di COMBUSTIBILE FISSILE arricchito U328+U235 ');
end;
procedure esempio;
begin
testo(20,20,'barre fissile con U238 e U235 e MODERATORE');
setrect(gra1,100,100,200,300);
framerect(gra1);
setrect(gra1,300,100,400,300);
framerect(gra1);
setrect(gra2,200,100,300,300);penpat(gray);paintrect(gra2);
setrect(gra2,400,100,500,300);paintrect(gra2);penpat(white);
setrect(u,120,120,140,140);paintoval(u);
setrect(uf,180,120,200,140);penpat(gray);paintoval(uf);
penpat(dkgray);setrect(ba,150,250,160,260);paintoval(ba);
penpat(white);setrect(ne,150,200,155,205);paintoval(ne);
sosta(20000);
moveto(150,200);lineto(20,200);testo(20,220,'neutrone perduto');
sosta(20000);
moveto(150,200);lineto(150,250);testo(50,300,'assorbito da inquinanti');
sosta(20000);
moveto(150,200);lineto(120,120);testo(20,90,'assorbito da U238');
sosta(20000);
moveto(150,200);lineto(180,120);testo(180,90,'assorbito da U235');
sosta(20000);
moveto(150,200);lineto(500,200);testo(200,320,'moderato,utilizzabile');
moveto(200,200);pensize(5,5);lineto(350,200);moveto(400,200);
lineto(500,200);sosta(20000);pensize(1,1);
moveto(350,200);lineto(300,200);moveto(350,200);lineto(350,250);
moveto(350,200);lineto(320,120);moveto(350,200);lineto(380,120);
sosta(20000);
end;
procedure fis(x1,y1,x2,y2,x3,y3,x4,y4,x5,y5,x6,y6:integer);
begin
setrect(u,x1,y1,x2,y2);penpat(black);paintoval(u);
setrect(ba,x3,y3,x4,y4);setrect(kr,x5,y5,x6,y6);
penpat(gray);paintoval(ba);paintoval(kr);
end;
procedure prosegue1;(* catena a reazione *)
begin
penpat(white);
y:=50;x:=50;
for a:=1 to 6 do
begin
for t:=1 to 3 do
begin
 setrect(u,x,y,x+20,y+20);paintoval(u);
 x:=x+100;
 end;
 x:=50;y:=y+50;
 end;
 pausa;
 testo(20,30,'reazione a catena:U 235-->U236--->fissione+2 nuclidi ');
 fis(50,150,70,170,80,100,100,120,80,190,100,210);
 fis(50,250,70,270,80,220,100,240,80,290,100,310);
 sosta(h);
 fis(150,150,170,170,200,100,220,120,200,200,220,220);
 fis(150,250,170,270,200,220,220,240,200,270,220,290);
 sosta(h);
 fis(250,150,270,170,300,100,320,120,300,200,320,220);
 fis(250,250,270,270,300,220,320,240,300,320,320,340);
 sosta(h);
 pausa;
 end;
 
procedure uranio;
var b,x:integer;
begin
stuffhex(@sfondo,'222222222222222222');
x:=70;
penpat(white);
for b:=1 to 5 do
begin
 setrect(gra2,x,150,x+40,280);
 fillrect(gra2,sfondo);
 x:=x+80;
 end;
end;
procedure testocadmio;
begin
testo(20,40,'barre REGOLATRICI della reazione:cadmio,boro');
end;
procedure cadmio;
var b,x:integer;
begin
x:=130;
penpat(gray);
for b:=1 to 4 do
begin
 setrect(gra2,x,70,x+5,280);
 paintrect(gra2);
 x:=x+80;
 end;
end;
 
 procedure cadmio1(y1:integer);
var b,x:integer;
begin
x:=130;
penpat(gray);
for b:=1 to 4 do
begin
 setrect(gra2,x,70,x+5,y1);
 paintrect(gra2);
 x:=x+80;
 end;
end;
procedure testocadmio2;
begin
testo(20,50,'regolazione velocita con barre regolatrici semi sollevate ');
end;
procedure reazioni;
begin
testo(20,20,'uranio   238 + neutrone veloce -----> uranio 239 instabile ');
testo(20,30,'uranio   239 -----------------------> neptunio + elettrone  ');
testo(20,40,'neptunio 239 -----------------------> plutonio + elettrone ');
testo(20,50,'-----------------------------------------------------------');
testo(20,60,'U 238 + n ----> U 239 ----> Np 239 + e ----> Pu 239 + e ');
testo(20,70,'------------------------------------------------------------');
pausa;
testo(20,90,'uranio   235 + neutrone lento ------> uranio 236 instabile ');
testo(20,100,'uranio   236 ------fissione--------> due nuclei + 3 neutroni');
testo(20,110,'-----------------------------------------------------------');
pausa;
testo(20,120,'plutonio 239 + neutrone lento -----> plutonio 240 instabile');
testo(20,130,'plutonio 240 ------fissione--------> due nuclei + 3 neutroni');
testo(20,140,'-------------------------------------------------------------');
pausa;
testo(20,150,'nella fissione di uranio 236 o plutonio 240 si trova che ');
testo(20,160,'la somma delle masse delle particelle prima della fissione');
testo(20,170,'e la somma delle masse delle particelle dopo la fissione');
testo(20,180,'non viene conservata:dopo la fissione diminuisce ');
testo(20,190,'ma compare energia equivalente secondo la relazione ');
testo(50,200,'Energia generata = massa scomparsa * quadrato velocita luce');
testo(150,220,'DE = DM * c^2 ');
testo(20,240,'-----------------------------------------------------------');
end;
 procedure refrigerante;
 begin
 testo(20,50,'circuito con fluido REFRIGERANTE ,acqua,sodio :radioattivo');
 setrect(gra3,60,282,470,292);
 penpat(dkgray);paintrect(gra3);
 setrect(gra3,60,110,470,120);paintrect(gra3);
 setrect(gra3,60,110,65,292);paintrect(gra3);
 setrect(gra3,470,110,475,292);paintrect(gra3);
 end;
 
 procedure scambiatore;
 begin
 testo(20,60,'circuito SCAMBIATORE CALORE,acqua :non radioattivo');
 testo(20,70,'con generazione VAPORE per turbina e alternatore ');
 pensize(5,5);
 setrect(gra3,480,90,510,300);
 penpat(white);framerect(gra3);
 pensize(1,1);
 end;
procedure attiva;
var b,x:integer;
begin
x:=130;
testo(20,20,'sollevamento barre regolatrici:possibile reazione a catena');
penpat(black);
for b:=1 to 4 do
begin
 setrect(gra2,x,120,x+5,280);
 paintrect(gra2);
 x:=x+80;
 end;
end;
procedure catena1;
var c,x,y,d:integer;
begin
penpat(white);
x:=1;y:=1;
for d:=1 to 20 do
begin
for c:=1 to 65 do
begin
 setrect(gra1,82+x,160+y,85+x,162+y);
 paintrect(gra1);
 x:=x+5;y:=y+0;
 end;
 y:=y+5;
 x:=0;
 end;
 end;
procedure catena3;
var c,x,y,d:integer;
begin
penpat(white);
x:=1;y:=1;
for d:=1 to 10 do
begin
for c:=1 to 65 do
begin
 setrect(gra1,82+x,220+y,85+x,222+y);
 paintrect(gra1);
 x:=x+5;y:=y+0;
 end;
 y:=y+5;
 x:=0;
 end;
 end;
 
procedure catena2;
var c,x,y,d:integer;
begin
penpat(black);
x:=1;y:=1;
for d:=1 to 20 do
begin
for c:=1 to 65 do
begin
 setrect(gra1,82+x,160+y,85+x,162+y);
 paintrect(gra1);
 x:=x+5;y:=y+0;
 end;
 y:=y+5;
 x:=0;
 end;
 end;
procedure blocco;
begin
schermo;uranio;cadmio1(280);
end;
procedure barrau;
begin
testo(20,20,'barra di COMBUSTIBILE FISSILE contenente U238+U235');
testo(20,30,'ottenuta con ARRICCHIMENTO 3% U235 e RAFFINAZIONE ');
testo(20,40,'Uranio 235 + neutrone lento  ----> FISSIONE');
testo(20,50,'Uranio 238 + neutrone veloce ----> Neptunio ---> Plutonio ');
setrect(gra1,100,100,200,300);paintrect(gra1);
testo(230,110,'uranio 238 non fissile');
setrect(gra1,100,290,200,300);penpat(gray);paintrect(gra1);
testo(230,290,'uranio 235 fissile');
end;
procedure barracd;
begin
testo(20,20,'barra di cadmio o boro REGOLATRICE :assorbe neutroni');
testo(20,30,'permette di regolare o bloccare reazione di fissione ');
penpat(gray);setrect(gra1,100,100,200,300);paintrect(gra1);
end;
procedure barram;
begin
testo(20,20,'MODERATORE :grafite,acqua:rallenta velocita dei neutroni');
testo(20,30,'favorendo la cattura da parte di Uranio 235 ');
penpat(dkgray);setrect(gra1,100,100,200,300);paintrect(gra1);
end;
procedure sodio;
begin
testo(20,20,'il liquido REFRIGERANTE,acqua,sodio fuso,');
testo(20,30,'circolante mediante pompa in circuito chiuso');
testo(20,40,'nel reattore,asporta il calore prodotto e lo cede');
testo(20,50,'ad un secondo circuito,isolato, contenente acqua');
testo(20,60,'che si trasforma in vapore che agisce su una turbina');
testo(20,70,'collegata ad un alternatore che produce energia elettrica');
pausa;
setrect(gra1,50,100,150,200);
pensize(10,10);penpat(gray);framerect(gra1);
testo(50,220,'circuito refrigerante con pompa');pausa;
setrect(gra1,160,100,210,200);
pensize(10,10);penpat(white);framerect(gra1);
testo(160,240,'circuito scambiatore calore con pompa');
moveto(150,150);lineto(160,150);pausa;
testo(250,260,'turbina a vapore');
setrect(gra1,250,100,350,200);
penpat(gray);paintoval(gra1);moveto(210,150);lineto(260,150);pausa;
testo(360,280,'alternatore');moveto(350,150);lineto(360,150);
setrect(gra1,360,100,460,200);
penpat(gray);frameoval(gra1);
end;
procedure arricchimento;
var a,x:integer;
begin
x:=50;
testo(20,50,'processo di ARRICCHIMENTO ');
testo(20,60,'scopo:aumentare concentrazione di U 235 rispetto a U 238 ');
testo(20,70,'attuabile mediante celle di diffusione che sfruttano la');
testo(20,80,'diversa velocita degli isotopi di uranio vaporizzati');
testo(20,90,'U 235  piu veloce di U 238 ');
setrect(gra3,55,200,370,220);penpat(gray);
paintrect(gra3);
penpat(white);
for a:=1 to 6 do
begin
setrect(gra2,x,100,x+30,300-5*a);
setrect(gra1,x,100,x+30,300);
framerect(gra1);
paintrect(gra2);
x:=x+60;
end;
testo(50,320,'Uranio naturale');
testo(50,330,'U 238 99.3 %...U 235 0.7 %');
testo(300,320,'Uranio dopo diffusione');
testo(300,330,'U 238 97 % ...U 235 3 % ');
end;
procedure raffinazione;
begin
testo(20,50,'eliminazione di elementi che assorbono neutroni ');
stuffhex(@sfondo,'123123123123123123');
stuffhex(@sfondo1,'111111111111111111');
setrect(gra1,100,100,200,300);
fillrect(gra1,sfondo);
setrect(gra2,300,100,400,300);
fillrect(gra2,sfondo1);
testo(50,320,'uranio inquinato');
testo(300,320,'uranio raffinato');
end;
procedure moderazione;
var x,t:integer;
begin
testo(20,30,'rallentamento di neutroni emessi nella fissione');
testo(20,40,'mediante collisioni con sostanze come Grafite,Acqua');
testo(20,50,'che assorbono energia ai neutroni rallentandoli ');
stuffhex(@sfondo1,'111111111111111111');
setrect(gra1,50,200,250,300);
fillrect(gra1,sfondo1);
setrect(gra1,300,200,500,300);
fillrect(gra1,sfondo1);
testo(50,320,'uranio raffinato');
testo(50,340,'neutroni veloci');
x:=50;
for t:=1 to 20 do
begin
setrect(gra2,x,250,x+5,252);
paintrect(gra2);
for t:=1 to 2000 do
write('');
x:=x+10;
end;
setrect(gra1,250,200,300,300);
framerect(gra1);
testo(250,320,'moderatore');
testo(250,340,'neutroni lenti');
x:=250;
for t:=1 to 25 do
begin
setrect(gra2,x,250,x+8,255);
paintrect(gra2);
for t:=1 to 10000 do
write('');
x:=x+10;
end;
end;
procedure recupero;
begin
testo(20,60,'durante il funzionamento della reazione di fissione');
testo(20,70,'la barre di combustibile fissile si inquinano con i prodotti');
testo(20,80,'della fissione,che devono assorbono neutroni ');
testo(20,90,'si devono quindi periodicamente sostituire le barre fissili');
setrect(gra1,50,100,100,300);
setrect(gra2,200,100,250,300);
setrect(gra3,400,100,450,300);
stuffhex(@sfondo1,'999999999999999999');
stuffhex(@sfondo2,'222222222222222222');
stuffhex(@sfondo3,'555555555555555555');
fillrect(gra1,sfondo1);fillrect(gra2,sfondo2);fillrect(gra3,sfondo3);
testo(50,320,'uranio raffinato');
testo(200,330,'uranio parzialmente inquinato');
testo(300,340,'uranio inquinato,esaurito');
end;
procedure moto;
var a,t:integer;
begin
testo(20,180,'neutrone veloce');
for a:=1 to 100 do
begin
moveto(50+a,125);lineto(52+a,125);
for t:=1 to 1000 do
write('');
end;
end;
procedure moto1;
var a,t:integer;
begin
testo(20,180,'neutrone lento');
for a:=1 to 100 do
begin
pensize(3,3);
moveto(50+a,125);lineto(52+a,125);
for t:=1 to 5000 do
write('');
end;
pensize(1,1);
end;
procedure decade(p,q:integer);
begin
moveto(p,q);lineto(p+20,q-50);
end;

procedure nuclei;
begin
testo(20,20,'uranio 238 colpito da neutrone veloce diventa plutonio');
setrect(gra1,150,100,200,150);
frameoval(gra1);
testo(150,170,'U 238');
moto;for t:=1 to 10000 do write('');
setrect(gra1,250,100,300,150);
paintoval(gra1);testo(250,170,'U 239');
decade(275,125);testo(250,50,'decadimento beta- ');
for t:=1 to 10000 do write('');
setrect(gra1,350,100,400,150);penpat(gray);
paintoval(gra1);testo(350,170,'Np 239');
decade(375,125);testo(350,60,'decadimento beta- ');
for t:=1 to 10000 do write('');
setrect(gra1,450,100,500,150);penpat(dkgray);
paintoval(gra1);testo(450,170,'Pu 239');
end;
procedure nuclei2;
begin
testo(20,20,'uranio 238 colpito da neutrone veloce diventa plutonio');
setrect(gra1,150,100,200,150);
frameoval(gra1);
testo(150,170,'U 238');
moto;for t:=1 to 10000 do write('');
paintoval(gra1);testo(150,180,'U 239');
testo(175,50,'decadimento beta- ');for t:=1 to 10000 do write('');
setrect(gra1,150,100,200,150);penpat(gray);
paintoval(gra1);testo(150,190,'Np 239');
testo(175,60,'decadimento beta- ');for t:=1 to 10000 do write('');
setrect(gra1,150,100,200,150);penpat(dkgray);
paintoval(gra1);testo(150,200,'Pu 239');
end;
procedure fissione;
begin
testo(20,20,'uranio 235 colpito da neutrone lento diventa U 236 instabile');
testo(20,30,'esplode generando due nuclidi piu leggeri e 3 neutroni veloci');
setrect(gra1,150,100,200,150);
frameoval(gra1);
testo(150,170,'U 235');
moto1;
paintoval(gra1);testo(150,180,'U 236');
testo(175,50,'fissione');
setrect(gra1,250,50,300,100);penpat(gray);
paintoval(gra1);testo(330,75,'Ba ');
setrect(gra1,250,200,300,250);penpat(dkgray);
paintoval(gra1);testo(330,225,'Kr');
testo(330,175,'neutroni veloci ');
testo(20,340,'i neutroni,se rallentati,possono colpire altri U 235 ');
testo(20,350,'mantenendo innescata la reazione di fissione a catena'); 
end;
procedure teoria;
begin
grafica;
testo(20,300,'la reazione di FISSIONE NUCLEARE praticamente interessa ');
testo(20,310,'due soli nuclidi : Uranio 235  e Plutonio 239 ');
reazioni;pausa;grafica;nuclei;pausa;grafica;nuclei2;pausa;grafica;
fissione;pausa;grafica;
testo(20,50,'Uranio 235 presente come 0.7   % nelle rocce ');
testo(20,60,'Uranio 238 presente come 99.3  % nelle rocce ');
testo(20,70,'--------------------------------------------------------');
pausa;grafica;
testo(20,20,'necessario processo di ARRICCHIMENTO di U 235 almeno a 3 % ');
testo(20,30,'attuabile con celle di diffusione o altri metodi ');
testo(20,40,'-------------------------------------------------------');
arricchimento;pausa;grafica;
testo(20,20,'necessario eliminare elementi che possono assorbire neutroni');
testo(20,30,'attuabile con processo di RAFFINAZIONE ');
testo(20,40,'-------------------------------------------------------');
raffinazione;pausa;grafica;
testo(20,140,'necessario ridurre la velocita dei neutroni per aumentare');
testo(20,150,'la probabilita che siano catturati da U 235 e non da U 238 ');
testo(20,160,'attuabile con dei MODERATORI che rallentano i neutroni');
testo(20,170,'--------------------------------------------------------');
moderazione;pausa;grafica;
testo(20,20,'necessario regolare la velocita della reazione a catena');
testo(20,30,'mediante REGOLATORI che assorbono facilmente i neutroni');
testo(20,40,'-------------------------------------------------------');
testo(20,50,'necessario asportare continuamente il calore generato ');
testo(20,60,'mediante circuiti con fluidi REFRIGERANTI ');
testo(20,70,'--------------------------------------------------------');
testo(20,80,'necessario SCAMBIATORE di calore che asporti il calore ');
testo(20,90,'dal circuito refrigerante,generando vapore che aziona una');
testo(20,100,'turbina che attiva un alternatore per produrre energia ');
testo(20,110,'elettrica da trasmettere con linee di alta tensione ');
testo(20,120,'---------------------------------------------------------');
testo(20,130,'necessario sistema di SCHERMATURA,sicurezza del reattore ');
testo(20,140,'necessario periodicamente SOSTITUIRE le barre di ');
testo(20,150,'combustile che sono state inquinate dagli elementi prodotti');
testo(20,160,'durante la fissione,e che assorbono facilmente neutroni');
testo(20,170,'abbassando il rendimento della reazione di fissione');
testo(20,180,'----------------------------------------------------------');
pausa;grafica;
testo(20,20,'possibile recuperare U 235 ancora presente o Plutonio ');
testo(20,30,'necessario predisporre sistema di conservazione delle ');
testo(20,40,'scorie radioattive,in luoghi stabili,sicuri,per secoli..');
testo(20,50,'----------------------------------------------------------');
recupero;
pausa;
end;
procedure teoria1;
begin
testo(20,20,'la reazione di FISSIONE NUCLEARE praticamente interessa ');
testo(20,30,'due soli nuclidi : Uranio 235  e Plutonio 239 ');
testo(20,40,'--------------------------------------------------------');
pausa;
testo(20,50,'Uranio 235 presente come 0.7   % nelle rocce ');
testo(20,60,'Uranio 238 presente come 99.3  % nelle rocce ');
testo(20,70,'--------------------------------------------------------');
pausa;
testo(20,80,'necessario processo di ARRICCHIMENTO di U 235 almeno a 3 % ');
testo(20,90,'attuabile con celle di diffusione o altri metodi ');
testo(20,100,'-------------------------------------------------------');
pausa;
testo(20,110,'necessario eliminare elementi che possono assorbire neutroni');
testo(20,120,'attuabile con processo di RAFFINAZIONE ');
testo(20,130,'-------------------------------------------------------');
pausa;
testo(20,140,'necessario ridurre la velocita dei neutroni per aumentare');
testo(20,150,'la probabilita che siano catturati da U 235 e non da U 238 ');
testo(20,160,'attuabile con dei MODERATORI che rallentano i neutroni');
testo(20,170,'--------------------------------------------------------');
pausa;
testo(20,180,'necessario regolare la velocita della reazione a catena');
testo(20,190,'mediante REGOLATORI che assorbono facilmente i neutroni');
testo(20,200,'-------------------------------------------------------');
pausa;
testo(20,210,'necessario asportare continuamente il calore generato ');
testo(20,220,'mediante circuiti con fluidi REFRIGERANTI ');
testo(20,230,'--------------------------------------------------------');
pausa;
testo(20,240,'necessario SCAMBIATORE di calore che asporti il calore ');
testo(20,250,'dal circuito refrigerante,generando vapore che aziona una');
testo(20,260,'turbina che attiva un alternatore per produrre energia ');
testo(20,270,'elettrica da trasmettere con linee di alta tensione ');
testo(20,280,'---------------------------------------------------------');
pausa;
testo(20,290,'necessario sistema di SCHERMATURA,sicurezza del reattore ');
testo(20,300,'necessario periodicamente SOSTITUIRE le barre di ');
testo(20,310,'combustile che sono state inquinate dagli elementi prodotti');
testo(20,320,'durante la fissione,e che assorbono facilmente neutroni');
testo(20,330,'abbassando il rendimento della reazione di fissione');
testo(20,340,'----------------------------------------------------------');
pausa;
testo(20,350,'possibile recuperare U 235 ancora presente o Plutonio ');
testo(20,360,'necessario predisporre sistema di conservazione delle scorie');
testo(20,370,'scorie radioattive,in luoghi stabili,sicuri,per secoli..');
testo(20,380,'----------------------------------------------------------');
pausa;
end;
procedure descrive;
begin
testo(20,20,'funzionamento di un reattore nucleare:descrizione ');
testo(20,30,'1-REPERIMENTO di giacimenti di uranio');
testo(20,40,'..uranio naturale prevalentemente (99 %)  isotopo U 238   ');
testo(20,50,'..uranio fissile U 235 ( 0.7 %)  ');pausa;
testo(20,70,'2-ARRICCHIMENTO,mediante processi di diffusione o altri');
testo(20,80,'..di U 235 rispetto a U 238 ,almeno fino al 3 % di U 235 ');
pausa;
testo(20,100,'3-RAFFINAZIONE del materiale arricchito per eliminare');
testo(20,110,'..elementi che potrebbero assorbire neutroni nelle reazioni');
testo(20,120,'..riducendo il rendimento della reazione a catena ');pausa;
testo(20,140,'4-MODERAZIONE della velocita dei neutroni derivati dalla');
testo(20,150,'..fissione,per favorire la loro cattura da parte degli ');
testo(20,160,'..isotopi U 235 fissili piu che da isotopi U 238 ');pausa;
testo(20,180,'5-REGOLAZIONE della velocita della reazione a catena ');
testo(20,190,'..mediante barre di elementi capaci di assorbire neutroni');
testo(20,200,'..inseribile nel reattore in modo parziale o completo');pausa;
testo(20,220,'6-CIRCUITO con REGRIGERANTE per asportare il calore prodotto');
testo(20,230,'..e cederlo a un circuito scambiatore di calore,nel quale');
testo(20,240,'..la acqua diventa vapore che agisce su una turbina');
testo(20,250,'..che aziona un alternatore che produce energia elettrica');
pausa;
testo(20,270,'7.SCHERMO di protezione e sistemi di sicurezza ');
pausa;
end;
procedure destino;
begin
testo(20,20,'durante la fissione vengono liberati neutroni veloci');
testo(20,30,'possibile loro sorte:');
testo(20,40,'1-assorbiti da materiale inquinante:    PERDUTI per reazione');
testo(20,50,'2-assorbiti da U 238 che diventa Pu 239:PERDUTI per reazione');
testo(20,60,'------------------------------------------------------------');
testo(20,70,'3-assorbiti da U 235 con fissione:      UTILI   per reazione');
testo(20,80,'4-assorbiti da Pu 239 con fissione      UTILI   per reazione');
testo(20,90,'------------------------------------------------------------');
testo(20,100,'5-rallentati da moderatore             UTILI   per reazione');
testo(20,120,'notare che un neutrone puo rimanere nella barra ove viene');
testo(20,130,'liberato:essendo veloce,puo subire le sorti 1,2,3,4 ');
testo(20,140,'oppure puo uscire dalla barra ed entrare nel moderatore ');
testo(20,150,'ove viene rallentato prima di rientrare in una barra fissile');
testo(20,160,'e potra piu facilmente provocare la reazione di fissione');
testo(20,170,'che utilizza con maggior rendimento neutroni lenti ');
pausa;cancellagrafo;esempio;
pausa;
end;
procedure pro1;
begin
descrive;pausa;
end;
procedure pro2;
begin
grafica;teoria1;pausa;
end;
procedure pro3;
begin
grafica;teoria;pausa;
end;
procedure pro4;
begin
barrau;pausa;grafica;barracd;pausa;grafica;barram;pausa;
grafica;sodio;pausa;
end;
 
procedure pro5;
begin
grafica;
schermo;testoschermo;pausa;uranio;testouranio;pausa;
cadmio;testocadmio;pausa;refrigerante;pausa;
scambiatore;pausa;
end;
procedure pro6;
begin
grafica;
blocco;pausa;attiva;catena1;pausa;attiva;cancellatesto;cadmio1(280);
catena2;testo(20,20,'inserimento barre REGOLATRICI:blocco reazioni');
blocco;pausa;cancellatesto;attiva;cadmio1(210);
testocadmio2;catena3;pausa;
end;
procedure pro7;
begin
destino;
end;
procedure pro8;
begin
h:=10;prosegue1;cancellagrafo;
h:=1000;prosegue1;cancellagrafo;h:=10000;prosegue1;cancellagrafo;
h:=20000;prosegue1;cancellagrafo;h:=30000;prosegue1;cancellagrafo;
end;
procedure fine;  (* conferma uscita operazione *)
begin
writeln('fine operazione:confermare :premi enter');
readln;
end;
procedure scelta;  (* procedura con scelta opzioni e uscita *)
var s,sn:string;opzione:integer;
begin
clearscreen;
writeln('seleziona opzione :REATTORE NUCLEARE');
writeln('1...descrizione reattore e reazioni di fissione ');
writeln('2...continua descrizione reattore e componenti ');
writeln('3...continua descrizione reattore e componenti');
writeln('4...schema componenti reattore');
writeln('5...struttura di un reattore  ');
writeln('6...funzionamento di un reattore');
writeln('7...destino di un neutrone derivato dalla fissione');
writeln('8...reazione a catena con diverse velocita ');
writeln('9...fine ');
writeln('scelta =');readln(opzione);
grafica;
case opzione of
1:pro1;
2:pro2;
3:pro3;
4:pro4;
5:pro5;
6:pro6;
7:pro7;
8:pro8;
9:fine;
end;
EraseRect(gPort.portRect);
writeln('altra operazione?Esperimenti?:premi S...fine:premi N '); readln(sn);
if sn='S' then scelta ;
end;
begin            (* programma di lancio *)
clearscreen;
scelta;
end.