Ñ-Blu Blog

Shout This Box





Jawaban PTI-B Modul II PDF Print E-mail
Written by Administrator   
Sunday, 22 March 2009 07:32

Pembahasan Praktikum PTI Hari Senin 16 Maret 2009 dan 23 Maret 2009 (Versi Saya) IMHO....

Soal 1.

Buatlah sebuah program untuk menampilkan pesan apakah sebuah segitiga merupakan segitga siku-siku atau bukan? Masukan program terdiri dari 3 buah nilai yang semuanya merupakan panjang ketiga sisi segitiga. Setelah itu, progam akan memproses ketiga masukan nilai tersebut dan menghasilkan output apakah segitiga itu siku-siku atau bukan. Nilai ketiga masukan diasumsikan integer.

Contoh tampilan:

Masukan panjang sisi satu : 3

Masukan panjang sisi dua : 4

Masukan panjang sisi tiga : 5

Segitiga masukan adalah segitiga siku-siku

Contoh tampilan 2:

Masukan panjang sisi satu : 1

Masukan panjang sisi dua : 1

Masukan panjang sisi tiga : 1

 

Segitiga masukan bukan segitiga siku-siku 

Source Code

//Program Mencari Segitiga Siku-siku
/*
Nama : Pribadi Mumpuni Adhi
NIM : 16008237
Tanggal : 090323 */

#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
    int a,b,c;
    cout<<"Program Mencari jenis segitiga"<<endl;
    cout<<"=============================="<<"\n\n";
    cout<<"Segitiga siku2, c = sqrt(a*a+b*b)"<<endl;
    cout<<"Masukan panjang sisi 1 : ";cin>>a;
    cout<<"Masukan panjang sisi 2 : ";cin>>b;
    cout<<"Masukan panjang sisi 3 : ";cin>>c;
   
    if ((c*c==a*a+b*b) || (b*b==a*a+c*c) || (a*a==c*c+b*b) )  
        cout<<"Segitiga siku-siku";
    else
        cout<<"bukan segitiga siku-siku";
   
getch ();
return 0;
}

Soal 2.

Buatlah sebuah program pemberi indeks nilai seorang siswa jika diketahui ada 4 buah nilai masukan. Dengan aturan penilaian sebagai berikut:

Pertama kali, program akan meminta empat buah nilai masukan. Ke-4 nilai tersebut harus berada dalam range 0 sampai 100 (termasuk perbatasan). Ketika memasukan nilai, program akan mengecek apakah nilai keluar range, jika ya, program akan menampilkan pesan error dan dihentikan. Hal pertama yang harus dihitung jika ke-4 nilai sudah masuk dan benar adalah pembulatan kebawah (flooring) dari rata-rata ke-4 nilai masukan tersebut, kita sebut saja nilai ini adalah nilai mentah.  Kemudian, indeks dihitung dengan penentuan seperti di bawah ini:

A :           90 <= nilai mentah <= 100

B :           70 <= nilai mentah < 90

C :           50 <= nilai mentah < 70

D :           40 <= nilai mentah < 50

E :           0 <= nilai mentah < 40

Berikut contoh tampilan program:

Contoh 1 (masukan benar) :

Masukan nilai 1 : 20

Masukan nilai 2 : 20

Masukan nilai 3 : 20

Masukan nilai 4 : 20

Nilai mentah : 20

Indeks Anda adalah : E

Contoh 2 (masukan salah) :

Masukan nilai 1 : 100

Masukan nilai 2 : 50

Masukan nilai 3 : 88000

Error, nilai masukan ada yang salah...

source codenya :

//Program Indeks Nilai
/*
Nama : Pribadi Mumpuni Adhi
NIM : 16008237
Tanggal : 090323 */

#include <iostream>
#include <conio.h>
#include <cmath>
using namespace std;
int main()
{
    int a, b, c, d, e, x;
   
    cout<<"Program Mencari Indeks Nilai"<<endl;
    cout<<"============================"<<"\n\n";
         
    cout<<"Masukan nilai 1 : ";cin>>a;
    if ((a<=100) && (a>=0)) { //mnegecek apakah nilainya antara 0-100
        cout<<"Masukan nilai 2 : ";cin>>b;
        if ((b<=100) && (b>=0)){
            cout<<"Masukan nilai 3 : ";cin>>c;
            if ((c<=100) && (c>=0)){
                cout<<"Masukan nilai 4 : ";cin>>d;
                if ((d<=100) && (d>=0)){
                    x = (a+b+c+d);
                    e = floor(x)/4;                   
                    cout<<"Nilai nilai-rata: " <<(float)x/4<<endl ;                   
                    cout<<"Nilai mentah : "<<e;
                    if (e>=90)
                        cout<<"\nIndeks anda adalah : A";
                    else if (e>=70)
                        cout<<"\nIndeks anda adalah : B";
                    else if (e>=50)
                        cout<<"\nIndeks anda adalah : C";
                    else if (e>=40)
                        cout<<"\nIndeks anda adalah : D";
                    else
                        cout<<"\nIndeks anda adalah : E";  
                   
                }
                else
                cout<<"ngaco lo!";
            }
            else
            cout<<"ngaco lo!";
        }  
        else
        cout<<"ngaco lo!";            
    }
    else
    cout<<"ngaco lo!";

getch ();
return 0;   
}
 

 

