please help with this If else statement

1 回表示 (過去 30 日間)
Noah Jacob
Noah Jacob 2019 年 4 月 13 日
コメント済み: Noah Jacob 2019 年 4 月 16 日
clear all
clc
Toefl=input('Toefl=')
Math=input('Mathematic=')
Bio=input('Biologi=')
if(Toefl >= 601) && (Toefl <= 670)
disp ('Excellent')
if(Math >= 601) && (Math <= 670)
disp ('Excellent')
if(Bio >= 601) && (Bio <= 670)
disp ('Excellent')
elseif(Bio >= 501) && (Bio <= 600)
disp ('Good')
elseif(Bio >= 401) && (Bio <= 500)
disp ('Average')
elseif Bio <= 400
disp ('Bad')
else
disp ('Data tidak valid')
end
elseif(Math >= 501) && (Math <= 600)
disp ('Good')
if(Bio >= 601) && (Bio <= 670)
disp ('Excellent')
elseif(Bio >= 501) && (Bio <= 600)
disp ('Good')
elseif(Bio >= 401) && (Bio <= 500)
disp ('Average')
elseif Bio <= 400
disp ('Bad')
else
disp ('Data tidak valid')
end
elseif(Math >= 401) && (Math <= 500)
disp ('Average')
if(Bio >= 601) && (Bio <= 670)
disp ('Excellent')
elseif(Bio >= 501) && (Bio <= 600)
disp ('Good')
elseif(Bio >= 401) && (Bio <= 500)
disp ('Average')
elseif Bio <= 400
disp ('Bad')
else
disp ('Data tidak valid')
end
elseif Math <= 400
disp ('Bad')
if(Bio >= 601) && (Bio <= 670)
disp ('Excellent')
elseif(Bio >= 501) && (Bio <= 600)
disp ('Good')
elseif(Bio >= 401) && (Bio <= 500)
disp ('Average')
elseif Bio <= 400
disp ('Bad')
else
disp ('Data tidak valid')
end
else
disp('Data tidak valid')
if(Bio >= 601) && (Bio <= 670)
disp ('Excellent')
elseif(Bio >= 501) && (Bio <= 600)
disp ('Good')
elseif(Bio >= 401) && (Bio <= 500)
disp ('Average')
elseif Bio <= 400
disp ('Bad')
else
disp ('Data tidak valid')
end
end
elseif (Toefl >= 501) && (Toefl <= 600)
disp ('Good')
elseif (Toefl >= 401) && (Toefl <= 500)
disp ('Average')
elseif Toefl <= 400
disp ('Bad')
else
disp('Data tidak Valid')
end
how to summarize this code
the asked results maybe looks like this
Toefl=602
Toefl =
602
Mathematic=602
Math =
602
Biologi=602
Bio =
602
Excellent
Excellent
Excellent
  6 件のコメント
madhan ravi
madhan ravi 2019 年 4 月 13 日
Could you post the question which was given to you?
Noah Jacob
Noah Jacob 2019 年 4 月 13 日
the question just spoken in class. It's like quiz that you may skip the exam when you've done it.
the asked question is make code with 3 different input and make the 3 ouput using if else statement in matlab. forbidden to use like what you've said. it's ike grading in student's report.
i've the code and the good result. But it's use C++ code. here the code
#include <iostream>
#include <string>
using namespace std;
string cekNilai(string nilaitoefl) {
int nilaitoefl_int = stoi(nilaitoefl);
string keterangan = "";
if (nilaitoefl_int >= 601 && nilaitoefl_int <= 670) {
keterangan = "excellent";
}
else if (nilaitoefl_int >= 501 && nilaitoefl_int <= 600) {
keterangan = "good";
}
else if (nilaitoefl_int >= 401 && nilaitoefl_int <= 500) {
keterangan = "avg";
}
else if (nilaitoefl_int <= 400) {
keterangan = "bad";
}
else {
keterangan = "invalid input";
}
return keterangan;
}
int main()
{
string toefl1, toefl2, toefl3;
cout << "masukan toefl1: ";
cin >> toefl1;
cout << "masukan toefl2: ";
cin >> toefl2;
cout << "masukan toefl3: ";
cin >> toefl3;
cout << "-------------hasil----------" << endl;
cout << "Toefl-1: " << cekNilai(toefl1) << endl;
cout << "Toefl-2: " << cekNilai(toefl2) << endl;
cout << "Toefl-3: " << cekNilai(toefl3) << endl;
getchar();
getchar();
return 0;
}
i wonder matlab can make this code
:)

サインインしてコメントする。

採用された回答

Jan
Jan 2019 年 4 月 13 日
編集済み: Jan 2019 年 4 月 15 日
Similar to your C++ code, just with some shorter names for variables to reduce the chance for typos:
function main
toefl1 = input('masukan toefl1: ');
toefl2 = input('masukan toefl2: ');
toefl3 = input('masukan toefl3: ');
disp(cekNilai(toefl1));
disp(cekNilai(toefl2));
disp(cekNilai(toefl3));
end
function r = cekNilai(n)
if n >= 601 && n <= 670
r = 'excellent';
elseif n >= 501 && n <= 600
r = 'good';
elseif n >= 401 && n <= 500
r = 'avg';
elseif n <= 400
r = 'bad';
else
r = 'invalid input';
end
end
  10 件のコメント
Walter Roberson
Walter Roberson 2019 年 4 月 15 日
Yes, other than the change I suggested earlier to
disp(['Your Toefl1 grade is: ', cekNilai(toefl1)])
WIth the single function arranged that way, you only have one "end" statement and so are within the restrictions you have told us about.
Note: if you were to remove the "function main" statement, converting this into a script, then you would need to move the function cekNilai into a separate file in order to maintain the "only one end statement" restriction. Functions that are in scripts need to have "end" statement that matches their "function" line, but functions that are in function-only files do not need that.
Noah Jacob
Noah Jacob 2019 年 4 月 16 日
Thank you very much for your helping @jan & @walter.
i've submit it and hopefully my lecturer will admit it.
May god bless you two. :)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLarge Files and Big Data についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by