Follow Us @soratemplates

Kamis, 16 Maret 2017

Workshop 03


Assalamu'alaikum Wr. Wb
Hey, sekarang aku mau upload workshop algoritma pemrograman yang ketiga nih, semoga dapat bermanfaat bagi yang membaca yah, semoga bisa dijadikan bahan belajar ^^





  1.  Buatlah analisis dan algoritma untuk mencari titik tengah sebuah garis yang ujung titiknya adalah A(x1,y1) dan B(x2,y2)
    • Gambar contohnya
    • Analisis :
      XT = (x1+x2)/2
      YT = (y1+y2)/2

    • Rumus jarak 2 titik :
    XT = (x1+x2)/2
    YT = (y1+y2)/2

    • Algoritma mencari titik tengah sebuah garis
      {membaca data real berupa jari-jari bola (r), dan menghitung isi atau volumenya dengan jari-jari tertentu. Volume bola dihiutng dengan rumus V=4Ï€r3. Nilai V dicetak sebagai output ke peranti keluaran.}

    deklarasi :
    x1,x2,y1,y2 = integer
    XT,YT = float

    deskripsi:
    read(x1,x2,y1,y2)
    XT = (x1+x2)/2
    YT = (y1+y2)/2
    write(XT,YT)

    • pengerjaan di raptor

    • cpp

    hasil run :

  2. Membuat program algoritma untuk mencari isi bola bila di ketahui jari-jari bola
    Rumus isi bola = 4/3*phi*r*r*r

    Algoritma mencari isi bola bila di ketahui jari-jari bola
    {membaca data real berupa jari-jari bola (r), dan menghitung isi atau volumenya dengan jari-jari tertentu. Volume bola dihiutng dengan rumus V=4/3*phi*r*r. Nilai V dicetak sebagai output ke peranti keluaran}
    Deklarasi :
    phi = 3.14
    vol, r = float

    Deskripsi:
    read(r)
    vol=4/3*phi*r*r*r
    write(vol)

    reptornya :

    cpp :

    hasil :

  3. Analisis dan algoritma untuk mencari  hipotenusa dari segitiga phytagoras bila di ketahui sisi siku-sikunya.

    • Analisis:
      hipotenusa=sqrt(a*a + b*b)
    • Algoritma mencari  hipotenusa dari segitiga phytagoras bila di ketahui sisi siku-sikunya.
      {membaca panjang sisi depan (a) dan alas segitiga (a), dan menghitung hipotenusa dengan panjang sisi depan dan sisi alas tertentu. Hipotenusa dihitung dengan rumus hip=sqrt(a*a + b*b). nilai hip dicetak sebagai output}

      deklarasi :
      a, b, hip = float

      deskripsi
      read(a,b)
      hip=sqrt(a*a + b*b)
      write(hip)


      cpp :

       
      hasil run : 

  4. Analisis dan algoritma untuk menghitung konversi detik menjadi format jam:menit:detik
    • Analisis:
      jam : 3600 detik
      modulus: -sisa1 = jam%3600
                           -sisa2 =menit%60
             menit : 60 detik
             detik=sisa 2

    • algoritma menghitung konversi detik menjadi format jam:menit:detik
    {membaca jumlah detik (detik), dan menghitung jam=detik/3600, menit/60}
     deklarasi :
    detik, jam, menit,sisa1, sisa2 = integer

    deskripsi :
    read(detik)
    jam=detik/3600
    sisa1=detik-(jam*3600)
    menit=sisa1/60
    sisa2=sisa1-(menit*60)
    write(jam,menit,sisa2)

    Di reptor

    cpp :


     hasil run :

    Pada proses pembagian menggunakan floor agar dapat menjadi bilangan bulat dan dapat di hitung sisanya.
  5. Analisis dan Algoritma untuk menghitung konversi dari jam:menit:detik ke detik.

    • Analisis :
      jam = 3600 detik
      menit = 60 detik

    • Algoritma menghitung konversi dari jam:menit:detik ke detik
      {membaca jumlah jam, menit , detik dan menghitung dengan rumus  waktu=jam+menit+detik}

      Deklarasi:
      jam, menit, detik = integer

      Deskripsi :
      read(jam, menit,detik)|
      hjam=jam*3600
      hmenit=menit*60
      waktu=hjam+hmenit+detik
      write(waktu)

    Raptornya :


    C++ :
  6. Buatlah analisis dan algoritma untuk menghitung selisih 2 waktu. Output ditampilkan dalam bentuk jam:menit:detik. Asumsikan menggunakan sistem jam 24-an. Buat contoh kasus, misalnya berapa selisih waktu antara jam 3.45 sore dengan jam 10.23 malam. Selesaikan secara manual lebih dulu.
     
    Analisis:
    selisih detik:
    If((detik.detik-detik.detik)<0){
    det.detik = (60+detik.detik)-detik.detik;
    men.menit*60-60;} else{det.detik=detik.detik-deti.detik;}
    selisih menit:
    if((menit.menit-meni.menit)<0){
    men.menit=(60+meni.menit)-menit.menit;
    j.jam*60-60;} else { men.menit=menit.menit-meni.menit;}
    selisih jam:
    j.jam=jam.jam-ja.jam;
    Algoritma:
    {membaca nilai waktu pertama [jam(jam.jam), menit(menit),detik(detik)], nilai waktu kedua [jam(ja.jam),menit(meni,menit), detik(deti.detik)]. Menghitung selisih dengan mengurangkan waktu perjam dengan waktu kedua}
    Deklarasi:
                   jam        (integer)
                   menit      (integer)
                   detik      (integer)
    Deskripsi:
    read(jam,menit,detik)
    waktu=waktu2-waktu1
    write(waktu) 
    a. Raptor

     


    hasil run :
    b. cpp


    hasil run :

  7.  next
  8.  next
  9.  next
  10.  next
  11.  next
  12. Buatlah analisis dan algoritma untuk menghitung jumlah dari dari dua tanggal yang dimasukkan user. Misalnya, berapa hari dari 6/1/90 sampai 8/3/92 ? Anggap satu tahun 365 hari dan anggap semua komponen tanggal pertama SELALU LEBIH KECIL dari komponen tanggal kedua.
    algoritma
    deklarasi :
    tanggal1, bulan1, tahun1,
    tanggal2, bulan2, tahun2, tanggal : integer

    deskripsi :
    read(
    tanggal1, bulan1, tahun1,tanggal2, bulan2, tahun2)
    tanggal=tanggal2-tanggal1
    write(tanggal)

    a. raptor
     hasil run :

    b. cpp

    hasil run :

Tidak ada komentar:

Posting Komentar