将if语句转换为pascal的大小写?
Convert if statement to case of in pascal?
我正在使用 pascal,你可以将这段代码语句转换为大小写吗?在帕斯卡?
这是我在 Pascal 上的程序,if 语句的大小写。
非常感谢
TYPE
MHS = record
nama1,nama2:string;
ipk1,ipk2:longint;
nim1,nim2:integer;
end;
var
DataMhs : MHS;
Begin
clrscr;
write('Masukan Nama Mahasiswa 1 : ');
readln(DataMhs.nama1);
write('Masukan NIM Mahasiswa 1 : ');
readln(DataMhs.nim1);
write('Masukan IPK Mahasiswa 1 : ');
readln(DataMhs.ipk1);
write('Masukan Nama Mahasiswa 2 : ');
readln(DataMhs.nama2);
write('Masukan NIM Mahasiswa 2 : ');
readln(DataMhs.nim2);
write('Masukan IPK Mahasiswa 2 : ');
readln(DataMhs.ipk2);
if DataMhs.ipk1 > DataMhs.ipk2 then
write('IPK ',DataMhs.nama1,'Lebih besar')
else if DataMhs.ipk2 > DataMhs.ipk1 then
write('IPK ',DataMhs.nama2,'Lebih besar')
else
write('IPK ',DataMhs.nama1,' dengan ',DataMhs.ipk2,' SAMA');
readln;
end.
不知道怎么转换,求助。哈哈
如果你想让你的代码更好看,那么你可以使用它 -->
with DataMhs do
begin
if ipk1 > ipk2 then write('IPK ',DataMhs.nama1,'Lebih besar');
else if ipk1 < ipk2 then write('IPK ',DataMhs.nama2,'Lebih besar');
else write('IPK ',DataMhs.nama1,' dengan ',DataMhs.ipk2,' SAMA');
end;
但我不认为 案例
对此很有用。因为大小写用于 已知值 例如:
case a of
1: Writeln(' Some code here') ;
2: Writeln(' Some code here') ;
3: Writeln(' Some code here') ;
4: Writeln(' Some code here') ;
else Writeln(' That is used for other values. ');
end;
这种情况不能用大小写。
我怀疑您的想法可能类似于以下内容:
type
TCompareResult = (cmpLeftGreater, cmpRightGreater, cmpEqual);
case CompareInts(DataMhs.ipk1, DataMhs.ipk2) of
cmpLeftGreater:
write('IPK ', DataMhs.nama1, 'Lebih besar');
cmpRightGreater:
write('IPK ', DataMhs.nama2, 'Lebih besar');
else {cmpEqual}
write('IPK ', DataMhs.nama1, ' dengan ', DataMhs.ipk2, ' SAMA');
end;
但是,您仍然需要实现这个 CompareInts
函数,它仍然需要使用您在原始代码中已有的相同条件结构:
function CompareInts(left, right: Integer): TCompareResult;
begin
if left > right then
Result := cmpLeftGreater
else if right > left then
Result := cmpRightGreater
else
Result := cmpEqual;
end;
因此,该功能并没有真正让您受益。
我正在使用 pascal,你可以将这段代码语句转换为大小写吗?在帕斯卡? 这是我在 Pascal 上的程序,if 语句的大小写。
非常感谢
TYPE
MHS = record
nama1,nama2:string;
ipk1,ipk2:longint;
nim1,nim2:integer;
end;
var
DataMhs : MHS;
Begin
clrscr;
write('Masukan Nama Mahasiswa 1 : ');
readln(DataMhs.nama1);
write('Masukan NIM Mahasiswa 1 : ');
readln(DataMhs.nim1);
write('Masukan IPK Mahasiswa 1 : ');
readln(DataMhs.ipk1);
write('Masukan Nama Mahasiswa 2 : ');
readln(DataMhs.nama2);
write('Masukan NIM Mahasiswa 2 : ');
readln(DataMhs.nim2);
write('Masukan IPK Mahasiswa 2 : ');
readln(DataMhs.ipk2);
if DataMhs.ipk1 > DataMhs.ipk2 then
write('IPK ',DataMhs.nama1,'Lebih besar')
else if DataMhs.ipk2 > DataMhs.ipk1 then
write('IPK ',DataMhs.nama2,'Lebih besar')
else
write('IPK ',DataMhs.nama1,' dengan ',DataMhs.ipk2,' SAMA');
readln;
end.
不知道怎么转换,求助。哈哈
如果你想让你的代码更好看,那么你可以使用它 -->
with DataMhs do
begin
if ipk1 > ipk2 then write('IPK ',DataMhs.nama1,'Lebih besar');
else if ipk1 < ipk2 then write('IPK ',DataMhs.nama2,'Lebih besar');
else write('IPK ',DataMhs.nama1,' dengan ',DataMhs.ipk2,' SAMA');
end;
但我不认为 案例
对此很有用。因为大小写用于 已知值 例如:
case a of
1: Writeln(' Some code here') ;
2: Writeln(' Some code here') ;
3: Writeln(' Some code here') ;
4: Writeln(' Some code here') ;
else Writeln(' That is used for other values. ');
end;
这种情况不能用大小写。
我怀疑您的想法可能类似于以下内容:
type
TCompareResult = (cmpLeftGreater, cmpRightGreater, cmpEqual);
case CompareInts(DataMhs.ipk1, DataMhs.ipk2) of
cmpLeftGreater:
write('IPK ', DataMhs.nama1, 'Lebih besar');
cmpRightGreater:
write('IPK ', DataMhs.nama2, 'Lebih besar');
else {cmpEqual}
write('IPK ', DataMhs.nama1, ' dengan ', DataMhs.ipk2, ' SAMA');
end;
但是,您仍然需要实现这个 CompareInts
函数,它仍然需要使用您在原始代码中已有的相同条件结构:
function CompareInts(left, right: Integer): TCompareResult;
begin
if left > right then
Result := cmpLeftGreater
else if right > left then
Result := cmpRightGreater
else
Result := cmpEqual;
end;
因此,该功能并没有真正让您受益。