/* Ammortamenti basati su Break Event Point 

	ATTENZIONE:	Lo scopo del programma è solo quello
			di illustrare lo stile  tipico dello
			Spaghetti Code, e non di
			fornire uno strumento di calcolo per
			l'analisi degli investimenti.

*/
       real pa,pu,pv,n

       write(9,*)'Ammortamenti V1.0'
       write(9,*)'Costo delle attrezzature'
       read(9,*)pa
       write(9,*)'Costo di produzione di 1 pezzo'
       read(9,*)pu
 10    write(9,*)'Prezzo preventivato'
       read(9,*)pv
       if (pv.eq.0) goto 20
       write(9,*)'  GUADAGNO 1 pezzo = ',(pv-pu)
       n=NumeroPezzi(pa,pu,pv)
       write(9,*)'  Numero dei pezzi necessari = ',n
       write(9,*)'   Costo Reale dell'' operazione = ',pa+(n*pu)
       write(9,*)'         Ricavato della vendita = ',pv*n
       write(9,*)'                 Guadagno Reale = ',(pv*n)-(n*pu+pa)
       write(9,*)'-----------------------------------------------'
       write(9,*)'Quanti pezzi hai preventivato di vendere ?'
       read(9,*)n
       pv=prezzo(pa,pu,n)
       write(9,*)'Prezzo minimo per',int(n),' pezzi = ',pv
       write(9,*)'            V E R I F I C A '
       n=NumeroPezzi(pa,pu,pv)
       write(9,*)'Pezzi da vendere = ',n
       goto 10
 20    end

       SUBROUTINE NumeroPezzi(pa,pu,pv)

       real pa,pu,pv

       NumeroPezzi=pa/(pv-2*pu)

       return
       end

       SUBROUTINE PREZZO(pa,pu,n)

       real pa,pu,n

       PREZZO= (pa/n)+(2*pu)
       return
       end

