-
-
Save paolorotolo/3954eaa13cb04b03616f157aa8513bf8 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
% #traccia simulazione | |
%acquisisco il #numero di operai | |
n_op= input('Inserire il numero di operai'); | |
%Acquisisco per ogni #operaio: paga oraria, ore settimanali e pezzi prodotti | |
%in un giorno | |
for i=1:n_op | |
paga_oraria(i)=input('Inserire la paga oraria'); | |
ore_settimanali(i)=input('Inserire le ore settimanali dell''operaio'); | |
pezzi_giorno(i)=input('Inserire i pezzi prodotti giornalmente dall''operaio'); | |
end | |
%avvio il #menu di scelta delle operazioni | |
scelta=8; %per #entrare nel controllo dell'input | |
%controllo l'#input | |
while scelta >7 | |
scelta=input('Benvenuto. Cosa vuoi fare? \n 1.Calcolo del costo medio di ogni prezzo. \n 2.Calcolo del numero di pezzi prodotti in un mese. \n 3.Calcolo della retribuzione mensile di un operaio. \n 4.Calcolo dell''importo che la fabbrica deve destinare ai salari degli operai. \n 5.Individuare l''operaio che risulta più efficiente. \n 6.Calcolo del numero medio di ore necessarie a produrre un pezzo. \n Scelta: '); | |
end | |
%inizio del #menu | |
%costo #medio | |
if scelta==1 | |
costo_medio= funzione1 (paga_oraria, ore_settimanali, pezzi_giorno, n_op); | |
disp(costo_medio); | |
end | |
%#pezzi mensili | |
if scelta==2 | |
pezzi_mensili= funzione2 (pezzi_giorno, n_op); | |
disp(pezzi_mensili); | |
end | |
%#retribuzione mensile di un operario | |
if scelta==3 | |
retribuzione_mensile= funzione3 (paga_oraria, ore_settimanali, n_op); | |
disp(retribuzione_mensile); | |
end | |
%Calcolo dell''importo che la fabbrica deve destinare ai salari degli #operai | |
if scelta==4 | |
salari_operai= funzione4 (paga_oraria, ore_settimanali, n_op); | |
disp(salari_operai); | |
end | |
%#Operaio più efficiente | |
if scelta==5 | |
operaio_efficiente= funzione5(pezzi_giorno,ore_settimanali, n_op); | |
disp(operaio_efficiente); | |
end | |
%Calcolo del numero medio di ore necessarie a produrre un pezzo | |
if scelta==6 | |
ore_medie= funzione6(pezzi_giorno, n_op); | |
disp(ore_medie); | |
end | |
%funzione1 costo medio | |
function c_m= funzione1 (paga, ore, pezzi_giorno, n_op) | |
tot_paga=0; | |
tot_pezzi=0; | |
for i=1:n_op | |
tot_paga= tot_paga+paga(i)*ore(i); | |
tot_pezzi= tot_pezzi+ pezzi_giorno(i)*6; | |
end | |
c_m=tot_paga/tot_pezzi; | |
end | |
%funzione2 pezzi prodotti in un #mese | |
function pezzi_mensili= funzione2 (pezzi_giornalieri, n_op) | |
pezzi_mensili=0; | |
for i=1:n_op | |
pezzi_mensili= pezzi_mensili+pezzi_giornalieri*30; | |
end | |
disp(pezzi_mensili) | |
end | |
% funzione3 retribuzione mensile di un operario | |
function retribuzione_mensile= funzione3(paga_oraria, ore_settimanali, n_op) | |
operaio=2000; %a caso, per farlo entrare nel ciclo | |
while (operaio> n_op) %controllo input | |
operaio=input('Di quale operaio vuoi valcolare la retribuzione mensile? \n Scelta: '); | |
end | |
retribuzione_mensile = paga_oraria(operaio)* ore_settimanali(operaio)*4; | |
end | |
%funzione4 Calcolo dell''importo che la fabbrica deve destinare ai salari degli operai | |
function salari_operai= funzione4(paga_oraria, ore_settimanali, n_op) | |
salari_operai=0; | |
for i=1:n_op | |
salari_operai=salari_operai+ paga_oraria(i)*ore_settimanali(i)*4; | |
end | |
end | |
%funzione5 Operaio più efficiente | |
function operaio_efficiente= funzione5(pezzi_giorno,ore_settimanali, n_op) | |
max=0; | |
operaio_efficiente=1; | |
for i=1:n_op | |
rendimento=0; | |
rendimento(i)=pezzi_giorno(i)*5/ore_settimanali(i); | |
if max< rendimento(i) | |
max=rendimento(i); | |
operaio_efficiente=i; | |
end | |
end | |
end | |
%funzione6 Calcolo del numero medio di ore necessarie a produrre un pezzo | |
function ore_medie= funzione6(pezzi_giorno, n_op) | |
pezzi_ora=0; | |
for i=1:n_op | |
pezzi_ora=pezzi_ora+pezzi_giorno(i)/24; | |
end | |
ore_medie=pezzi_ora/n_op; | |
end | |
% #AUP | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment