Nama Kelompok :
1. Ikhwan Maulana Akbana(D03112031)
2. M. Dwi Etsa Putra(D03112013)
3. Ricky Angga Dewantara(D03112027)
Soal:
Jawab:
Source Code :
1. Ikhwan Maulana Akbana(D03112031)
2. M. Dwi Etsa Putra(D03112013)
3. Ricky Angga Dewantara(D03112027)
Soal:
Diketahui data gas mulia dalam bentuk array sebagai berikut sebagai berikut :
· unsur: array [1..6] of string = ('He','Rn','Kr','Ne','Xe','Ar');
· energi: array [1..6] of integer = (2640,1040,1350,2080,1170,1520);
Buatlah algoritma dan program yang dapat menampilkan gas mulia apa saja yang memiliki nilai energi ionisasi diatas rata-rata energi ionisasi gas mulia dari Kecil ke Besar.
Jawab:
Algoritma :
rata:=((energi[1]+energi[2]+energi[3]+energi[4]+energi[5]+energi[6])/6);
for a:= 1 to 6 do
begin
if energi[a]>rata then
begin
b:=b+1;
etemp[b]:=energi[a];
utemp[b]:=unsur[a];
end;
end;
for c:= 1 to b-1 do
begin
for d:= b downto c-1 do
begin
if etemp[d] < etemp[d-1] then
begin
e:=etemp[d];
u:=utemp[d];
etemp[d]:=etemp[d-1] ;
utemp[d]:=utemp[d-1] ;
etemp[d-1]:=e;
utemp[d-1]:=u;
end;
end;
end;
for c:= 1 to c+1 do
begin
write (utemp[c],' ',etemp[c],' ');
end;
|
Source Code :
program gasmulai;
var
unsur: array [1..6] of string =('He','Rn','Kr','Ne','Xe','Ar');
energi: array [1..6] of integer = (2640,1040,1350,2080,1170,1520);
utemp: array [1..6] of string;
etemp: array [1..6] of integer;
i,j,l,sort,tukar, e: integer;
u: string;
rata : real;
begin
write ('hasil sorting gas mulia yang memiliki energi ionisasi di atas rata-rata energi');
writeln;
write ('ionisasi gas mulia mulai dari kecil ke besar');
writeln;
rata:=((energi[1]+energi[2]+energi[3]+energi[4]+energi[5]+energi[6])/6);
writeln;
write ('rata-rata energi gas mulia',rata);
writeln;
for i:= 1 to 6 do
begin
if energi[i]>rata then
begin
j:=j+1;
etemp[j]:=energi[i];
utemp[j]:=unsur[i];
end;
end;
for sort:= 1 to j-1 do
begin
for tukar:= j downto sort-1 do
begin
if etemp[tukar] < etemp[tukar-1] then
begin
e:=etemp[tukar];
u:=utemp[tukar];
etemp[tukar]:=etemp[tukar-1] ;
utemp[tukar]:=utemp[tukar-1] ;
etemp[tukar-1]:=e;
utemp[tukar-1]:=u;
end;
end;
end;
for l:= 1 to sort+1 do
begin
write (utemp[l],' ',etemp[l],' ');
writeln;
end;
readln;
end.
|
No comments:
Post a Comment