MEMBUAT PROGRAM PENGELOLAAN PENUMPANG ANGKOT dengan JAVASCRIPT

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 พ.ย. 2024

ความคิดเห็น • 323

  • @Unknown-hl1jd
    @Unknown-hl1jd ปีที่แล้ว +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

  • @dennysutanto6728
    @dennysutanto6728 5 ปีที่แล้ว +24

    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 3 ปีที่แล้ว +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😢

  • @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 7 หลายเดือนก่อน

      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

  • @iruru1298
    @iruru1298 หลายเดือนก่อน

    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)
    }

  • @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

  • @FransinAIO
    @FransinAIO 2 ปีที่แล้ว +1

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

  • @fahmirabiulkarim8867
    @fahmirabiulkarim8867 4 ปีที่แล้ว +1

    enakeun pisan sih ini tutorialnya

  • @thiobakti2159
    @thiobakti2159 6 ปีที่แล้ว +2

    Terimakasih vidionya sangat membantu saya belajar pemograman WEB.

  • @karyabq14consultanmansur94
    @karyabq14consultanmansur94 5 ปีที่แล้ว +2

    Terima kasih ilmu nya... penjelasannya bisa di mengerti

  • @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.. :)

  • @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(" - ");
    }

  • @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;
    }

  • @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 10 หลายเดือนก่อน +1

      skrg udah sampe mana bang?@ihsanpraditya

  • @budi-dev8814
    @budi-dev8814 3 ปีที่แล้ว +1

    Mantap pak, izin download yakk hehe

  • @ismayanti2262
    @ismayanti2262 7 ปีที่แล้ว +4

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

  • @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;
    };

  • @caturlangit9371
    @caturlangit9371 2 ปีที่แล้ว +1

    makasih pak,sehat selalu, otw part 40

  • @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.. :)

  • @guramezuku2294
    @guramezuku2294 ปีที่แล้ว +1

    Makasih pak Dhikaa

  • @rakazakaria4954
    @rakazakaria4954 4 ปีที่แล้ว +15

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

  • @isacnewton9075
    @isacnewton9075 5 ปีที่แล้ว +2

    Makasih ilmu nya

  • @ininamakokharusdijarak6815
    @ininamakokharusdijarak6815 3 ปีที่แล้ว +1

    // Keren😃

  • @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.");
    }
    }

  • @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?

  • @brandoagara6395
    @brandoagara6395 6 ปีที่แล้ว +6

    puyeng saya pak hahaha
    tetap semangat tapi pastinya pak :D

  • @igalizexmo_1220
    @igalizexmo_1220 16 วันที่ผ่านมา

    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;
    }

  • @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..

    • @bryanltobing
      @bryanltobing 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

  • @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 ปีที่แล้ว

      Yg penting hasilnya sama bro, mantap👍

  • @caturlangit9371
    @caturlangit9371 2 ปีที่แล้ว +2

    mumet sumpah🤤

  • @viraleveryday9086
    @viraleveryday9086 7 ปีที่แล้ว +3

    Keep it up :)

  • @danielherysetiawan657
    @danielherysetiawan657 2 ปีที่แล้ว +1

    terima kasih....

  • @nabillaaaaa
    @nabillaaaaa 4 ปีที่แล้ว +1

    Terima kasih pak

  • @hazzaiskandar81
    @hazzaiskandar81 2 ปีที่แล้ว +10

    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

  • @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

  • @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);

  • @athifahnur4099
    @athifahnur4099 3 ปีที่แล้ว +1

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

  • @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.. 🙂

  • @zaiidleader
    @zaiidleader 7 ปีที่แล้ว +1

    semoga cepet sembuh pa

  • @amaliarriizz5674
    @amaliarriizz5674 4 ปีที่แล้ว

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

  • @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

  • @maatazizi7004
    @maatazizi7004 9 หลายเดือนก่อน

    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

  • @mahyoungbi6816
    @mahyoungbi6816 5 ปีที่แล้ว +4

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

    • @muhammadghazyhumaidi5186
      @muhammadghazyhumaidi5186 3 ปีที่แล้ว

      saya juga sama bro, kayaknya studi kasus kayak gini gak ush pake map

  • @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

  • @khalidmahfudzABC
    @khalidmahfudzABC 5 ปีที่แล้ว +1

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

  • @kongyoutube
    @kongyoutube 2 ปีที่แล้ว

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

  • @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

  • @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.

  • @haki4817
    @haki4817 2 ปีที่แล้ว

    var penumpang = [];
    var namaPenumpang;
    var hapus;
    menu();
    function menu() {
    var pilihan = prompt("Masukkan aksi yang ingin dilakukan :
    1. Menambahkan penumpang
    2. Menurunkan penumpang
    3. Keluar aplikasi");
    if (pilihan === "1") {
    namaPenumpang = prompt("Masukkan nama penumpang");
    tambahPenumpang(namaPenumpang, penumpang);
    } else if (pilihan === "2") {
    hapus = prompt("Siapa yang ingin anda turunkan?");
    hapusPenumpang(hapus, penumpang);
    } else if (pilihan === "3") {
    alert("Terimakasih");
    }
    }
    function tambahPenumpang(name, arrPenumpang) {
    for (var i = 0; i < arrPenumpang.length; i++) {
    if (arrPenumpang[i] === name) {
    alert("Penumpang sudah naik");
    menu();
    return;
    }
    }
    for (var i = 0; i < arrPenumpang.length; i++) {
    if (arrPenumpang[i] === "(Kosong)") {
    arrPenumpang[i] = name;
    menu();
    return;
    }
    }
    arrPenumpang.push(name);
    menu();
    }
    function hapusPenumpang(hapus, arrPenumpang) {
    for (var i = 0; i < arrPenumpang.length; i++) {
    if (arrPenumpang[i] === hapus) {
    arrPenumpang[i] = "(Kosong)";
    alert(hapus + " berhasil turun");
    menu();
    return;
    }
    }
    alert("Penumpang tidak ada di dalam angkot");
    menu();
    }

  • @RexCookie-m7r
    @RexCookie-m7r ปีที่แล้ว

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

  • @asttechnical3404
    @asttechnical3404 7 ปีที่แล้ว +3

    selalu titik koma :D

  • @nurulexperience2374
    @nurulexperience2374 4 หลายเดือนก่อน

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

  • @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;
    }
    }

  • @cherno6592
    @cherno6592 ปีที่แล้ว

    Atau bisa juga dalam perulangan nya dibuat i

  • @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

  • @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;
    }
    }
    }
    }

  • @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;
      }

  • @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.

  • @ilhamrasyidan895
    @ilhamrasyidan895 8 หลายเดือนก่อน

    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

    }

  • @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

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 ปีที่แล้ว

      😂😂 *duduk di atas* 😂😂

    • @hhnstgaming3835
      @hhnstgaming3835 5 ปีที่แล้ว

      Udah kayak naik sinabung aja ya bg duduk di atas, haha..

  • @muhammadirzan9843
    @muhammadirzan9843 4 ปีที่แล้ว +4

    Saat tambah penumpang hasil nya selalu undefined, kenapa ya?

    • @codeyzx
      @codeyzx 4 ปีที่แล้ว

      bila ingin bertanya, sertakan skrip nya gan.

  • @badjoxx2329
    @badjoxx2329 4 หลายเดือนก่อน

    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

  • @nurmuhammadikhsan5876
    @nurmuhammadikhsan5876 4 ปีที่แล้ว +1

    Pak dika bisa ga kalo penumpangnya naik lebih dari satu

  • @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, 😅

  • @ngaung9374
    @ngaung9374 2 ปีที่แล้ว

    // jumlah penumpang
    var penumpang = [undefined];
    // tambah penumpang
    function nambahPenumpang(nama){
    // jika jumlah arraynya dibawah 15 :
    if(penumpang.length

  • @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

  • @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

  • @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

  • @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;
    }

  • @JoeLeotychidas
    @JoeLeotychidas 7 ปีที่แล้ว +3

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

    • @sandhikagalihWPU
      @sandhikagalihWPU  7 ปีที่แล้ว

      😂 di sini juga masih ada yang 86 Leo..

  • @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

  • @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

  • @gabriel-vw9ze
    @gabriel-vw9ze 6 ปีที่แล้ว

    kak saya sudah ikutin caranya, tapi saat pertama kali coba di console "tambahPenumpang('iman',penumpang) " array penumpangnya jadi ['amin, 'iman', 'iman']
    kenapa ya kak?
    Code :
    var penumpang = ['amin',undefined,'iman'];
    var tambahPenumpang = function(namaPenumpang, penumpang) {
    if( penumpang.length == 0) {
    //tambahPenumpang
    penumpang.push(namaPenumpang);
    return penumpang;
    } else {
    for(var i = 0; i+1 < penumpang.length; i++) {
    if( penumpang[i] == undefined) {
    // kursi kosong
    penumpang[i] = namaPenumpang;
    // tambah di kosongnya
    return penumpang;
    }else if( penumpang[i] == namaPenumpang) {
    console.log(namaPenumpang +' sudah ada di angkot.' );
    return penumpang;
    }else if( i == penumpang.length -1) {
    penumpang.push(namaPenumpang);
    // tambah di akhir
    return penumpang;
    }
    }
    }
    }

  • @alwaysbytheway
    @alwaysbytheway ปีที่แล้ว

    17:54

  • @bryanvalentino4501
    @bryanvalentino4501 หลายเดือนก่อน +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 หลายเดือนก่อน

      Jenius banget bang, kok bisa kepikiran gitu ya hehe

  • @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😅

  • @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..

  • @exyezedr
    @exyezedr ปีที่แล้ว +1

    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

  • @blastdragon7214
    @blastdragon7214 4 หลายเดือนก่อน

    var penumpang = ['udin',undefined,'cocote']
    function tambahPenumpang (namaPenumpang,Apenumpang){
    Apenumpang === penumpang
    //cek nama yang udah ada
    var chekNama = penumpang.find(function(e){
    return e == namaPenumpang
    })
    //cek nama yang kosong
    var kursiKosong = penumpang.findIndex(function(penumpang){
    return penumpang==undefined
    })
    //kondisi nama penumpang ada yang sama
    if (namaPenumpang==chekNama){
    console.log(namaPenumpang + ' sudah ada didalam angkot')
    return penumpang
    }
    //kondisi ada kursi kosong
    else if (kursiKosong>=0){
    penumpang[kursiKosong] = namaPenumpang
    console.log(penumpang)
    return penumpang
    }
    //kondisi angkot masih kosong semua
    else if(penumpang.length ==0 ){
    penumpang.unshift(namaPenumpang)
    console.log(penumpang)
    return penumpang
    }
    //kondisi angkot ada penumpangnya
    else if (penumpang.length>0){
    penumpang.push(namaPenumpang)
    console.log(penumpang)
    return penumpang
    }
    }
    ini versi saya pak Dhika, terimakasih atas ilmunya

  • @Dunia_7
    @Dunia_7 11 หลายเดือนก่อน

    Izin tanya pak, knp yg di return penumpang?

  • @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.

  • @garryf7254
    @garryf7254 2 ปีที่แล้ว

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

  • @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;
    }

  • @agus-wesly
    @agus-wesly 3 ปีที่แล้ว

    kalau misal di undefined itu diisi oleh nama yang telah ada di array nya. Caranya bagaimana ya?

  • @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?

  • @bagasnugraha2530
    @bagasnugraha2530 3 ปีที่แล้ว

    Pak, saya sudah mengikuti sc di atas, tp kok tetep ya ada pesan error :
    TypeError: penumpang is undefined

  • @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

  • @syipanusantaraenergi5355
    @syipanusantaraenergi5355 ปีที่แล้ว

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

  • @adib534
    @adib534 2 ปีที่แล้ว

    ijin pak, kenapa di function-nya ada dua parameter? kenapa bukan diisi nama penumpang barunya saja?
    saya coba bikin dengan pendekatan yang berbeda.
    var penumpang = []
    function tambahPenumpang(namaPenumpang) {
    //mencari bangku kosong
    var bangkuKosong
    if(penumpang.indexOf(undefined) != -1) {
    bangkuKosong = penumpang.indexOf(undefined)
    } else bangkuKosong = penumpang.length
    //mencari nama sama
    var namaSama = penumpang.find(function(x){
    return x == namaPenumpang
    })
    //menambah penumpang ke bangku kosong dengan kondisi bukan nama yang sama
    if(namaSama != undefined) {
    console.log(namaPenumpang + ' sudah ada di dalam angkot')
    } else(penumpang.splice(bangkuKosong, bangkuKosong, namaPenumpang))
    //return penumpang
    return penumpang
    }
    console.log(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 ....

  • @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.

  • @HistoryKampung-i1l
    @HistoryKampung-i1l 3 หลายเดือนก่อน

    2024 masih nonton

  • @cecepnandang6514
    @cecepnandang6514 4 ปีที่แล้ว +1

    kurang paham di kodisi yang else if ( i == penumpang.length - 1) , kenapa harus di kurangi 1 pak?

    • @Platinumsnake2024
      @Platinumsnake2024 4 ปีที่แล้ว

      sama masih gak paham

    • @wimorasarwindo1613
      @wimorasarwindo1613 3 ปีที่แล้ว

      Sebenarnya saya kurang paham sepenuhnya mengenai penumpang.length-1, cuma yg saya tahu adl di dalam iterasi for itu i sedang mencari apakah i sama dengan array untuk penumpang.length-1 secara array itu kan dimulai dari 0 bukan 1, jadi mau gak mau harus tambahin penumpang.length-1 saat kondisi. Karena kalau saat kondisi penumpang.length saja, hasilnya:
      - Saat tambah penumpang: Undefined mungkin karena datanya bertabrakan
      - Saat kurangi penumpang: Nanti nama penumpang yg tidak ada di dalam angkot itu tidak bisa muncul notif di console walau nanti saat dihapus, nama yg ada di dalam array berhasil diubah menjadi undefined
      Maaf ya kalau penjelasanku kurang bisa dipahami. Apalagi memang ilmu logika saya memang masih lemah

  • @rizalord
    @rizalord 5 ปีที่แล้ว

    undefined ini juga bisa diterapkan di c++ nggak kak?

  • @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 4 ปีที่แล้ว

      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)

  • @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);
    };

  • @ZidanMDaffa
    @ZidanMDaffa 4 ปีที่แล้ว +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

  • @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