what is wrong with fprintf

why does not this function give the full text in fprintf:
function printem(a,b)
fprintf('the first number is %.lf and the second is %.lf\n',a,b)
end
what is displayed in matlab is
>> printem(3,5) the first number is>>

 Respuesta aceptada

Andrei Bobrov
Andrei Bobrov el 19 de Oct. de 2011

0 votos

>> a=rand(4,1)
a =
0.67874
0.75774
0.74313
0.39223
>> b = randi(9,4,1)
b =
6
2
7
1
>> fprintf('the first number is %f and the second is %f\n',[a,b]')
the first number is 0.678735 and the second is 6.000000
the first number is 0.757740 and the second is 2.000000
the first number is 0.743132 and the second is 7.000000
the first number is 0.392227 and the second is 1.000000
>>
more
>> printem = @(a,b)fprintf('the first number is %.1f and the second is %.1f\n',[a,b]')
>> printem(3,5)
the first number is 3.0 and the second is 5.0
>>

Más respuestas (2)

Walter Roberson
Walter Roberson el 19 de Oct. de 2011

1 voto

You appear to have used %.lf (lower-case L) instead of %.1f (digit one)
Harry MacDowel
Harry MacDowel el 19 de Oct. de 2011

0 votos

Try this
fprintf('the first number is %0.1f and the second is %0.1f\n',a,b)

Categorías

Más información sobre Entering Commands en Centro de ayuda y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by