Contoh
Soal Algoritma & Pemograman
Berikut ini adalah Contoh soal Pemrograman dan Algoritma dengan menggunakan Pascal
Latihan
1. Buatlah prosedur untuk menambahkan 2 buah bilangan. Deklarasikan sebuah prosedur untuk menambahkan 2 buah bilangan dan untuk menyimpan hasilnya.
Output yang diinginkan :
Latihan
1. Buatlah prosedur untuk menambahkan 2 buah bilangan. Deklarasikan sebuah prosedur untuk menambahkan 2 buah bilangan dan untuk menyimpan hasilnya.
Output yang diinginkan :
Penyelsesaian
program proc_rerata2bilangan;
uses
wincrt;
Var
Bil1, Bil2,Hasil : real;
procedure Tambah(a,b: real; var Result : real);
Begin
Result := a + b;
End;
Begin
Write('Masukkan Bilangan 1 : ');
readln(Bil1);
Write('Masukkan Bilangan 2 : ');
readln(Bil2);
Tambah(Bil1,Bil2,Hasil);
Writeln('Hasil Penjumlahan 2 Bilangan : ', Hasil:2:0);
Writeln('Rata ratanya adalah : ', Hasil/2:1:1);
End.
2. Buatlah prosedur untuk menghitung luas Lingkaran
Penyelesaian :
PROGRAM
luas_lingkaran;
USES
wincrt;
var
r : integer;
luas : real;
procedure hitung_luas(r : integer);
Begin
luas := 3.14 * sqr(r);
writeln('Luas = ', luas:0:2);
End;
procedure input_data;
Begin
write('Inputkan nilai r : ');
readln(r);
End;
BEGIN
input_data;
hitung_luas(r);
hitung_luas(7);
END.
3. Dengan menggunakan prosedur yang sama seperti pada soal No 1, modifikasilah blok pendeklarasian variabel global dan blok program utama diatas agar mampu menghitung rata rata dari 4 buah bilangan ( Ingat, deklarasi prosedur biarkan tetap sama). Ini akan melatih anda bagaimana teknik pemanggilan prosedur dalam Blok program utama.
Output yang diinginkan :
program proc_rerata2bilangan;
uses
wincrt;
Var
Bil1, Bil2,Hasil : real;
procedure Tambah(a,b: real; var Result : real);
Begin
Result := a + b;
End;
Begin
Write('Masukkan Bilangan 1 : ');
readln(Bil1);
Write('Masukkan Bilangan 2 : ');
readln(Bil2);
Tambah(Bil1,Bil2,Hasil);
Writeln('Hasil Penjumlahan 2 Bilangan : ', Hasil:2:0);
Writeln('Rata ratanya adalah : ', Hasil/2:1:1);
End.
2. Buatlah prosedur untuk menghitung luas Lingkaran
Penyelesaian :
PROGRAM
luas_lingkaran;
USES
wincrt;
var
r : integer;
luas : real;
procedure hitung_luas(r : integer);
Begin
luas := 3.14 * sqr(r);
writeln('Luas = ', luas:0:2);
End;
procedure input_data;
Begin
write('Inputkan nilai r : ');
readln(r);
End;
BEGIN
input_data;
hitung_luas(r);
hitung_luas(7);
END.
3. Dengan menggunakan prosedur yang sama seperti pada soal No 1, modifikasilah blok pendeklarasian variabel global dan blok program utama diatas agar mampu menghitung rata rata dari 4 buah bilangan ( Ingat, deklarasi prosedur biarkan tetap sama). Ini akan melatih anda bagaimana teknik pemanggilan prosedur dalam Blok program utama.
Output yang diinginkan :
Penyelsesaian
program proc_rerata4bilangan;
uses
wincrt;
Var
Bil1, Bil2, Bil3, Bil4,Hasil : real;
procedure Tambah(a,b: real; var Result : real);
Begin
Result := a + b;
End;
Begin
Write('Masukkan Bilangan 1 : ');
readln(Bil1);
Write('Masukkan Bilangan 2 : ');
readln(Bil2);
Write('Masukkan Bilangan 3 : ');
readln(Bil3);
Write('Masukkan Bilangan 4 : ');
readln(Bil4);
Tambah(Bil1,Bil2,Hasil);
Tambah(Hasil,Bil3,Hasil);
Tambah(Hasil,Bil4,Hasil);
Writeln('Hasil Penjumlahan 4 Bilanagn : ', Hasil:2:0);
Writeln('Rata ratanya adalah : ', Hasil/4:2:0);
End.
4. Buatlah sebuah program yang menampilkan deret bilangan dari mulai 1 sampai dengan N, dan deklarasikan sebuah prosedur yang mampu mengklasifikasikan bilangan tersebut masuk kedalam kategori bilangan Genap atau Ganjil.
Output yang diinginkan :
Penyelsesaian
program proc_Klasifikasi_Deret;
uses
wincrt;
Var
Kategori : String;
i,N : integer;
procedure Klasifikasikan(a : integer; Var result : String);
Begin
If a mod 2 = 0 then
result := 'GENAP'
Else
result := 'GANJIL';
End;
Begin
Write('Masukkan nilai Maksimum Deret : ');
readln(N);
For i := 1 to N do
Begin
write(' ( ',i);
Klasifikasikan(i,Kategori);
write('-',Kategori,' )');
End;
End.
Tidak ada komentar:
Posting Komentar