MEMBUAT PROGRAM PENGELOLAAN PENUMPANG ANGKOT dengan JAVASCRIPT

Поделиться
HTML-код
  • Опубликовано: 16 дек 2024

Комментарии • 325

  • @Unknown-hl1jd
    @Unknown-hl1jd 2 года назад +20

    terimakasih atas ilmunya pak dhika.
    var penumpang = [];
    // tambah penumpang
    var tambahPenumpang = function(namaPenumpang) {

    // jika angkot kosong
    if (penumpang.length == 0) {
    penumpang.push(namaPenumpang);
    return penumpang;
    }
    // jika angkot ada penumpang

    // perulangan untuk menelusuri seluruh kursi dari awal
    for( var i = 0; i < penumpang.length; i++) {
    // jika kursi bernilai undefined
    if(penumpang[i] == undefined) {

    // perulangan untuk setiap elemen array
    for (var j = 0; j < penumpang.length; j++) {
    // jika kursi bernilai undefined dan nama penumpang sama dengan salah satu elemen array
    if(namaPenumpang == penumpang[j]) {
    console.log(namaPenumpang + ' Sudah ada didalam angkot.');
    return penumpang;
    }
    }
    // jika kursi bernilai undefined dan nama penumpang tidak sama dengan salah satu elemen array
    if (namaPenumpang != penumpang[i])
    penumpang[i] = namaPenumpang;
    return penumpang;
    }
    // jika kursi tidak bernilai undefined dan nama penumang sama dengan salah satu elemen array
    if(namaPenumpang == penumpang[i]) {
    console.log(namaPenumpang + ' Sudah ada didalam angkot.');
    return penumpang;
    }
    // jika kursi sudah penuh
    if(i == penumpang.length - 1) {
    penumpang.push(namaPenumpang);
    return penumpang;
    }
    }

    }
    // hapus penumpang
    var hapusPenumpang = function(namaPenumpang) {
    // jika tidak ada penumpang didalam angkot
    if(penumpang.length == 0) {
    console.log('Angkot masih kosong.');
    return penumpang;
    }
    // pengulangan untuk menelusuri elemen array
    for(var i = 0; i < penumpang.length; i++) {
    // jika nama penumpang yang ingin dihapus ada didalam array
    if( namaPenumpang == penumpang[i]) {
    penumpang[i] = undefined;
    return penumpang;
    }
    // jika nama penumpang yang ingin dihapus tidak ada didalam array
    else if( i == penumpang.length - 1) {
    console.log(namaPenumpang + ' Tidak ada didalam angkot.')
    return penumpang;
    }
    }
    }

  • @136_elgaarsiaikramramdani5
    @136_elgaarsiaikramramdani5 4 года назад +10

    Awalnya butuh proses utk memahami algoritmanya, tapi akhirnya paham juga

  • @andiwiradinata1335
    @andiwiradinata1335 4 года назад +13

    Mantap sekali Latihan yang diberikan Pak!
    Baru belajar JS sudah bisa paham sampai tahap ini dan semua function yang dipelajari dapat diterapkan didalam Latihan ini, Mantap Pak!
    var penumpang = ['Ando', undefined, 'Loli'];
    var tambahPenumpang = function(nama, arr) {
    if (arr.length == 0)
    {
    arr.push(nama);
    return arr;
    }
    else
    {
    var checkPenumpang = arr.find(function(e) {
    if (e == nama)
    {
    return true;
    }
    })
    var ambilIndexPenumpang = arr.findIndex(function(e) {
    return e == undefined;
    })

    if (checkPenumpang === nama)
    {
    console.log(nama + ' sudah ada didalam angkot')
    return arr;
    }
    else if (ambilIndexPenumpang < 0 && checkPenumpang == undefined)
    {
    arr.push(nama);
    return arr;
    }
    else if (checkPenumpang == undefined && penumpang.length > 0)
    {
    arr[ambilIndexPenumpang] = nama;
    return arr;
    }
    }
    }

    • @andiwiradinata1335
      @andiwiradinata1335 4 года назад +4

      @Nirma Ulifa Janata
      Q: mas mau nanya dong, arr itu array kan ya?
      A: iyaa, arr adalah sebuah parameter yang menerima argument array.
      Q: tapi variabel kamu kan pake nama penumpang, nah itu gmna? kok bisa diganti ama arr di syntax fungsinya?
      A: nama juga adalah sebuah parameter didalam function tambahPenumpang, syntax bagian mna kah yang mbak anggap parameter nama diganti sama arr? hehehe
      Q: terus juga yang 'e', apakah 'e' itu mutlak nunjukkin elemen yang ada di array ya?
      A: iyaa, contohnya
      var checkPenumpang = arr.find(function(e) {
      if (e == nama)
      {
      return true;
      }
      parameter e menampung nilai yg ada didalam arr.

    • @adiwiranto6289
      @adiwiranto6289 8 месяцев назад

      makasih bang berkat tambahan varialbel ini :
      var checkPenumpang = arr.find(function(e) {
      if (e == nama)
      {
      return true;
      }
      })
      bisa ngecek kesebelahnya kalo yang dari pak andika dia cuma ngecek index ke 0 aja ke sebelahnya,
      jadi otomatis nama di penumpang di index ke 2 jadi dobel, eh btw ini funcion ekspresion kan ya namanya karna di dalam variabel?

    • @miftachullatif3951
      @miftachullatif3951 3 месяца назад

      @@adiwiranto6289 maksudnya kembalikan true itu gmna bg

  • @dennysutanto6728
    @dennysutanto6728 5 лет назад +25

    apa cuma gw disini yaa dari semenjak awal ngikutin sampe else if while for masih bisa.. Semenjak masuk ke Function ama array trus nyoba kasus kayak gini malah jd puyeng ? yang menyebabkann gw berkali kali nonton ulang video mas sandhika tentang Function dan Array lagi??

    • @ikramgunawan6536
      @ikramgunawan6536 4 года назад +1

      Iya, array dan function mumet ngikutinya... perlu berulang2...

    • @unpimando7341
      @unpimando7341 4 года назад +2

      wkwkwk sama bro.... ketika di sini hampir putus asa ni aku... ketika di video ini bikin puyeng...tapi tetap berusaha cari ngerti wkwkwk

    • @vincenthadianta
      @vincenthadianta 4 года назад +1

      Hadir 😂

    • @alfirmanejhapahlepi8228
      @alfirmanejhapahlepi8228 4 года назад +3

      sama, alhamdulillah setelah mengulang ulang akhirnya ngerti

    • @ryanarkhan4424
      @ryanarkhan4424 3 года назад +2

      bener woi, gua udh 4x ngulang dr function intro sampai vidio ini, belum bisa ngerjain studi kasus yg iniiiiii. Kasih semangatt plss😢

  • @iruru1298
    @iruru1298 2 месяца назад

    Terimakasih Pak Sandi... Baru belajar.... hehe
    var penumpangAngkot1 = []
    function tambahPenumpang (a,b) {
    if (b.find(function(e) {return e === 'Kosong'}) === 'Kosong') {
    var indexKosong = b.findIndex(function(e) {
    return e == 'Kosong'
    })
    b[indexKosong] = a
    }
    else if(b.find(function(e) {return e == a}) ==a) {
    console.log('Penumpang ini Sudah ada di dalam Angkot')
    }
    else {
    b.push(a)
    }
    console.log(b)
    }
    function turunPenumpang (a,b){
    var index = b.findIndex(function(e) {
    return e == a
    }
    )
    b.splice(index,1,'Kosong')
    console.log(b)
    }

  • @thiobakti2159
    @thiobakti2159 6 лет назад +2

    Terimakasih vidionya sangat membantu saya belajar pemograman WEB.

  • @fahmirabiulkarim8867
    @fahmirabiulkarim8867 5 лет назад +1

    enakeun pisan sih ini tutorialnya

  • @FransinAIO
    @FransinAIO 2 года назад +1

    untuk rules yg jika ada nama yang sama dibalik aja syntax nya jadi namaPenumpang == penumpang[ i ]...trima kasih pak ilmunya...

  • @karyabq14consultanmansur94
    @karyabq14consultanmansur94 5 лет назад +2

    Terima kasih ilmu nya... penjelasannya bisa di mengerti

  • @ekosaputro1640
    @ekosaputro1640 5 лет назад +23

    saya tidak kuliah/sekolah jurusan IT, tapi penjelasan pak sandhika sangat mudah dipahami
    code saya walau agak beda hehehe;
    var penumpang = [];
    function tambahPenumpang(nama, array) {
    if(array.indexOf(nama) > -1){
    console.log(nama + " sudah ada di dalam angkot")
    } else {
    var kursiKosong = array.findIndex(Object.is.bind(null, undefined));
    if(kursiKosong >= 0){
    array[kursiKosong] = nama;
    } else {
    array.push(nama);
    }
    }
    return array;
    }

    • @ilhamrharijanto8387
      @ilhamrharijanto8387 4 года назад

      Halo bang Eko. kalau boleh tau, bang Eko belajar dimana saja selain di channel ini?
      Thx

    • @okejek1234
      @okejek1234 3 года назад +1

      Bg saya kok kurang paham di latihan ini ya masi ada yg ngeh gitu, sebaiknya perdalam materi apa itu bg?

    • @fahrihaidar7017
      @fahrihaidar7017 2 года назад

      ini saya janin sudah oke, boleh minta masing masin keterangannya ? buat saya pelajari

    • @agungrariza
      @agungrariza Год назад

      nahh ini lebih akurat, punya pak sandhika masih ada bug dimana kalo ada undefined masih tetep di push biarpun ada nama yang sama😁btw thank you mas

  • @williamphilip6893
    @williamphilip6893 7 лет назад +1

    makasih bang sandhika akhrnya nongkrong lagi didpan chanell ini ilmu baru lagi..cepat sembuh bang..dan satu lagi jangan lupa titik koma :) sukses bang sandika

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 лет назад

      terimakasih bang William doanya.. sukses terus juga untuk anda.. :)

  • @caturlangit9371
    @caturlangit9371 2 года назад +1

    makasih pak,sehat selalu, otw part 40

  • @budi-dev8814
    @budi-dev8814 3 года назад +1

    Mantap pak, izin download yakk hehe

  • @sapeikids984
    @sapeikids984 7 лет назад +3

    Salam Kenal mas sandhika ,atas ilmunya sangat bermanfaat sekali ,smoga lekas sembuh.
    Salam Sapei

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 лет назад

      salam kenal juga Sapei.. terimakasih ya doanya.. :)

  • @isacnewton9075
    @isacnewton9075 6 лет назад +2

    Makasih ilmu nya

  • @ismayanti2262
    @ismayanti2262 7 лет назад +4

    Ketinggalan jauh hdwwhhh,video kemarin aja belum tengok pak
    Semngat 45 pak

  • @guramezuku2294
    @guramezuku2294 Год назад +1

    Makasih pak Dhikaa

  • @ininamakokharusdijarak6815
    @ininamakokharusdijarak6815 3 года назад +1

    // Keren😃

  • @brandoagara6395
    @brandoagara6395 6 лет назад +6

    puyeng saya pak hahaha
    tetap semangat tapi pastinya pak :D

  • @nabillaaaaa
    @nabillaaaaa 4 года назад +1

    Terima kasih pak

  • @caturlangit9371
    @caturlangit9371 2 года назад +2

    mumet sumpah🤤

  • @zaiidleader
    @zaiidleader 7 лет назад +1

    semoga cepet sembuh pa

  • @givhaikal
    @givhaikal 4 года назад +2

    punya saya begini
    var penumpang = ["ayas", "budi", undefined, "otong"];
    var tambahPenumpang = function(namaPenumpang, penumpang)
    {
    if(penumpang.length == 0) //angkot kosong
    {
    penumpang.unshift(namaPenumpang);
    }
    else if(typeof(penumpang) == "object")//angkot sudah berisi penumpang
    {
    var kosong = penumpang.findIndex(function(e) //cek jika ada elemen undefined
    {
    return e == undefined; //kembalikan index yang elemennya kosong
    });
    var sama = penumpang.find(function(e) //cek jika ada elemen yang sama
    {
    return e == namaPenumpang;
    });
    if(kosong != undefined) //jika ada elemen kosong
    {
    penumpang.splice(kosong, 1, namaPenumpang);
    }
    else if(sama == namaPenumpang)//jika ada penumpang yang namanya sama
    {
    console.log("Error, nama yang dimasukan sudah ada...");
    }
    else //jika semua tempat duduk sudah dipenuhi
    {
    penumpang.push(namaPenumpang);
    }
    }
    else //angkot tidak ada
    {
    console.log("Angkot tidak ada!");
    }
    return penumpang;
    };

  • @rakazakaria4954
    @rakazakaria4954 4 года назад +15

    Dari belajar C++ sampe ke JavaScript yang bikin pusing itu emang Array
    wkwkwkwkwkwk
    #tinggalkanjejak

  • @bawidyantoro
    @bawidyantoro Год назад +7

    Jujur saya bingung sama kodingnya, tapi paham sama rulesnya. Masih kagok pas eksekusi bener gak yah malah eror terus. Tapi saya gak mau nyerah meskipun akhirnya nyontek juga jawabannya. Tapi saya coba ulang-ulangin dengan sambil pahami lagi kodingnya. Terutama bagian pengkodisian masih bingung kenapa di dalam Else ada If dan else if lagi. Makasih mas Dhika untuk ilmunya.

    • @Serawai854
      @Serawai854 Год назад

      liat di chatgpt aja bang,,,, copy aja semua sintaxnya ke AI ntar dibenerin tuh sintaxnya

    • @seputarrahasia7655
      @seputarrahasia7655 11 месяцев назад +1

      skrg udah sampe mana bang?@ihsanpraditya

  • @danielherysetiawan657
    @danielherysetiawan657 2 года назад +1

    terima kasih....

  • @viraleveryday9086
    @viraleveryday9086 7 лет назад +3

    Keep it up :)

  • @xoxoxoxo7572
    @xoxoxoxo7572 3 года назад

    tambah Penumpang versi dikombinasikan dengan method includes :
    mana tau membantu bagi yg membutuhkan :)
    var penumpang = [];
    function tambahPenumpang(nama, arr) {
    if (arr.includes(nama)) {
    console.log(nama + ' sudah ada didalam angkot');
    } else if (arr.includes(undefined)) {
    arr[arr.indexOf(undefined)] = nama;
    } else {
    arr.push(nama);
    }
    return arr;
    }

  • @fechls
    @fechls 3 года назад +8

    maaf sepertinya ada yang salah jika di 19:43 ,console nya diisi :
    > tambahPenumpang('Doddy', penumpang);
    nanti yang muncul malah :
    > (3) ["Sandhika", "Doddy", "Doddy"]
    karena 'Doddy' dimasukkan ke if (penumpang[i] == undefined) terlebih dahulu bukan ke else if (penumpang[i] == namaPenumpang)
    koreksi jika saya salah

    • @thoriq_aulia
      @thoriq_aulia 3 года назад

      setuju

    • @thoriq_aulia
      @thoriq_aulia 3 года назад +1

      tapi solusi yang diajukan kurang tepat karena hasilnya akan tetap sandhika - dody - dody
      untuk mengecek ketersediaan nama harus loop seluruh isi array, jadi harusnya dilakukan 2x loop, pertama untuk mengecek ketersediaan nama, loop kedua untuk mengecek kursi kosong (undefined),
      lalu "else if(i == penumpang.length)" tidak diperlukan, cukup di hapus dan di ganti "return penumpang.push(namaPenumpang)" diluar loop, karena jika kita sudah loop sampai akhir namun belum return tandanya kondisi kursi kosong dan kondisi nama yang sama tidak terpenuhi.

    • @wimorasarwindo1613
      @wimorasarwindo1613 3 года назад +1

      Caraku seperti ini
      let penumpang = ['Hilda', undefined, 'Debra', 'Adi'];
      const tambahPenumpang = function(namaPenumpang, penumpang){
      // Angkot kosong?
      if(penumpang.length == 0){
      // Karena kosong, tambah penumpang di array pakai push
      penumpang.push(namaPenumpang);
      // Kembalikan isi array dan keluar dari function
      return penumpang;
      }
      else{
      // Telusuri kursi
      for(let i = 0; i< penumpang.length; i++){
      // Ada kursi kosong?
      if(penumpang[i] == undefined && penumpang[i] == namaPenumpang){
      // Iterasi lagi untuk menghindari nama sama setelah undefined

      // Tambah penumpang di kursi
      penumpang[i] = namaPenumpang;
      // Kembalikan isi array dan keluar dari function
      return penumpang;
      }
      else if(penumpang[i] == namaPenumpang){
      // Kesalahan ditampilkan
      console.info(`Maaf! ${namaPenumpang} sudah di dalam angkot`);
      return penumpang;
      }
      // Seluruh kursi terisi sampai ujung kah? Cari berdasarkan penumpang.length - 1 karena lengthnya mulai dari 0
      else if( i == penumpang.length-1){
      // Kursi terakhir ada yg isi, berarti kita push penumpang baru
      penumpang.push(namaPenumpang);
      return penumpang;
      }
      }
      }
      }
      console.info(tambahPenumpang('Dani', penumpang));
      Hasilnya berhasil sih utk hindari duplikasi dan tetap bisa isi kalau kosong. Cuma, mungkin kurang oke juga ya kalau panggil kondisi penumpang[i] == namaPenumpang 2 kali. Ya mungkin ada yg bisa bantu yg lebih fleksibel

    • @okejek1234
      @okejek1234 2 года назад

      jadi code yg bener untuak bagian yg salah itu apa bang?

    • @inovafani
      @inovafani 14 дней назад

      @@wimorasarwindo1613 maaf mas mau mengoreksi, kalo caranya kaya gini masih ada yang salah jadinya undefinenya tidak akan pernah terisi, saya juga masih mencari jawaban yang benar ini🙏

  • @athifahnur4099
    @athifahnur4099 3 года назад +1

    selama 1 bulan berhenti nonton karna eror terus, nyadarnya sekarang ternyata masalahnya di html doang. sadstory :")

  • @ferywijaya8336
    @ferywijaya8336 4 года назад +2

    kalau saya coba looping pakai every :D
    var penumpang = ['satu', undefined, 'dua'];
    var tambahPenumpang = function (namaPenumpang, penumpang) {
    if (penumpang.length == 0) {
    penumpang.push(namaPenumpang);
    return penumpang;
    } else {
    penumpang.every(function (e, i) {
    if (e == undefined) {
    penumpang.splice(i, i, namaPenumpang);
    return false;
    } else if (i == penumpang.length - 1) {
    penumpang.push(namaPenumpang);
    return false;
    } else if (e == namaPenumpang) {
    console.log(namaPenumpang + ' sudah naik ke angkot!');
    return false;
    }
    return true;
    });
    return penumpang;
    }
    };

    • @apriyanto0452.
      @apriyanto0452. 2 года назад

      penumpang.splice(i,i, namaPenumpang); itu mksd nya gimana ya? kenapa dalam kurung i nya ada 2, dan splice nya itu buat apa?

    • @apriyanto0452.
      @apriyanto0452. 2 года назад

      lalu kenapa di pengkondisian .every nya diakhir dikasih return false?

  • @isnifachririzal3307
    @isnifachririzal3307 4 года назад

    var penumpang = [];
    function tambahPenumpang(nama, bangku){
    //Cek Nama
    if(bangku.find(function (bangku){return bangku == nama;}) == nama ){
    console.log("nama tidak boleh sama");
    return bangku.join(" - ");
    }
    //Cari kursi kosong
    var posisi = bangku.findIndex(function (bangku){
    return bangku == undefined;
    })
    //Mengisi tempat kosong
    if (posisi>-1) bangku [posisi] = nama;
    else bangku.push(nama);
    return bangku.join(" - ");
    }

  • @randikahasanudin2112
    @randikahasanudin2112 4 года назад

    lumayan puter otaknya :), aku gak hapal fungsi fungsinya jadi harus liat video sebelumnya. akhirnya jadi juga :D
    var penumpang = ['sandihka','galih',undefined,'ronald'];
    var tambahpenumpang = function(nama, penumpang){
    // jika angkot kosong
    if ( penumpang.length == 0 )
    {
    // tambah penumpang
    penumpang.push(nama);
    return penumpang ;


    }
    else // tulusuri seluruh kursi dari awal
    {
    var sama = penumpang.find(function(e) //cek jika ada elemen yang sama
    {
    return e == nama;
    });
    var kosong = penumpang.findIndex(function(e) //cek jika ada elemen undefined
    {
    return e == undefined; //kembalikan index yang elemennya kosong
    });
    if( sama == nama) //jika ada penumpang yang namanya sama
    {
    console.log('nama yang dimasukan sudah ada');
    }
    else if( kosong != undefined)
    {

    penumpang.splice(kosong, 1, nama);
    }
    else //jika semua tempat duduk sudah dipenuhi
    {
    penumpang.push(namaPenumpang);
    }

    return penumpang;
    }
    }

  • @kongyoutube
    @kongyoutube 2 года назад

    Terima kasih latian nya sudah membuat saya mual mual (y) :v

  • @samuelsinurat7282
    @samuelsinurat7282 7 лет назад +2

    Interupsi pak, di Medan angkotnya 8-6, kursi tambahnya utk 2 org, belum lg yg gantung sama yg duduk di atas. wkwkwk

  • @asttechnical3404
    @asttechnical3404 7 лет назад +3

    selalu titik koma :D

  • @niemandv.d.m5136
    @niemandv.d.m5136 4 года назад +1

    Code ane sebelum dikerjain bersama, its work but different.
    var passenger = [];
    var maxPassenger = 17;
    var namePassenger = undefined;
    var empty = "empty";
    // new passenger
    function newPassenger(namePassenger) {
    var allPassenger = passenger.length;
    // Function Check Undefined & namePassenger
    var checkPass = passenger.find(function (x) {
    return x == namePassenger;
    });
    // Function Check Empty Passenger
    var defEmpty = passenger.find(function (x) {
    return x == empty;
    });
    // Function Check No Empty Passenger
    var defNo = passenger.findIndex(function (x) {
    return x == empty;
    });
    if (allPassenger

    • @PamanGTA
      @PamanGTA 2 года назад

      Yg penting hasilnya sama bro, mantap👍

  • @igalizexmo_1220
    @igalizexmo_1220 Месяц назад

    mantap!
    walaupun work tapi saya agak beda dikit sih
    pak hehe
    var penumpang = ["andi", undefined, "rafi"];
    function tambahPenumpang(penumpang, arrayPenumpang) {
    // menambahkan penumpang
    if (arrayPenumpang.length == 0) {
    arrayPenumpang.push(penumpang);
    return arrayPenumpang;
    }
    // jika nama sama
    for (var i = 0; i < arrayPenumpang.length; i++) {
    if (arrayPenumpang[i] == penumpang) {
    console.log("Penumpang " + penumpang + " sudah ada");
    return arrayPenumpang;
    }
    }
    // jika penumpang undefined
    for (var i = 0; i < arrayPenumpang.length; i++) {
    if (arrayPenumpang[i] === undefined) {
    arrayPenumpang[i] = penumpang;
    return arrayPenumpang;
    }
    }
    // jika penuh
    arrayPenumpang.push(penumpang);
    return arrayPenumpang;
    }

  • @amaliarriizz5674
    @amaliarriizz5674 4 года назад

    pusing saya pak hahah, harus ngulang2 nononnya nih... makasih pak dikaa..

  • @hazzaiskandar81
    @hazzaiskandar81 2 года назад +11

    Pak saya paham alur nya tapi saya susag untuk menulis nya pak penyebab nya apa ya

    • @caturlangit9371
      @caturlangit9371 2 года назад +4

      kurang latihan mas, tambahin jam terbangnya dan jangan lupa fokusnya dijaga

    • @projectskuy880
      @projectskuy880 Год назад +3

      Kalo latihan trus pasti bisa, ibaratnya kaya main game awalnya pasti kagok sama karakternya, kalo sering dimainin ntar jadi lancar

  • @khalidmahfudzABC
    @khalidmahfudzABC 5 лет назад +1

    Kodenya pak dika bersih, kode punya saya tadi juga berjalan sesuai rule, tapi berantakan codenya hehe

  • @abdullhfaqih
    @abdullhfaqih Год назад +2

    Pusing bgt 🥲

  • @abuusamahabdurrahman1128
    @abuusamahabdurrahman1128 5 лет назад +8

    Bismillah..
    Dari Array penumpang = ['sandika', undifened, 'galih']
    Ketika kita masukkan nama 'sandika' maka nama 'sandika' tidak bisa masuk.
    namun ketika kita masukkan nama 'galih'..
    Array penumpang menjadi ['sandika', 'galih', 'galih']
    Jadi mungkin perlu perbaikan pak..

    • @tabahjuliansah3846
      @tabahjuliansah3846 5 лет назад +2

      setuju, mungkin karena menggunakan looping jadi flow pengondisiannya dari index awal ke akhir. Jadi si program nemu undefined dulu sebelum nama galih.

    • @as-qz5wk
      @as-qz5wk 4 года назад

      Betul sekali mas tabah..

    • @bryanprimus
      @bryanprimus 4 года назад

      nemu masalah yang ginin juga ... coba pake find saja mencari namanya

    • @Everyone___
      @Everyone___ 4 года назад +1

      yup harusnya kita telusurin dulu seluruh isi array ada yang namanya sama kayak penumpang yang mau masuk/ngga, kalo ada print dia udah masuk angkot, kalo ngga baru ke program nyari kursi kosong

    • @mohamadfirzonainurroziqin9502
      @mohamadfirzonainurroziqin9502 4 года назад

      tinggal nambah syarat aja untuk ifnya angkot[i] !== undefined
      // membuat array penumpang
      var angkot = ['sandika', undefined, 'galih'];
      //fungsi tambah penumpang
      var tambahPenumpang = function(namaPenumpang, angkot){
      //jika angkot kosong
      if(angkot.length ==0){
      angkot.push(namaPenumpang);
      return angkot;
      } else {
      //jika angkot berisi
      for (var i=0; i

  • @Kira-gc2jg
    @Kira-gc2jg 4 года назад +1

    pa mau nanya nih, kalo di menit ke 14:35 itu bekerja sebelum di tambahkan else tapi pas bapak tambahkan else kok var i nya jadi 0? dan else nya harus di tambahkan if

  • @brianrahmarela6552
    @brianrahmarela6552 5 лет назад +1

    pak mau nanya menit 17:26 :
    else if( i == penumpang.length -1)
    kenapa -1 penumpang.lengthnya. apa itu selisih krn array lengthnya 3 sedangkan indexnya 0,1,2? masih krg paham saya.

    • @bayusenoariefyanto599
      @bayusenoariefyanto599 5 лет назад +2

      Bantu jawab kak, karena array itu dimulai dari 0, misal ada 10 array itu dari 0 sampai 9. sedangkan properti '.length' menghitung isi array yaitu ada 10, jadi biar 'i' sama dengan array.length harus dikurangin satu, 9 == 9, kalau ndak bakal false terus.

    • @brianrahmarela6552
      @brianrahmarela6552 5 лет назад

      @@bayusenoariefyanto599 jd lengthnya itu yg dikurang 1 ya? Indexnya tetap? Penjabarannya kan;
      - Indexnya tetap 0 - 9.
      Lengthnya kalau di krg 1 jd 9 dong.
      - lengthnya tinggal 9 apakah ngaruh indexnya jd 0-8 krn jumlah arraynya kan jd 9?

    • @bayusenoariefyanto599
      @bayusenoariefyanto599 5 лет назад +1

      @@brianrahmarela6552 length itu bukan index, tapi jumlah array. Array 10 yaitu dari 0 - 9, kan ada 10 jumlah arraynya,. Index nya akan tetap 0 - 9. Dan length itu 10. Makanya dikurangi 1 biar 9, kalau ndak dikurangi nanti jadinya if(9 == 10), sementara 9 itu index yang paling akhir, jadinya akan terus false. Bisa juga if (i+1 == array.length), jadinya (10 == 10)

    • @brianrahmarela6552
      @brianrahmarela6552 5 лет назад +1

      @@bayusenoariefyanto599 mesti pake tabel penelusuran kayaknya nih gw. Masih ngga ngerti😅

  • @wildan9832
    @wildan9832 3 года назад

    filter nama penumpang tidak boleh sama hanya berjalan saat di indeks[0] saja karena jika diisi nama indeks[2] saat prose looping nya akan masuk ke if undefined karena terdeteksi ada undefined di indeks [1].

    • @grenly2506
      @grenly2506 Год назад

      Benar tuh, sya gk bisa pchkan mslh ini

  • @alwaysbytheway
    @alwaysbytheway Год назад

    17:54

  • @JoeLeotychidas
    @JoeLeotychidas 7 лет назад +3

    enak ya di bandung susunan angkotnya 7, 5
    klo di medan 8,6
    sempit2 penumpangnya hahhaa

  • @pardom.arifin1492
    @pardom.arifin1492 4 года назад +18

    pak itu ada kesalahan pada bagian "jika nama penumpang sama".. rumusan pak sandi hanya berlaku jika nama penumpang[0] sama dengan namaPenumpang, jika yang
    namaPenumpang ada di index setelahnya penumpang[0], rumusnya jadi
    kacau....
    kita harus pakai array.some untuk mengecek apakah keseluruhan index penumpang sama dengan
    nama yg baru masuk..
    makasih,, aku baru belajar

  • @naufalhanan5726
    @naufalhanan5726 Год назад

    Menurut saya kodingan pak sandika kurang tepat... karena saat kondisi seperti ini ['galih', undefined, 'hanan'], lalu mengisi dengan nama yang sama misal 'hanan', akan menghasilkan ouput ['galih', 'hanan', 'hanan'], mungkin sc ini bisa membantu
    var bangku = ['galih', undefined, 'hanan'];
    //function tambah penumpang
    var tambahPenumpang = function (nama, bangku){
    //jika angkot tidak kosong
    if(bangku.length != 0){
    for(var i = 0; i < bangku.length; i++){
    //mencari penumpang dengan nama yang sama
    if(bangku[i] == nama){
    return nama +' sudah ada di angkot';
    //mencari tempat duduk yang kosong diantara penumpang
    } else if(bangku[i] == undefined){
    bangku[i] = nama;
    return bangku;
    }
    }
    }
    //menambah penumpang saat angkot kosong ataupun sudah terisi
    bangku.push(nama);
    return bangku;
    }

  • @garryf7254
    @garryf7254 2 года назад

    5:30
    function tambahPenumpang(e, array) {
    array.push(e);
    }
    mwhahaahha bisa saya >:V

  • @bryanvalentino4501
    @bryanvalentino4501 2 месяца назад +1

    var penumpang = [];
    var undefine = [];
    function tambahPenumpang(nama){
    var hasil = penumpang.filter(function(x){
    return x == nama;
    });
    if(hasil.length != 0){
    alert("Penumpang ini sudah masuk sebelumnya");
    } else if(undefine.length != 0){
    penumpang.splice(undefine[0],1,nama);
    undefine.shift();
    } else{
    penumpang.push(nama);
    }
    }
    function KeluarkanPenumpang(nama){
    for(var i = 0;i < penumpang.length;i++){
    if(penumpang[i] == nama){
    penumpang[i] = undefined;
    undefine.push(i);
    i = 1000;
    }
    }
    }
    while(true){
    var tanya = prompt('Tambah/Keluarkan/Tampilkan?');
    if(tanya == 'tambah' || tanya == 'Tambah'){
    var namaPenumpang = prompt('Siapa namanya?');
    tambahPenumpang(namaPenumpang);
    } else if(tanya == 'keluarkan' || tanya == 'Keluarkan'){
    var namaPenumpang = prompt('Siapa namanya?')
    KeluarkanPenumpang(namaPenumpang);
    } else{
    alert(penumpang.join());
    }
    }

    • @ri_lnr9516
      @ri_lnr9516 2 месяца назад

      Jenius banget bang, kok bisa kepikiran gitu ya hehe

  • @abdurrofiq3163
    @abdurrofiq3163 7 лет назад +5

    pak kapan ya kira2 kita belajar frame work javascript...??
    video pak dika pernah menggunakan jquery tapi belum belajar tntang jquery??

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 лет назад

      nanti kita belajar DOM dulu yah, baru belajar pake framework biar ga bingung.. 🙂

  • @mantannolife3759
    @mantannolife3759 7 лет назад +1

    mau tanya pak, gmn cara agar code js yang kita buat mau di jalanin kayak bapak gitu lewat console html di browser,, saya udah ikutin tapi pas saya click console di browser ada error "The character encoding of the HTML document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the page must be declared in the document or in the transfer protocol." dan saya coba ketikkan perintah js yang telah saya buat seperti contoh yang bapak buat, tetapi tidak bisa muncul malah error
    , apa ada caranya sebelum kita memakukan itu ?

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 лет назад +1

      hmm, pakai firefox ya? kayanya ada problem di encodingnya.. coba tambahkan ini di bagian head HTML nya :
      atau coba ganti browsernya pakai Chrome

    • @mantannolife3759
      @mantannolife3759 7 лет назад

      ini udah pake charome,, tapi masih error VM129:1 Uncaught ReferenceError: tambahpenumpang is not defined
      at :1:1
      code javascript nya gak mau di jalanin di code html yang di buat kayak yang bapak buat , apa ada cara / tehnik nya terlebih dahulu agar bisa menjalankan code js yang sudah kita buat lewat console html ?

    • @mantannolife3759
      @mantannolife3759 7 лет назад +1

      hmm maaf pak , ternyata saya yang kurang teliti, saya lupa memanggil code java script yang sudah saya buat :),, makasih pak :D

    • @mantannolife3759
      @mantannolife3759 7 лет назад

      tapi sudah saya panggil code javascript saya dan ada error lagi :Failed to load resource: net::ERR_FILE_NOT_FOUND , file tidak di temukan, padahal file itu ada di tempatnya ?, ada solusi pak?

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 лет назад +1

      salah alamatnya di src nya coba di cek lagi penempatan file javascriptnya

  • @tutorialdanreviewgadget
    @tutorialdanreviewgadget Год назад

    Alhamdulillah di menit 8.28, akhirnya ketemu juga code-nya sesuai dengan pseudo code dari Pak Shandika:
    var penumpang = ["Robbi", undefined, "Cindy"];
    var tambahPenumpang = function (namaPenumpang, penumpang) {
    if (penumpang.length === 0) {
    penumpang.push(namaPenumpang);
    return penumpang;
    } else if (penumpang.includes(namaPenumpang)) {
    console.log("Nama penumpang sudah ada");
    return penumpang;
    } else if (penumpang.includes(undefined)) {
    var indexUndefined = penumpang.indexOf(undefined);
    penumpang[indexUndefined] = namaPenumpang;
    return penumpang;
    } else if (penumpang.length !== 0) {
    penumpang.push(namaPenumpang);
    return penumpang;
    }
    };
    tambahPenumpang(...., penumpang);
    console.log(penumpang);

  • @fajarmukhlis7584
    @fajarmukhlis7584 2 года назад

    Klo make method find :
    NOTE : Klo ada penumpang turun, tidak sya replace dengan undefined, sehingga sya gunakan simbol lain, dalam contoh sya, jika penumpang turun akan di replace dengan string 'Kursi Kosong'
    const contohAjaNih = [];
    var indexKursiKosong;
    function tambahPenumpang(namaPenumpang, arrayMana){
    if (arrayMana.find(function(item){ return item == namaPenumpang; }) == undefined){
    if (arrayMana.find(function(item, index){indexKursiKosong = index; return item === 'Kursi Kosong';})== undefined){
    arrayMana.push(namaPenumpang);
    console.log(' ' + namaPenumpang + ' telah masuk ke angkot. Duduk di kursi index ke - ' + (arrayMana.length - 1));
    }else{
    arrayMana[indexKursiKosong] = namaPenumpang;
    console.log(' ' + namaPenumpang + ' telah masuk ke angkot. Duduk di kursi index ke - ' + indexKursiKosong);
    }
    }else{
    console.log(' ' + namaPenumpang + ' sudah ada di dalam angkot !');
    }
    }
    tambahPenumpang('Tes1', contohAjaNih);
    tambahPenumpang('Tes2', contohAjaNih);
    tambahPenumpang('Tes2', contohAjaNih);
    tambahPenumpang('Tes3', contohAjaNih);
    contohAjaNih[0] = 'Kursi Kosong';
    console.log(' Tes1 turun dari angkot. Kursi index ke - 0 kosong !');
    tambahPenumpang('Tes4', contohAjaNih);
    console.log(contohAjaNih);

    • @ombotak7145
      @ombotak7145 2 года назад

      gimana cara baca program nya ya bang,bingung saya

    • @fajarmukhlis7584
      @fajarmukhlis7584 2 года назад

      @@ombotak7145 sya lupa permasalahannya bang, lagi bahas apa ya itu?

    • @ombotak7145
      @ombotak7145 2 года назад

      @@fajarmukhlis7584 bikin program tambahPenumpang bang

    • @fajarmukhlis7584
      @fajarmukhlis7584 2 года назад

      @@ombotak7145
      Ini om, udh saya perbarui, semoga lebih mudah dibaca
      const contohAjaNih = [];
      let indexKursiKosong;
      let namaPenumpang;
      function penumpangYangSama(item) {
      return item == this.namaPenumpang;
      }
      function kursiKosong(item, index){
      this.indexKursiKosong = index;
      return item == 'Kosong';
      }
      function tambahPenumpang(namaPenumpang, kursiAngkot){
      this.namaPenumpang = namaPenumpang;
      if (!kursiAngkot.find(penumpangYangSama)){
      if (!kursiAngkot.find(kursiKosong)){
      kursiAngkot.push(namaPenumpang);
      console.log(' ' + namaPenumpang + ' telah masuk ke angkot. Duduk di kursi index ke - ' + (kursiAngkot.length - 1));
      }else{
      kursiAngkot[this.indexKursiKosong] = namaPenumpang;
      console.log(' ' + namaPenumpang + ' telah masuk ke angkot. Kursi no. ' + this.indexKursiKosong + ' yang sebelumnya kosong, telah diisi.');
      }
      }else{
      console.log(' ' + namaPenumpang + ' sudah ada di dalam angkot !');
      }
      }
      tambahPenumpang('Anda', contohAjaNih);
      tambahPenumpang('Andi', contohAjaNih);
      tambahPenumpang('Andi', contohAjaNih);
      tambahPenumpang('Andu', contohAjaNih);
      contohAjaNih[0] = 'Kosong';
      console.log(' Andi turun dari angkot. Kursi index ke - 0 kosong !');
      tambahPenumpang('Ande', contohAjaNih);
      console.log(contohAjaNih);

    • @ombotak7145
      @ombotak7145 2 года назад

      @@fajarmukhlis7584 bang saya mau nanya lagi nih, saya benar² pemula,
      Gimana cara baca 2 code ini ya bang
      if (!kursiAngkot.find(penumpangYangSama)
      Dan
      if (!kursiAngkot.find(kursiKosong)
      Makasih sebelumnya bang

  • @khristoferkurniawan
    @khristoferkurniawan 10 месяцев назад

    Terimakasih ilmunya Pak Dhika.
    var penumpang = [];
    var tambahPenumpang = function(namaPenumpang) {
    // Cek apakah namaPenumpang sudah ada
    var ada = penumpang.find(function(e) {
    return e == namaPenumpang;
    });
    if (ada) {
    console.log(namaPenumpang + " sudah ada di dalam angkot.");
    return penumpang;
    }
    // Penumpang belum ada
    // Cek apakah ada kursi kosong
    var kursiKosong = penumpang.findIndex( e => e == undefined);
    if (kursiKosong > -1) { // Ada kursi kosong
    penumpang[kursiKosong] = namaPenumpang;
    } else { // Tidak ada kursi kosong
    penumpang.push(namaPenumpang);
    }
    return penumpang;
    }

  • @ZidanMDaffa
    @ZidanMDaffa 5 лет назад +1

    Numpang nanya di 17:29 saat else if( i == penumpang.length - 1). Disini kan 'i' nilainya 0, trs si penumpang.length -1 nilainya jadi 2, itu kenapa bisa masuk ke aksinya?
    Maaf kalau belibet.

    • @as-qz5wk
      @as-qz5wk 4 года назад

      Pake fungsi push bro

    • @as-qz5wk
      @as-qz5wk 4 года назад

      Artinya jika i sama dengan jumlah elemen maka jalankan fungsi push

    • @annajmalbupy
      @annajmalbupy 4 года назад +1

      karna adanya perulangan for yang didalam nya ada increment i++,maka nilai i akan terus ditambah dengan 1 sampai mencapai angka penumpang.length - 1 ,mudah-mudahan bisa membantu bro

    • @wimorasarwindo1613
      @wimorasarwindo1613 3 года назад

      @@annajmalbupy Wah iya. Soalnya kalau hanya pakai penumpang.length saja di else if sementara kondisinya adalah sedang looping, maka ya saat masuk data berikutnya, jadi undefined karena datanya tabrakan ya. Jadi pakai min.length-1

  • @axelwangg
    @axelwangg 4 года назад +3

    Pak Dhika saya mau bertanya, kenapa parameter yg digunakan dalam function tambahPenumpang ada 2 buah yaitu : namaPenumpang dan penumpang? saya coba hanya namaPenumpang only bisa pak, return nya return penumpang, karena di awal sudah dideklarasikan (var penumpang = []) , mohon koreksinya ya pak terimakasih.

    • @monangbahana4562
      @monangbahana4562 4 года назад

      Udh nemu jawaban.a blm yang? Saya juga nyri2 jawaban yg ini.

    • @rifki460
      @rifki460 2 года назад +1

      @@monangbahana4562 mungkin untuk menandakan bahwa dia adalah penumpang yang naik ke angkot, dan munkin misal kita ganti penumpang nya jadi angkot ('ujang', angkot) maka ujang naik angkot gitu mungkin ilustrasinya. maaf kalau salah mohon koreksi

    • @adhityaaryo6984
      @adhityaaryo6984 Год назад

      lah iya juga ya... baru sadar.

  • @HistoryKampung-i1l
    @HistoryKampung-i1l 4 месяца назад

    2024 masih nonton

  • @gedeaanand3946
    @gedeaanand3946 2 года назад

    ini jawaban saya bos
    var penumpang= ['budi',undefined,'jason'];
    //Secara singkat perbedaan antara fungsi dan metode adalah fungsi adalah serangkaian instruksi untuk menjalankan sebuah tugas, sedangkan
    // metode adalah serangkaian instruksi yang berkaitan dengan sebuah object
    //map mengembalikan nilai array
    //foreach tidak mengembalikan isi array

    function tambahPenumpang(nama , penumpang){
    var flag;
    //cara pertama buat cek data
    penumpang.forEach(function(e){
    if(nama == e){
    console.log(`penumpang dengan nama `+ nama + `sedang berada di dalam angkots`);
    flag=1;
    }else{
    flag=0;
    }
    });

    // cara ke 2 buat ngecek data
    //cek apakah ada penumpang yang sama
    for(i=0; i

  • @ikhsanalfath7786
    @ikhsanalfath7786 7 лет назад +5

    Pa dika, itu parameter k dua "penumpang " di function tambahPenumpang() buat apa ya?
    Bukany gk pake jg gk ngaruh ya? malahan bingung aku..

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 лет назад +10

      kita kan punya array penumpang = [ ] atau istilahnya angkot yang masih kosong.. nah, jadi ceritanya 'namaPenumpang' naik ke angkot 'penumpang' ..
      mungkin kayanya lebih baik namanya 'angkot' ya daripada penumpang.. supaya nantinya kalo ada misalnya var ojek = [ ], atau var bis = [ ] kita bisa suruh namaPenumpangnya naik itu dengan cara tambahPenumpang('Ikhsan', ojek) atau tambahPenumpang('Sandhika', bis) misalnya..
      mudah2an paham.. :)

    • @ikhsanalfath7786
      @ikhsanalfath7786 7 лет назад +1

      Oh iya pa saya ngerti :)
      Jdi klw gitu kasusny, kita kasih if di awal function y pak? supaya kita tahu dia mau naik kendaraan apa, misalny dia mau naik "angkot", atau "bis". nah jika user pilih "angkot" kita proses arrAngkot=[ ] dn begitu jg untuk bis.
      Trimakasih pa, bermanfaat banget ilmuny :D

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 лет назад +3

      iya betul Ikhsan.. 🙂
      sama2, semangat ya belajarnya.. 👍

    • @rebelilusion1st
      @rebelilusion1st 3 года назад

      @dunia gamers sekarang udah bisa belum bro? kalau belum, dicoba bisa nggak..
      else if(penumpang.length == 5 //limitnya terserah aja) {
      console.log("Kursi sudah penuh!");
      return penumpang;
      }

  • @samuelivan6585
    @samuelivan6585 4 года назад +1

    Pak Sandhika, mohon maaf saya mau tanya di algoritma pak Sandhika apakah betul yang dimaksud kurang efektif adalah di bagian cek nama penumpang yang double seharusnya di cek terlebih dahulu sampai selesai dalam for
    if( penumpang[i] == namaPenumpang){
    console.log(namaPenumpang+" sudah ada di dalam angkot");
    }
    baru diajalankan for lagi untuk mengecek kursi yang kosong
    if(penumpang[i]==undefined){
    penumpang[i]=namaPenumpang;
    return penumpang;
    }
    karena menurut analisa saya kalau source code yang diatas akan mengalami kebocoran jika
    var penumpang=["Shandika", undefined, "Doddy"];
    di jalankan fungsi
    tambahPenumpang("Doddy", penumpang)
    akan menjadi
    var penumpang=["Shandika", "Doddy", "Doddy"];
    Apakah betul Pak? Mohon info nya hehe
    Kalau saya salah mohon infonya ya pak supaya saya lebih paham

    • @rizkyrudolf3712
      @rizkyrudolf3712 4 года назад

      iya gan ini sama kaya saya, malah jadi tambah bukannya muncul pesan nama penumpang nya sudah ada

  • @maatazizi7004
    @maatazizi7004 10 месяцев назад

    pesan kesalahan tidak keluar kalau isi nama doddy dahulu,
    sandika, doddy, doddy
    pesan kesalahan tidak keluar.
    sebab doddy di index ke 2. code nya jalan undefined dahulu sebelum ngechek nama yang sama

  • @badjoxx2329
    @badjoxx2329 5 месяцев назад

    Pak setelah saya coba buat ada bug di programnya, ketika yang kita isikan 'doddy' maka akan langsung masuk ke undefined, sedangkan nama Doddy sudah ada pada array penumpang

  • @RexCookie-m7r
    @RexCookie-m7r Год назад

    Pak shandika , kenapa ada 2 parameter di function tambahPenumang() bukannya satu saja namaPenumpang sudah bisa?

  • @riskyamaliaharis8352
    @riskyamaliaharis8352 5 лет назад

    Kok hasil saya aneh ya Pak, untuk case yang undefined :'] . Okay, saya lanjut play aja biar tahu, btw makasih Pak ilmunya, sangat bermanfaat.
    var angkot = [];
    var tambahPenumpang = function(namaPenumpang, angkot){
    if (angkot.length==0){
    angkot.push(namaPenumpang);
    return angkot;
    console.log(angkot);
    }
    else{
    for (var i = angkot.length - 1; i >= 0; i--) {
    if (angkot[i]==undefined){
    angkot[i]=namaPenumpang;
    return angkot;
    }
    else if (namaPenumpang==angkot[i]) {
    console.log('Penumpang dengan nama '+ namaPenumpang + ' sudah ada!');
    return angkot;
    }
    else {
    angkot.push(namaPenumpang);
    return angkot;
    }
    }
    console.log(angkot.join('-'));
    }
    }

    • @bgsygnwan
      @bgsygnwan 5 лет назад

      iya sama mas, saya juga pas nyoba nambah array nya undefined trus. Tapi sudah bisa sih.
      coba ini, ganti (penumpang.lenght == 0) jadi (penumpang.lenght == undefined)
      var penumpang = [];
      var tambahPenumpang = function(namaPenumpang, penumpang) {
      //jika angkot kosong
      if (penumpang.lenght == undefined)
      mungkin karena array penumpang belum di isi, jadi harusnya bukan 0 tapi undefined (siapa tau berhasil)

  • @cherno6592
    @cherno6592 Год назад

    Atau bisa juga dalam perulangan nya dibuat i

  • @Rin_Hikariひかりん
    @Rin_Hikariひかりん Год назад

    Pak dika, saya sudah bikin algoritma pengelolaan angkot, cuman ya saat saya menginput tambahPenumpang('Doddy',penumpang) yang ke index 1, kok tiba tiba langsung bertambah aja, tapi gada pesan yang di tampilkan, apa saya menginput algoritma nya salah, atau bagaimana ini?

  • @nurulexperience2374
    @nurulexperience2374 5 месяцев назад

    Pak Dhika mau nanya. Maksudnya kembalikan isi array dan keluar dari function itu apa ya? gimana ?

  • @mahyoungbi6816
    @mahyoungbi6816 5 лет назад +4

    Kenapa pada //telusuri array menggunakan method map untuk mengganti looping for tidak bisa?????

  • @ilhamrasyidan895
    @ilhamrasyidan895 9 месяцев назад

    klo masih kurang bener atau bisa lebih efektif lgi mohon koreksinya..
    const penumpang = ["dani", undefined, "ando", undefined];
    function tambahPenumpang(nama, arr) {
    if (arr.includes(nama)){
    console.log(`${nama} sudah ada di dalam angkot`)
    }else if (arr.includes(undefined)) {
    arr[arr.indexOf(undefined)] = nama;
    } else {
    arr.push(nama);
    }
    return arr

    }

  • @patlivianuswantito4478
    @patlivianuswantito4478 4 года назад +1

    kalo untuk nambah penumpang di array awal bukannya memakai method unshift ya kang Dhika ?

    • @coffeerocks9indonesia705
      @coffeerocks9indonesia705 4 года назад +1

      nah ini, ku awam banget js, bljr script ini, kog ada yg janggal,klo pas kosong bisa tambah penumpang , isi penumpang ke 2 malah undefined, kenapa harus diisi penumpangnya dulu, 😅

  • @pratiwipriyatna4328
    @pratiwipriyatna4328 3 года назад +5

    mau nanya, jika pakai source seperti di video apabila kita sudah punya array awal misal [ 'shandika', undefine, 'galih' ] , kalau kita ingin menambahkan penumpang dengan nama 'galih' malah akan masuk dan menggantikan undefine sehingga arraynya menjadi [ 'shandika, 'galih', 'galih' ] , ada solusi ga pak dhika?

    • @ryanalhakim5170
      @ryanalhakim5170 3 года назад

      sama saya juga gitu

    • @moiskandar_
      @moiskandar_ 3 года назад +6

      coba setelah di cek undefined nya , dilakukan pengecekan lagi bro. klo gw kaya gini, semoga membantu.
      if(passenger[i] == undefined) {
      if (passenger.includes(name)) {
      console.log(`Penumpang dengan nama ${name} udah ada bro!`)
      return passenger
      } else {
      passenger[i] = name
      return passenger
      }

    • @LordzChilight
      @LordzChilight 3 года назад

      @@moiskandar_ Works, terima kasih!!!

    • @rizkycaniago6905
      @rizkycaniago6905 Год назад

      @@moiskandar_ bang itu include maksudnya ngecek apakah ada sudah ada nama penumpang di dalam array ya?

  • @136_elgaarsiaikramramdani5
    @136_elgaarsiaikramramdani5 4 года назад +1

    Pak, mau ijin tanya, kalau misal kita mengetik nama penumpang yang sama, tetapi yang kita ketik itu ada di urutan sebelum penumpang dengan nama yang sama sebelumnya. Itu kan nanti fungsi yang memunculkan tulisan penumpang a sudah ada dalam angkot nggak jalan. Karena udah keduluan fungsi yang jika ada kursi kosong, terus di return sama fungsinya itu. Mohon penjelasanya

    • @136_elgaarsiaikramramdani5
      @136_elgaarsiaikramramdani5 4 года назад

      Jadi penelusuranya sampai kursi terakhir apakah ada nama penumpang yang sama belum selesai, udah kedulan di return sama if penumpang[i] == undefined

  • @HaryKurniawan
    @HaryKurniawan 3 года назад +1

    pak, kalau di menit 19.44 saya masukan nama Doddy, maka sistem akan langsung masukin Doddy ke undefined ya pak? karena sudah ktemu undefined dulu sebelum cek ada nama yang sama

  • @naufalpalembang
    @naufalpalembang 4 года назад +2

    VM471:1 Uncaught ReferenceError: tambahPenumpang is not defined
    at :1:1, kenapa error?

    • @rizkyrudolf3712
      @rizkyrudolf3712 4 года назад +1

      di refresh coba gan

    • @kimigahoshi1370
      @kimigahoshi1370 4 года назад +1

      sama walupun di refresh tetep gak bisa

    • @ridhoaditya8841
      @ridhoaditya8841 4 года назад

      Periksa lagi html nya,tadi saya juga gitu

    • @kimigahoshi1370
      @kimigahoshi1370 4 года назад

      @@ridhoaditya8841 udha kok gan

    • @RazerSCYNescafe
      @RazerSCYNescafe 3 года назад +1

      @
      Naufal Syammary
      Coba di check lagi di code nya terutama di kurung kurawal saya sempet error karna kurang teliti, seperti itu dan ternyata codingan saya tidak masuk di BLOCK nya function. coba di check trus refresh, masukin variablenya. semoga membantu.

  • @fahmiprasetio5829
    @fahmiprasetio5829 4 года назад

    Mungkin untuk menghandle tambahPenumpang setelah undefind, bisa diganti jadi string kosong

  • @muhammadnurrahman394
    @muhammadnurrahman394 6 лет назад

    Masih bingung saya pak, maklum msh awam. dari desain grafis mau coba ke programming krn skripsi saya berkaitan sm RPL. mau gak mau, suka gak suka, harus kerja keras agar bisa. yg paling susah di LOGIKA nya ya pak kl ngoding. minta do'anya pak agar saya bisa selesai dan lancar skripsinya. di suruh dosen pake MVC PHP CI. dy ga mau yg PHP native.

  • @alfianfajar8875
    @alfianfajar8875 4 года назад +1

    mau tanya pak, di kondisi awal yang jika ada penumpang kosong maka penumpang baru mengisi tempat tersebut, harusnya kan programya berhenti di situ karena ada return , kenapa kondisi else if dibawahnya masih terbaca dan berhenti di return itu jika penumpang mempunyai nama yang sama, bukanya fungsi return untuk menghentikan program ya pak tapi kenapa masih terbaca return dibawahnya, mohon penjelasanya pak ..

    • @adekurniawanc
      @adekurniawanc 4 года назад

      izin menjawab kang, itu karena ia hanya menghentikan if, sedangkang else if masih dalam function makanya berjalan
      maaf kalo salah

  • @komarpermata1731
    @komarpermata1731 7 лет назад +2

    pak seri javascript sudah end atau masih lanjut???
    ~Makasih ilmu nya bermanfaat :)

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 лет назад

      1 topik lagi Zi tentang Object.. :)
      sama2 Zi.. terimakasih juga uda nonton..

  • @jericok
    @jericok 2 года назад +2

    var penumpang = ['Sandhika', 'Galih', 'Doddy'];
    // variabel array kursiKosong untuk mengetahui kursi yang mana saja yang masih kosong.
    var kursiKosong = [];
    // variabel sebagai penanda penumpang yang keluar itu pada indeks ke berapa
    var indeksPenumpangKeluar;
    var tambahPenumpang = function(nama){
    if(penumpang.length == 0) {
    penumpang.push(nama);
    } else {
    // Jika tidak ada kursi yang kosong dan nama penumpang yang akan duduk tidak sama dengan nama
    // penumpang yang sudah ada di didalam angkot, maka langsung push bagian akhir.
    if( kursiKosong.length == 0 && nama != penumpang.find(function(e) { return e == nama })) {
    penumpang.push(nama);
    // Jika penumpang yang naik memiliki nama yang sama maka akan tampil message.
    } else if( nama == penumpang.find(function(e) { return e == nama }) ) {
    console.log(nama + " sudah ada di dalam Angkot
    ");
    console.log(penumpang);
    // jika ada kursi kosong dan nama penumpang yang masuk tidak sama, maka
    // penumpang akan mengisi kursi kosong paling depan
    } else {
    // value undefined pada array penumpang akan dihapus dan diganti dengan nama penumpang baru
    penumpang.splice(kursiKosong[0], 1, nama);
    // kemudian value paling depan pada array kursi kosong akan dihapus, karena sudah terisi penumpang.
    kursiKosong.shift();
    }
    }
    }
    var hapusPenumpang = function(nama) {
    // Jika nama penumpang yang mau keluar ada, maka indeks penumpang keluar tersebut akan disimpan
    // pada array indeksPenumpangKeluar
    if( nama == penumpang.find(function(e,i) {indeksPenumpangKeluar = i; return e == nama;}) ) {
    // menambahkan indeks penumpang keluar pada array kursiKosong
    kursiKosong.push(indeksPenumpangKeluar);
    // Menandakan kursi kososng dengan undefined
    penumpang[indeksPenumpangKeluar] = undefined;
    // Mengurutkan value yang ada didalam array kursiKosong agar dapat mengantisipasi jika
    // penumpang yang paling belakang yang keluar duluan sebelum penumpang didepan
    // sehingga saat kursi kosong diisi itu selalu paling depan
    kursiKosong.sort();
    } else {
    console.log("Nama " + nama + " tidak ada di dalam Angkot.");
    }
    }

  • @williame6725
    @williame6725 3 года назад

    Pak, bukankah kalau di menit 19:45 kita
    tambahPenumpang('Doddy', penumpang)
    Hasilnya 'Doddy' akan mengisi undefined nya terlebih dahulu?

    • @adityarizki1845
      @adityarizki1845 3 года назад

      iyaa emg 'Doddy' bakal ngisi undefined, code nya kurang kompleks... harusnya dikasi for lagi di dalam if undefined

    • @athifahnur4099
      @athifahnur4099 3 года назад

      @@adityarizki1845 bole gak liat code kakak , seperti yang kk maksud di kasi for lagi dalam if

    • @axozic4723
      @axozic4723 2 года назад

      Kan si doddy ama undefinednya di isi di variabel... makanya si Doddy ga ngisi si undefined, karna emng itu isi dari variabel nya

  • @kerangajaib6531
    @kerangajaib6531 5 лет назад

    Pak dhika,sepertinya ada yg masih kurang programnya,buat handle kalau nama yg sudah ada posisi/indexnya berada di setelah undefined...

    • @muhammadirsyadthoyib3388
      @muhammadirsyadthoyib3388 Год назад

      betul, seharusnya cek nama dulu di for loop sendiri agar tidak masuk kalau ada nama yang sama

  • @ardhisasongko
    @ardhisasongko 3 года назад

    Pa, izin bertanya, saya masih bingung, dengan ekspresi (i == penumpang.length-1) yang mengembalikan penumpang.push(namaPenumpang),

    • @faturrokhman7101
      @faturrokhman7101 3 года назад

      itu untuk mengecek apakh arraynya sudah terisi semua atau belum

  • @achmadnasikhin3939
    @achmadnasikhin3939 3 года назад +5

    maaf pak, apakah itu tdk terbalik urutan pengkondisiannya pada kondisi, jika ada kursi yang kosong (undefined) DENGAN jika sudah ada nama yang sama? saya buat seperti ini :
    var penumpang = [];
    var tambahPenumpang = function(namaPenumpang){
    if (penumpang.length == 0){
    penumpang.push(namaPenumpang);
    return penumpang;
    }else{
    for ( var i = 0; i < penumpang.length; i++){
    if(penumpang[i] == namaPenumpang){
    console.log(namaPenumpang + ' Sudah ada di dalam angkot!');
    return penumpang;
    }
    }
    for ( var i = 0; i < penumpang.length; i++){
    if(penumpang[i] == undefined){
    penumpang[i] = namaPenumpang;
    return penumpang;
    }else if( i == penumpang.length -1){
    penumpang.push(namaPenumpang);
    return penumpang;
    }
    }
    }
    }

    • @inovafani
      @inovafani 14 дней назад

      nice bang, makasih banget udah ngesolve masalah ini🙏

  • @anggidastariana430
    @anggidastariana430 3 года назад

    Terima kasih videonya Pak,
    izin menambahkan supaya nama penumpang yang sama setelah undefined bisa terdeteksi:
    } else {
    for (var i = 0; i < penumpang.length; i++) {
    if (penumpang[i] == undefined) {
    /* iterasi di bawah ini untuk menghindari nama sama setelah undefined */
    for (var j = i; j < penumpang.length; j++) {
    if (namaPenumpang == penumpang[j]) {
    console.log(namaPenumpang + ' sudah ada di dalam angkot!');
    return penumpang;
    }
    }
    penumpang[i] = namaPenumpang;
    return penumpang;

  • @davidignatius1
    @davidignatius1 4 года назад +3

    Pak Sandhika, coba untuk case ini di run di code Bapak dengan kondisi penumpang = ['Galih', undefined, 'Sandhika']:
    --> tambahPenumpang('Sandhika',penumpang).
    Pasti jadinya 'Sandhika' tetap duplikat. Mohon konfirmasinya Pak Sandhika. Terima kasih.

    • @isfanrachmad8545
      @isfanrachmad8545 3 года назад +2

      var penumpang = ["Galih", undefined, "Sandhika"];
      var tambahPenumpang = function(namaPenumpang, penumpang){
      if(penumpang.length == 0){
      penumpang.push(namaPenumpang);
      return penumpang;
      }else{
      for(var i = 0; i < penumpang.length; i++){
      if(namaPenumpang == penumpang[i]){
      console.log("Nama sudah terdaftar pada sistem");
      return penumpang;
      }else if(i == penumpang.length - 1){
      for(var j = 0; j < penumpang.length; j++){
      if(penumpang[j] == undefined){
      penumpang[j] = namaPenumpang;
      return penumpang;
      }else if(j == penumpang.length - 1){
      penumpang.push(namaPenumpang);
      return penumpang;
      }
      }
      }
      }
      }
      }
      Mungkin bisa menggunakan Source Code tersebut bang. Semoga membantu ....

  • @irdaislakhuafa1278
    @irdaislakhuafa1278 2 года назад

    let penumpang = ["A", "B", "C"];
    tambah("a", penumpang);
    jadi ["A", "B", "C", "a"]; wkwkwk :D

  • @nurmuhammadikhsan5876
    @nurmuhammadikhsan5876 4 года назад +1

    Pak dika bisa ga kalo penumpangnya naik lebih dari satu

  • @emailbaru9854
    @emailbaru9854 5 лет назад

    dan saya masih awam di dunia pemograman web adakah tips untuk bisa melatih logika karena sering kali saya paham tapi logika kurng krna belum pernah ada dasar coding terimaksih
    teman2 tlong tips ya terimakasi

  • @muhammadrozan1802
    @muhammadrozan1802 Год назад +3

    Izin bertanya Pak, saat Saya coba case dimana array penumpang = [undefined, "ucup", "gilang"], kemudian saya panggil fungsi tambahPenumpang("ucup", penumpang), fungsinya mengembalikan nilai ["ucup", "ucup", gilang"]. Mungkin karena kondisional if jika ada kursi kosong lebih dahulu dieksekusi baru kemudian pengecekan penumpang dengan nama yang sama (kedua if ini berjalan berurutan karena pengecekannya tiap index yang sama). Sepertinya khusus untuk kondisi pengecekan nama yang sama bisa dibuat for loop sendiri di awal🙏 Terima kasih atas ilmunya dan semoga sehat selalu Bapak dan subscriber wpu
    var penumpang = [undefined, "ucup", "gilang"];
    var tambahPenumpang = function(namaPenumpang, penumpang){
    // Jika angkot kosong
    if(penumpang.length == 0){
    penumpang[0] = namaPenumpang;
    return penumpang;
    } else { // Jika angkot tidak kosong
    // Menelusuri seluruh kursi
    for(var i=0; i

    • @exyezedr
      @exyezedr Год назад

      Sebenarnya bisa cukup seperti ini
      let tambahPenumpang = (namaPenumpang, penumpang) => {
      if (penumpang.includes(namaPenumpang)) {
      console.log(`${namaPenumpang} sudah di dalam angkot.`);
      } else {
      let index = penumpang.indexOf(undefined);
      index !== -1
      ? penumpang[index] = namaPenumpang
      : penumpang.push(namaPenumpang);
      }
      return penumpang;
      }

  • @cakbim2777
    @cakbim2777 Год назад

    Mau tanya nih sama para suhu kenapa metode push bisa di gunakan untuk memasukan array yang undifined di tengah?

    • @thariqmaulana
      @thariqmaulana Год назад

      siapa yang pake metode push? yang dipakai penumpang[index] = namaPenumpang. gak ada metode push, dan gak bakal bisa

  • @alimuqsith2239
    @alimuqsith2239 6 лет назад +1

    saya coba ngikutin pas nambah data dengan nama di blekang undefined kok ttp masuk pa ?

    • @bgsygnwan
      @bgsygnwan 5 лет назад

      Iya sama undefined

  • @muhammadirzan9843
    @muhammadirzan9843 4 года назад +4

    Saat tambah penumpang hasil nya selalu undefined, kenapa ya?

    • @codeyzx
      @codeyzx 4 года назад

      bila ingin bertanya, sertakan skrip nya gan.

  • @alfiauliarahmansiregar9037
    @alfiauliarahmansiregar9037 5 лет назад +1

    Assalamu'alaikum Pak
    Mau nanya di bagian tambahPenumpang()
    Pas di console kita masukkan Sandhika
    Kemudian Sandhika masuk ke indeks 0, maka dikerjakan di rules ke 1.
    Lalu Galih masuk, karena Galih di array penumpang , dia masuk ke statement else
    Apakah gitu Pak?
    Mohon Pencerahnnya. Makasih Pak.

  • @Dunia_7
    @Dunia_7 Год назад

    Izin tanya pak, knp yg di return penumpang?

  • @syipanusantaraenergi5355
    @syipanusantaraenergi5355 Год назад

    kode saya udah dirapihin sama kaya punya pak dhika tapi kok mentok di kursi kosong ya? undefined terus

  • @emailbaru9854
    @emailbaru9854 5 лет назад

    pak mau tanya kenaapa untuk menelusuri kita pakai FOR ,for kan pengulangan atau looping bukan menelusir tlong dibalas terimakasih pak saya sudh mengikuti semua series dan di sini binggung terimakasih

    • @muhammadgata1071
      @muhammadgata1071 4 года назад

      Menurutku pengulangan dilakukan satu persatu, berguna banget untuk menelusuri. Jika sudah nemu apa yang akan ditelusuri, pengulangan akan berhenti

  • @pakwafid
    @pakwafid 2 года назад

    Halo pak Sandhika, sebelumnya terima kasih sudah membuat video yang sangat bermanfaat, semoga menjadi amal baik pak Sandhika.
    Saya mau share jawaban nih pak, tapi sekaligus tanya apakah alogaritma seperti ini sudah benar? mohon koreksinya pak Sandhika, dan dan temen-temen semua barangkali ada yang baca komen dan menemukan kesalahan logika saya. Terima kasih (;
    //membuat variabel kosong
    var penumpang = [];
    var tambahPenumpang = function (nama, arr) {
    for (var i = 0; i < arr.length; i++) {
    if (arr[i] === undefined) {
    arr[i] = nama;
    console.log(arr);
    return;
    } // pertama saya cek dulu apa ada kursi yang kosong dengan isi undefined (bukan variabel kosong), kalo ada maka langsung isi seat tersebut
    }
    for (var i = 0; i < arr.length; i++) {
    if (i >= 10) {
    console.log(`angkot cuma muat 10, sudah diisi dengan ${arr.join(", ")}`);
    return;
    }
    } // kalo gaada undefined, apakah angkot masih muat. oh iya disini saya kasih batasan angkot 10 orang, kalo masih muat maka skip ke for selanjutnya
    for (var i = 0; i < arr.length; i++) {
    if (arr[i] === nama) {
    console.log(
    `nama ${nama} sudah ada, kamu gaboleh naik! penumpang sementara yaitu ${arr.join(
    ", "
    )}`
    );
    return;
    } // lanjut apabila masih muat, ini untuk cek apakah namanya sudah ada dalam angkot? kalo gaada maka skip ke statement selanjutnya
    }
    arr.push(nama); // lanjut kalo kondisi semua diatas false, maka akan memasukkan nama baru ke dalam array penumpang
    console.log(arr);
    };