Soal Bonus

Swap integer adalah sebuah teknik yang digunakan di dalam pemrograman untuk penukaran nilai 2 buah variabel integer. Misal, nilai variabel A = 4 dan variabel B = 7. Setelah melalui program ini variabel A akan berisi nilai 7 dan variabel B berisi nilai 4. Ada beberapa algoritma yang dapat digunakan untuk memecahkan masalah ini, salah satunya adalah teknik variabel temp. Algoritma ini adalah sebagai berikut

Int temp;

Temp = A;

A = B;

B = temp;

Dengan begini, nilai dari A dan B akan ditukar. Tetapi, algoritma ini menggunakan 3 variabel. Ada algoritma lain yang hanya menggunakan 2 variabel saja yaitu hanya memakai A dan B itu saja. Secara umum algoritma ini hanya menggunakan operasi tambah atau kurang saja. Tugas kalian adalah membuat algoritma ini (ingat, hanya menggunakan 2 variabel dengan operasi tambah / kurang saja).

Contoh tampilan:

Masukan nilai A: 4

Masukan nilai B : 7

Nilai A = 7 dan Nilai B = 4

 

Nah Kira-kira source codenya adalah :


#include <iostream>
#include <conio.h>

using namespace std;
int main()
{
  int a, b;
 
  cout<<"Masukan nilai A = ";cin>>a;
  cout<<"Msukan nilai B = ";cin>>b;
 
  a = a+b;
  b = a-b;
  a = a-b;
 
  cout <<"Nilai A = "<<a<<" dan " <<"nilai B = "<<b;
  getch();
  return 0; 
}

Penjelasannya :

Ketika di awal kita memasukkan nilai A = 4 dan B =7

nilai a = 4 + 7
sehingga nilai a = 11

untuk nilai b = 11-7
maka nilai b sekarang menjadi b=4

nilai a yang terakhir adalah a=11-4
maka nilai a sekarang menjadi a = 7

So nilai A dan B akan tertukar, mudahkan...

CMIIW

 

Last Updated ( Wednesday, 08 April 2009 23:38 )
 

Comments

avatar ayu
0
 
 
Bisa bantu saya ngerjakan soal algoritma ga...????
Saya mengalami kesulitan nech...
Tolong ya...please....

soalnya seperti ini :

Soal mata kuliah Bahasa Inggris, berupa soal pilihan berganda (multiple choice), sebanyak 50 buah soal.

Adapun penilaiannya adalah:
• jawaban yang benar, mendapat nilai +3,
• jawaban yang salah, mendapat nilai -1,
• tidak menjawab, mendapat nilai 0.

Seseorang akan mendapat nilai indeks :
• A, bila nilainya > 85;
• B, bila 70 ya...
thankz...
B
i
u
Quote
Code
List
List=
[*]
URL
Name *
Email (For verification & Replies)
URL
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Cancel
avatar ayu
+1
 
 
Soal mata kuliah Bahasa Inggris, berupa soal pilihan berganda (multiple choice), sebanyak 50 buah soal.

Adapun penilaiannya adalah:
• jawaban yang benar, mendapat nilai +3,
• jawaban yang salah, mendapat nilai -1,
• tidak menjawab, mendapat nilai 0.

Seseorang akan mendapat nilai indeks :
• A, bila nilainya > 85;
• B, bila 70ng terdiri dari nomor induk mahasiswa, nama mahasiswa dan jawaban ujian mahasiswa ( 50 buah jawaban).
B
i
u
Quote
Code
List
List=
[*]
URL
Name *
Email (For verification & Replies)
URL
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Cancel
avatar rikie
0
 
 
Thanxx sobb
Bagi" Ilmu Itu Penting
B
i
u
Quote
Code
List
List=
[*]
URL
Name *
Email (For verification & Replies)
URL
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Cancel
avatar Reclaimed Floor
0
 
 
but all these things are not in our hand....
B
i
u
Quote
Code
List
List=
[*]
URL
Name *
Email (For verification & Replies)
URL
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Cancel
B
i
u
Quote
Code
List
List=
[*]
URL
Name *
Email (For verification & Replies)
URL
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Working....
Finished
Failed