fprintf table
    77 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    TheSpaceGuy
 am 22 Okt. 2011
  
    
    
    
    
    Kommentiert: Walter Roberson
      
      
 am 6 Apr. 2023
            Hi guys! I am having trouble making this table using only fprintf commands (NO LOOPS allowed). This is my code for the data that is supposed to be in the table
t = [40  35  30  25  20  15  10  5  0  -5 -10 -15 -20 -25 -30 -35 -40 -45];
v = [5 10 15 20 25 30 35 40 45 50 55 60]';
[T,V] = meshgrid(t,v);
Tc = 35.74 + 0.6215*T - 35.75*(V.^.16) + 0.4275*T .* (V.^.16)
Tchill = round(Tc)
This is how the table should look like: http://www.flickr.com/photos/45889511@N03/6269967871/in/photostream
All the help I can get will be appreciated!
0 Kommentare
Akzeptierte Antwort
  Walter Roberson
      
      
 am 22 Okt. 2011
        The secret to fprintf() to print tables, is to construct a single array in which all of the numeric values appear row by row in the same order they would appear on the screen -- and then pass the transpose of that table as the fprintf() argument after the format string.
2 Kommentare
  Walter Roberson
      
      
 am 6 Apr. 2023
				My previous answer was written in 2011.
These days, I would probably instead use something like 
fprintf(FID, '%s\n', join(compose("%4d", Tchill)))
The key difference here is that while fprintf() and sprintf() go "down" columns, compose() is happy to go across rows. 
Tchill = [1 2; 3 4]
fprintf('%4d %4d\n', Tchill)
fprintf('%s\n', join(compose("%4d", Tchill)))
The fprintf() version output the items in linear index order; the compose() version ran across rows.
Weitere Antworten (0)
Siehe auch
Kategorien
				Mehr zu Tables finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

