如何使用if语句在Matlab中打印值

时间:2015-01-29 16:52:19

标签: matlab

请帮助我,这可能是程序:

a= 3;
for i = 1-5
   for j = -2-5
       d = a + i +j;
       fprintf(' %d, %d, %d,\n',a,b,d);
    end
end

excel中没有显示值,请帮助我谢谢

1 个答案:

答案 0 :(得分:1)

正确的缩进在这里会有所帮助。每个if语句必须在 下一个语句之前具有关联的end 。你们都在最后。这应该更好:

fileID = fopen('PROBSET_3.csv','w');
a= 3;
lamda = 1.54;

fprintf(fileID, ' h, k, l ,d, theta \n');
for h = -8:8
   for k = -8:8
      for l = -8:8
         d = sqrt((a^2)/(h^2 + k^2 + l^2));
         c = (lamda/(2*d));
         if c<=1
            fprintf ('theta = asind(c)');
         end   %// end moved here
         if c>1
            fprintf ('theta =out of range');
         end   %// end moved here
         fprintf(fileID, ' %d, %d, %d, %d, %d\n',h,k,l,d,theta);
      end
   end
end

fclose(fileID);

作为使用两个if语句的替代方法,在这种情况下,您可以使用else代替第二个if

         if c<=1
            fprintf ('theta = asind(c)');
         else   %// else c > 1
            fprintf ('theta =out of range');
         end