Azzera filtri
Azzera filtri

Problem with output of fprintf command

2 visualizzazioni (ultimi 30 giorni)
function input(x)
Fw=0;
Fg=-12.9;
Bw=100;
Bg=197;
F=Fw+x*(Fg-Fw);
B=Bw+x*(Bg-Bw);
XX=x*100;
Line1_1='For an aqueous mixture of ';
Line1_2='glycol';
Line2_1='the freezing point is ';
Line2_2='Celcius and';
Line3_1='the boiling point is ';
Line3_2='Celcius';
fprintf(Line1_1 ,XX,Line1_2)
fprintf(Line2_1 ,F,Line2_2)
fprintf(Line3_1 ,B,Line3_2)
end
output: For an aqueous mixture of the freezing point is the boiling point is >>
Why is my function not including XX,B, and F in the output even though they are included in the fprintf functions? Just trying to figure out what code I'm missing to get the output to work correctly
  1 Commento
Steven Lord
Steven Lord il 31 Lug 2022
In addition to the feedback about format specifiers in your fprintf calls that others have given you, I want to recommend that you change the name of your function because input already has a meaning in MATLAB.

Accedi per commentare.

Risposta accettata

Cris LaPierre
Cris LaPierre il 30 Lug 2022
Look at the examples for fprintf in the documentation. You need to include a format specification to include variable values.
x = 2.5;
input(x)
For an aqueous mixture of 250 glycol the freezing point is -32.25 Celcius and the boiling point is 342.5 Celcius
function input(x)
Fw=0;
Fg=-12.9;
Bw=100;
Bg=197;
F=Fw+x*(Fg-Fw);
B=Bw+x*(Bg-Bw);
XX=x*100;
Line1_1='For an aqueous mixture of %g ';
Line1_2='glycol ';
Line2_1='the freezing point is %g ';
Line2_2='Celcius and ';
Line3_1='the boiling point is %g ';
Line3_2='Celcius ';
fprintf([Line1_1, Line1_2], XX)
fprintf([Line2_1,Line2_2], F)
fprintf([Line3_1,Line3_2], B)
end

Più risposte (0)

Tag

Prodotti


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by