How would I take the fprintf statement and values and input into a matrix?

1 Ansicht (letzte 30 Tage)
Collin Noblet
Collin Noblet am 16 Apr. 2018
Beantwortet: KSSV am 16 Apr. 2018
data = fopen('PH.csv');
pH = textscan(data,'%s %d','delimiter',',');
fclose(data);
rows = size(pH{1});
name = pH{1};
pH = pH{2};
for i = 1:rows
if pH(i) > 7
acid_base{i} = 'It is a base';
elseif pH(i) < 7
acid_base{i} = 'It is an acid';
else
acid_base{i} = 'It is neutral';
end
end
for i = 1:rows
fprintf('%s - pH: %d \n %s\n',name{i},pH(i),acid_base{i});
end
data = fopen('PH.csv');
pH = textscan(data,'%s %d','delimiter',',');
fclose(data);
rows = size(pH{1});
name = pH{1};
pH = pH{2};
for i = 1:rows
if pH(i) > 7
acid_base{i} = 'It is a base';
elseif pH(i) < 7
acid_base{i} = 'It is an acid';
else
acid_base{i} = 'It is neutral';
end
end
for i = 1:rows
fprintf('%s - pH: %d \n %s\n',name{i},pH(i),acid_base{i});
end
  2 Kommentare
Collin Noblet
Collin Noblet am 16 Apr. 2018
Instead of displaying the name, pH, and acidity using a fprintf statement, how would I display it in an array?

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Walter Roberson
Walter Roberson am 16 Apr. 2018
Use sprintf to create formatted character vectors that you can store for later use.

KSSV
KSSV am 16 Apr. 2018
pH = 1:14 ;
S = cell(length(pH),1) ;
for i = 1:length(pH)
    val = pH(i) ;
    if val < 7
        S{i} = sprintf('pH = %f,solution is acidic',val) ;
    elseif val ==7
        S{i} =  sprintf('pH = %f,solution is neutral',val) ;
    elseif val > 7
        S{i} =  sprintf('pH = %f,solution is basic',val) ;
    end
end

Kategorien

Mehr zu Deep Learning Toolbox 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!

Translated by