Eu tenho esta funcão de um menu e a função escreve
choice =-1;
while choice ~= 5
choice=menu('Afecta','Carregar dados', 'Efetuar Calculos',...
'Mostrar afectacoes','Gravar afectações','Sair do Programa');
switch choice
case 1
canal=input('Introduzir nome do ficheiro>','s');
fid = fopen(canal,'r');
if fid == -1
fprintf('\n Não foi possivél encontrar o ficheiro');
else
k=0;
while feof(fid)==0
aline = fgetl(fid);
k=k+1;
costMat(k,:)=str2num(aline);
end
fprintf('\n ficheiro encontrado');
end
case 2
[assigment,cost] = munkres(costMat);
fprintf('\n Calculo efetuado');
case 3
escreve(1,assigment,cost,costMat);%mal
case 4
escreve(fopen('nomef.txt','w'),assigment,cost,costMat);
fprintf('\nFicheiro guardado');
case 5
fprintf('\n Saindo do programa');
end
end
função escreve
function escreve(canal, assigment, cost,costMat)
fprintf('\n Afectaçoes e Custos');
fprintf('\n ----------------');
fprintf('\nCusto total = %3.f',cost);
for i=1:length(assigment);
custo=costMat(i,assigment(i));
fprintf(canal,'\nTrabalhador %d --> Tarefa %d (custo = %.3f)',i,assigment(i),custo);
end
end
Ao pôr o programa em funcionamento eu pretendia que através dos dados que carregássemos o programa automaticamente gravasse esses dados no mesmo documento com uma terminação diferente
Pergunta
tiagomatlab
Boas caríssimos
Precisava aqui de uma ajuda por favor
Eu tenho esta funcão de um menu e a função escreve
choice =-1;
while choice ~= 5
choice=menu('Afecta','Carregar dados', 'Efetuar Calculos',...
'Mostrar afectacoes','Gravar afectações','Sair do Programa');
switch choice
case 1
canal=input('Introduzir nome do ficheiro>','s');
fid = fopen(canal,'r');
if fid == -1
fprintf('\n Não foi possivél encontrar o ficheiro');
else
k=0;
while feof(fid)==0
aline = fgetl(fid);
k=k+1;
costMat(k,:)=str2num(aline);
end
fprintf('\n ficheiro encontrado');
end
case 2
[assigment,cost] = munkres(costMat);
fprintf('\n Calculo efetuado');
case 3
escreve(1,assigment,cost,costMat);%mal
case 4
escreve(fopen('nomef.txt','w'),assigment,cost,costMat);
fprintf('\nFicheiro guardado');
case 5
fprintf('\n Saindo do programa');
end
end
função escreve
function escreve(canal, assigment, cost,costMat)
fprintf('\n Afectaçoes e Custos');
fprintf('\n ----------------');
fprintf('\nCusto total = %3.f',cost);
for i=1:length(assigment);
custo=costMat(i,assigment(i));
fprintf(canal,'\nTrabalhador %d --> Tarefa %d (custo = %.3f)',i,assigment(i),custo);
end
end
Ao pôr o programa em funcionamento eu pretendia que através dos dados que carregássemos o programa automaticamente gravasse esses dados no mesmo documento com uma terminação diferente
Seria possível ajudarem-me por favor
obrigado
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.