Ex 8.8
Läs in decimaltal från fil, avrunda sedan till närmaste heltal och skriv resultatet till en ny fil.
function ex_8_8 % kontrollvariabel skrivut = 0; % Läs in datan (om filen finns) fil = input('Namnet på filen: ','s'); if exist(fil,'file') [data skrivut] = readfile(fil); else disp('Filen finns inte!'); return; end % Skriv den avrundade datan till en fil while skrivut utfil = input('Namnet på utdata filen: ','s'); if isempty(utfil) disp('Avslutar'); return; elseif exist(utfil,'file') svar = input('Filen finns redan, vill du skriva över? [j/n]','s'); if svar == 'j' skrivut = writefile(utfil,data); end else skrivut = writefile(utfil,data); end end end function [data,skrivut] = readfile(fil) [fid,msg] = fopen(fil,'rt'); if fid < 0 disp(['Problem att öppna filen: ',msg]); else data = fscanf(fid,'%f'); fclose(fid); data = round(data); skrivut = 1; end end function skrivut = writefile(fil,data) [fid,msg] = fopen(fil,'wt'); if fid < 0 disp(['Problem att öppna filen: ',msg]); else fprintf(fid,'%d\n',data); fclose(fid); skrivut = 0; end end