Sabtu, 25 Juni 2022

6 Langkah Budidaya Bayam

Pendahuluan

Bayam adalah tanaman yang mengandung banyak zat besi dan biasanya daunnya diolah sebagai bahan makanan. Bayam sendiri memiliki nama latin yakni "Amaranthus". Bayam merupakan tanaman yang berasal dari Amerika, tetapi sekarang sudah ada di seluruh dunia. Bayam juga merupakan obat anemia atau kurang darah yang bagus karena kandungan zat besinya. Bayam juga sering membaca dengan kartun "Popaye" yang bila dimakan akan menambahkan tenaganya.

Nah selanjutnya, kita akan membudidayakan tanaman bayam dengan baik. Mulai dari pengolahan tanah hingga panen dan juga pembuatan benih untuk ditanam dikemudian hari.


1. Pengolahan Tanah

Dalam pengolahan tanah dimulai dari pembabatan gulma dan rumput liar. Membolak-balik tanah bisa dengan menggunakan traktor bila lahan yang digunakan sangat luas, atau dengan pacul bila lahan tidak terlalu luas. Pemberian pupuk dasar seperti pupuk kandang dan dolomit juga diperlukan dengan mencampurnya dengan tanah.Diamkanlah lahan hingga sekitar 7 hari sebelum menyemaikan benih. Agar tanah mendapat waktu untuk istirahat. Buatlah dengan ukuran kira-kira lebar 150 cm - 200 cm, tinggi 20-30 cm, jarak antar bedengan 40-50 cm. Dan buatlah galengan atau batas dari lahan agak tinggi agar mudah dalam peroses pengairan pada lahan yang luas.

2. Penyemaian dan Penanaman Bayam

Dalam penyemaian sekaligus penaman bayam, siramlah galengan. Buatlah garis seperti zebra-cross yang digunakan untuk menyemaikan benih bayam. Sebelum menyemaikan benih bayam sebaiknya benihkan dicampur dengan pasir dengan kira-kira perbandingan benih : pasir yakni 1 : 3 campurlah hingga rata. Taburkanlah campuran benih dan pasir pada garis yang dibuat. Siramlah secara perlahan agar benih yang ditaburkan tidak hanyut oleh air.

budidaya bayam

3. Pemeliharaan Bayam

Bayam sebaiknya disiram 2 kali sehari. Dalam budaya tetapi disarankan untuk menggunakan pupuk organik, jika kita ingin menggunakan pupuk kimia. Pemupukan dilakukan 2 kali seminggu dan sekitar dua minggu setelah semai atau tanam bayam. Pada pemupukan kimia taburkanlah urea secara tipis-tipis dan campurkan phonska pada pemupukan kedua. Setelah proses pemupukan sebaik-baiknya siram tanaman bayam secara merata.

4. Pengendalian Hama dan Penyakit Bayam

Seperti halnya tanaman lainya bayam juga memiliki hama dan penyakit seperti :

    A. Hama

    Ulat Perusak Daun (Plutella xylostella)

    Ulat ini sangat kecil dan biasanya memakan daun juga bunga tanaman, ukuranya sekitar 0.33 inci. Pengendalian manual bisa dengan sanitasi lingkungan dan untuk penngendalian secara kimia bisa menggunakan decis.

    B. Penyakit

    Rebah Kecambah

    Merupakan serangan penyakit yang disebabkan oleh Rhizoctonia solani Kurn. dan Pythium spp. Penyakit ini biasanya menyerang pada saat tanaman berusia muda dan berada pada tempat persemaian. Rebah kecambah ditandai adanya luka berwarna coklat pada pangkal batang tanaman, sehingga batang patah dan tanaman itu mati. Tanaman inangnya ialah tanaman yang masih muda.

    Busuk Buah (Antraknose)

    Penyakit ini disebabkan oleh penyakit patek atau antraknosa menyerang tanaman pada saat kelembaban udara tinggi (95%) dan suhu udara rendah dibawah 32C dan cendawan tersebut bila menyerang pada biji dapat bertahan hingga 9 bulan.

    Serangan penyakit ini ditandai dengan daun menjadi busuk dan kering. Pengendalian penyakit ini bisa dengan membuang tanaman yang terserang dan membersihkan rumput dan gulma. Pengendalian kimia bisa menghunakan fungisida seperti antrachol.

    Embun Tepung (Powdery Mildew)

    Penyakit ini disebabkan oleh jamur yang bernama Leveillula Taurica. Serangan jamur ini menyebabkan bintik bintik putih maupun kecoklatan dan yang menyerang pada daun bagian bawah terlebih dahulu lalu ke daun yang lebih muda.

    Untuk mengatasi penyakit ini bisa memangkas daun yang terserang dan memusnahkanya lalu jangan lupa untuk mencuci tangan dengan sabun atau air yang mengalir untuk pencegahan penularan penyakit ke bagian tanaman lainya. Penanggulangan dengan zat kimia dengan menggunakan dithane.

5. Panen Bayam

Pemanenan bayam dilakukan ketika umur 25-35 hss (hari setelah semai). Pemanenan bayam bisa dilakukan dengan cara dipetik atau juga dicabut. Bayam dengan spesies bayam kakap (Amaranthus hybritus) bagus bila dipetik. Sedangkan bayam dengan spesies Amaranthus Tricolor untuk bayam yang dicabut. Bayam yang dicabut akan dipanen pada usia 25 hss.

6. Pembenihan Bayam

Proses pembenihan bayam sebaiknya memilih dari indukan bayam yang sehat baik secara fisik maupun dari gangguan virus. Tunggulah hingga bayam berbunga dan bunganya terlihat kecoklatan. Ambilah bunga yang berwarna coklat tersebut dan pisahkanlah biji bayam dari kulit bunga yang menempel dengan menggesekanya ketangan. Lalu ayaklah atau tiuplah secara perlahan untuk membuang sisa bunga dan mendapatkan bayam yang bersih. Selanjutnya jemurlah benih sekitar 2-3 jam lalu bisa langsung disemai atau bisa disimpan di tempat yang kering dan rapat juga terhindar dari matahari langsung.

Kamis, 02 Juni 2022

String, String Function | Bahasa C String

String dan String Function

Tipe data string juga sering digunakan dalam suatu program begitu juga bahasa c. Walau bahasa ini bahasa tingkat rendah, bahasa ini juga bisa memakai data tipe string. Hanya saja dalam penggunaanya data tersebut menjadi array yang akan otomatis menambahkan diakhir karakter NULL yakni \0. Seperti dalam pendeklarasian :

char str[6] = "hallo";

char str[6] ={'h','a','l','l','o','\0'};

char str[] ={'h','a','l','l','o','\0'};

Pendeklarasian string sebaiknya memiliki nilai lebih dari 2 karakter dari yang dibutuhkan. Untuk mempermudah pengolahan data dalam bentuk string kita bisa menggunakan pustaka string.h. Fungsi-fungsi pada pustaka string.h yakni:

strlen() - menemukan jumlah huruf

strcat() - menggabungkan dua string

strcpy() - menyalin satu string ke yang lainya

strlwr() - mengubah string ke huruf kecil

strupr() - mengubah string ke huruf kapital

strrev() - membolak-balik string

strcmp() - membandingkan dua string

Berikut ini contoh penggunaan dalam applikasi bandingKata.c

#include <stdio.h>

#include <string.h>

int main(){

    char a[6], b[6];

    int banding;

    printf("masukan nilai variabel a \n");

    gets(a);

    //lebih aman pake fgets

    //fgets(a, 6, stdin);

    printf("masukan nilai variabel b \n");

    gets(b);

    //lebih aman pake fgets

    //fgets(b, 6, stdin);

    banding =strcmp(a, b);

    if(banding == 0){

        printf("sama \n");

    }else{

        printf("tidak sama \n");

    }

    return 0;

}

Aplikasi diatas menggunakan function strcmp() yang akan mengembalikan nilai 0 atau true jika benar. Selanjutnya mencetak kata sama bila kata tersebut sama. Kamu bisa mengubah jumlah kata yang ingin dibandingkan sesuai dengan keinginan pada baris ke 4.

String juga bisa menggunakan function sprintf dan sscanf. Dengan contoh penggunaan dalam file string1.c dan string2.c ini:

#include <stdio.h>

int main(){

    char info[] = "SMK 500 38";

    char tempat[50];

    int murid, guru;

    sscanf(info, "%s %d %d", tempat, &murid, &guru);

    printf("Di %s terdapat %d siswa dan %d tenaga pengajar", tempat, murid, guru);

    return 0;

}

Ini akan menampilkan data yang dimasukan pada variabel info. Berikutnya yakni file string2.c :

#include <stdio.h>

int main(){

    char info[100];

    char namaDepan[] = "Abdurrahman";

    char namaBelakang[] = "Umar";

    int pendapatan = 500000;

    sprintf(info, "%s %s memiliki pendapatan Rp.%d perhari", namaDepan, namaBelakang, pendapatan);

    printf("%s \n", info);

    return 0;

}

atoi, atof, atol, strtol function

atoi funtion digunakan untuk mengubah tipe data string(huruf) menjadi integer(angka). Format penggunaanya yakni int atoi(str) dan dibawah ini merupakan contoh sederhananya. Sedangkan atof mengubah tipe string menjadi float, function atol mengubah string menjadi long integer dan function strtol mengubah string menjadi long integer. Berikut ini adalah file hurufAngka.c yang menerapkan function atoi, atof dan atol.

#include <stdio.h>

#include <stdlib.h>

int main(){

        char masukan[10];

        int angka;

        float  angka2;

        long int angka3;


        printf("Masukan angka yang kamu mau:\n");

        scanf("%s", masukan);

        angka = atoi(masukan);

        printf("Kamu memasukan angka %d \n", angka);

        angka2 = atof(masukan);

        printf("Kamu memasukan angka %f \n", angka2);

        angka3 = atol(masukan);

        printf("Kamu memasukan angka %ld \n", angka3);

        return 0;

}

Pointer , Function Pointer, Void Pointer | Bahasa C

Pointer

Pada pembahasan sebelumnya kita membahas tentang array dan function. Maka kali ini kita akan membahas tentang pointer. Bahasa C merupakan bahasa level rendah yang bisa dengan mudah mengakses lokasi memori.

Sebagai contoh dalam penggunaan fungsi scanf() yang menempatkan nilai dan tempat memori pada suatu variabel dengan menggunakan simbol &.

#include <stdio.h>

int main(void)

{

int angka;

printf("masukan angka yang diinginkan : ");

scanf("%d", &angka); //ini yang dimaksud pointer

printf("\n Angka yang kamu masukan ialah %d \n", angka);

return 0;

}

Contoh program sederhana diatas merupakan contoh penggunaan pointer. Lalu bagaimana kita mengakses dan mengetahui alamat memori dari suatu variabel? Sebuah alamat memori diberikan seperti angka hexadesimal yakni

#include <stdio.h>

int main(void)

{

int angka;

printf("masukan angka yang diinginkan : ");

scanf("%d", &angka); //ini yang dimaksud pointer

printf("\n Angka yang kamu masukan ialah %d \n", angka);

printf("Alamat memorinya dari variabel angka yakni %x \n", &angka);

return 0;

}

Ini juga berlaku pada variabel di dalam fungsi yang bisa dilihat pada contoh program ini

#include <stdio.h>

void tes(int angka);

int main()

{

int z = 4;

printf("Alamat memori dari z adalah %x \n", &z);

tes(z);

printf("Alamat memori dari z adalah %x \n", &z);

tes(z);

return 0;

}

void tes(int angka)

{

printf("alamat dari variabel angka pada fungsi tes yakni %x \n", &angka);

}

Memori yang dipakai untuk dua variabel itu sama dari kurung buka sampai tutup dari kurung.

Function Pointer

Pointer bisa digunakan di dalam fungsi yang lainya. Sebagaimana dari sifat poiter yang memiliki alamat memorinya dan nilainya tersendiri. Untuk menggunakan function poiter atau pointer di fungsi kita bisa menggunakan formasi seperti

return_type (*func_name)(parameter)

Untuk praktiknya mari kita buat file bernama poin2func.c dengan isi file sebagai berikut:

#include <stdio.h>

void katakan_hello(int perulangan ); // inisiasi pointer

int main(void)

{

    void (*func_poin)(int); //function pointer

    func_poin = katakan_hello;//menginisiasi pointer ke function pointer

    func_poin(3);// memasukan nilai sekaligus memanggil pointer

    return 0;

}

void katakan_hello(int perulangan)

{

    int x;

    for (x = 0; x < perulangan; x++)

    {

        printf("Hallo Programmer \n");

    }

}

Pada baris ke 6 dari file poin2func tersebut kita bisa menambahkan & pada kode func_poin = &katakan_hello; dan Juga kita bisa menggunakan tanda kurung dan * untuk memasukan nilai sekaligus memanggil pointer pada baris ke 7 seperti(*func_poin)(3); atau menjadi (func_poin)(3); Penggunaan * tidak masalah dalam baris kode itu.

Void Pointer

Void pointer merupakan pointer yang digunakannuntuk mengembalikan ke tipe alamat apapun. Walaupun alamat itu digunakan pada tipe-tipe data yang berbeda. Cara mendeklarasikanya yakni dengan format:

void *ptr;

Untuk memahaminya mari kita buat file voidPoin.c yang berisi kode ini:

#include <stdio.h>

int main(void)

{

    int x = 12;

    float y = 3.4;

    char c ="l";

    void *ptr;

    ptr = &x;

    printf("void ptr menunjuk pada %d \n", *((int *)ptr));

    ptr = &y;

    printf("void ptr menunjuk pada %f \n", *((float *)ptr));

    ptr = &c;

    printf("void ptr menunjuk pada %c \n", *((char *)ptr));

    return 0;

}

Void pointer juga biasanya digunakan untuk mendeklarasikan function. Sebagai contoh pada kode void * kotak(const void *);. kode void * digunakan untuk semua tipe data yang akan digunakan sedangkan kata const digunakan untuk membuat tipe data  nilai yang digunakan tetap sama. Sebagai dalam file voidPoin2.c :

#include <stdio.h>

void * kotak(const void * sisi);

int main(void)

{

    int a, ktk;

    a = 7;

    ktk = kotak(&a);

    printf("panjang sisi kotak %d dan luasnya %d \n", a, ktk);

    return 0;

}

void * kotak(const void * sisi)

{

    int luas;

    luas = (*(int *) sisi) * (*(int *)sisi);

    return luas;

}

Contoh program pengurutan.c

Program ini menggunakan qsort yang ada pada pustaka stdlib.h. Lalu kita menggunakan void pointer bandingkan.

#include <stdio.h>

#include <stdlib.h>


int bandingkan (const void *, const void *); 


int main() {

    int arr[5] = {52, 23, 56, 19, 4};

    int num, width, i;

  

    num = sizeof(arr)/sizeof(arr[0]);

    width = sizeof(arr[0]);

    qsort((void *)arr, num, width, bandingkan);

    for (i = 0; i < 5; i++)

        printf("%d ", arr[ i ]);

    

    return 0;

}


int bandingkan (const void *elem1, const void *elem2) {

    if ((*(int *)elem1) == (*(int *)elem2))

        return 0;

    else if ((*(int *)elem1) < (*(int *)elem2))

        return -1;

    else

        return 1;

Rabu, 01 Juni 2022

Astro Mengumpulkan $60 Juta Dalam Bisnis Kirim Bahan Makanan

Teknologi kini semakin memudahkan kita dalam segala aktifitas baik dari kita bekerja maupun berbelanja. Sekarang sudah banyak sekali e-commerce yang menawarkan baik barang atau jasa yang dicari para pengguna internet. Tentu dengan fasilitas yang semakin bersaing baik dari segi kualitas pelayanan maupun operasi transaksi. Saya akan membahas tentang satu e-commerce yang termasuk juga e-grocery baru di Indonesia yakni Astro .

Astro Indonesia yakni sebuah platform e-grocery di indonesia yang beroperasi di bidang transportasi bahan makanan. Astro sendiri mengusung tema 15 menit sampai. Yang diambil dari warung mitra mereka yang dekat dari pelanggan. Dengan mengumpulkan dana $60 juta berharap bisnis ini berkembang lebih baik. Pendanaan ini juga ditujukan untuk akuisisi pengguna, pengembangan produk, dan investasi lebih banyak staf untuk menambah 200 waktu saat ini.

Astro Indonesia

credit astro

Selain itu Astro yang didirikan oleh veteran Tokopedia yakni Vincent Tjendra sekitar 9 bulan lalu. Menurut kami usaha ini sangat besar tantangan dimana negara kita yang merupakan negara yang memiliki banyak kepulauan. Tetapi memang dengan infrastruktur yang baik. Jaringan komunikasi dan pendistribusian yang baik merupakan kunci utama dari usaha ini. Selain itu pasokan bahan makanan juga menjadi hal yang krusial dimana sekarang bahan makanan memiliki harga dengan kecendrungan naik.

Tak Sendiri, Astro juga memiliki rival-rival yang sudah ada sebelumnya seperti SayurBox , HappyFresh dan TaniHub. Mereka juga sudah andil dalam bisnis ini cukup lama. Meskipun demikian Astro sendiri sedang beroperasi di daerah JaBoDeTaBek (Jakarta Bogor Depok Tangerang Bekasi) dengan wilayah sekitar 30 juta penduduk dan sekitar 1000 kurir. Target pasar ini mulia dari profesional yang bekerja di rumah hingga orang tua muda di ruamha yang mencari kenyamanan dalam belanja bahan makanan.

Applikasi Astro sendiri sudah diunduh lebih dari 1juta kali. Kamu sendiri bisa mengunduhnya di ponsel pintar kamu di appstore atau playstore. Website Astro sendiri yakni beralamat di astronot.id. Bagaimana menurut anda? Apakah anda tertarik untuk bergabung atau berbelanja disana? Atau anda sudah memiliki e-grocery yang anda suka.

Kamis, 19 Mei 2022

Array | Bahasa C

Mengenal Array

Array merupakan struktur data yang menyimpan kumpulan nilai yang berhubungan dalam tipe data yang sama. Array biasanya digunakan untuk menampilkan data ulang yang berhubungan dengan satu deskripsi nama daripada menggunakan variabel nama unik yang berbeda-beda. Sebagai contoh kita memiliki kumpulan data nilai dan nomer mahasiswa.

#include <stdio.h>

int main(void){

int NIM[260]={114567829, 114567830};

float NilaiDataStruktur[260]={8.2,7.9};

printf("Struktur data nilai matakuliah dari %d adalah %.2f \n",NIM[0], NilaiDataStruktur[0]);

return 0;

}

Menginisiasi Array

Dalam bahasa C, kita bisa menggunakan jenis data diikuti dengan nama yang digunakan untuk array yang ingin dibuat lalu tambah kurung kotak untuk banyak data yang ingin dibuat. Cintoh diatas yakni int NIM[260]={114567829, 114567830}; yang mengartikan bahwa kita membuat array dengan nama NIM yang jenis datanya yakni int dengan banyak data 260.

Menambahkan, Mengubah dan Menghapus Nilai Array

pada kode int NIM[260]={114567829, 114567830}; kita menambahkan array NIM[0] dan NIM[1]. Bagaimana dengan yang ke-3 dan seterusnya nilai dari integer yang belum ditambahkan yakni 0, bila tipe data float yakni 0.000000 dan char yakni tidak ada yah bisa kita sebut dengan default value. Lalu bagaimana jika kita ingin menambahkan nilai NIM[100] misalkan. Kita hanya perlu menggunakan kode NIM[100] = 114567930; ini akan menambahkan nilai NIM[100].Ini juga bisa diguakan untuk mengubah nilai yang sudah ada. Untuk menghapus datanya kamu bisa menggunakan default value sesuai dengan tipe datanya.

Array Dua Dimensi

Ini biasanya digunakan untuk kepentingan mengolah data dalam jumlah yang banyak. Contoh sederhana dari array dua dimensi yakni :

int dimensi[2][3] = {

  {3, 2, 6},

  {4, 5, 20}

};

Untuk memanggilnya kita perlu menggunakan perulangan dalam bentuk seperti ini.

int a, b;

for(a=0; a<2; a++){

    for(b=0;b<3;b++){

    printf(" %d",dimensi[a][b]);

    }

printf("\n");

}

Seperti dalam pembagian nilai suatu matapelajaran atau matakuliah di sebuah sekolah. Diibaratkan kita memiliki 12 orang siswa yang memiliki masing-masing 5 nilai yang akan kita olah sebagai data yang akan kita olah sebagai informasi. Berarti kita memiliki 60 nilai.

#include <stdio.h>

#define Mahasiswa 12 //mahasiswa

#define NilaiMatakuliah 5 //matakuliah

int main(void)

{

//mengisi data permatakuliah.

const float rapot[NilaiMatakuliah][Mahasiswa] =

{

{4.3,4.3,4.3,3.0,2.0,1.2,0.2,0.2,0.4,2.4,3.5,6.6},

{8.5,8.2,1.2,1.6,2.4,0.0,5.2,0.9,0.3,0.9,1.4,7.3},

{9.1,8.5,6.7,4.3,2.1,0.8,0.2,0.2,1.1,2.3,6.1,8.4},

{7.2,9.9,8.4,3.3,1.2,0.8,0.4,0.0,0.6,1.7,4.3,6.2},

{7.6,5.6,3.8,2.8,3.8,0.2,0.0,0.0,0.0,1.3,2.6,5.2}

};

int matkul, mhs;

float subtot, total;

printf("Jumlah Nilai Per Matakuliah \n");

for (matkul = 0, total = 0; matkul < NilaiMatakuliah; matkul++)

{ // jumlahkan semua nilai

for (mhs = 0, subtot = 0; mhs < Mahasiswa; mhs++)

subtot += rapot[matkul][mhs];

printf("%5d %15.1f\n", 2010 + matkul, subtot);

jumlah += subtot; // total untuk semua tahun

}

printf("\nNilai rata-rata mahsiswa %.1f.\n\n",

total/NilaiMatakuliah);

printf("Rata-rata Permatakuliah:\n\n");

printf(" ~A~ ~B~ ~C~ ~D~ ~E~ ~F~ ~G~ ~H~ ~I~ ~J~ ");

printf("~K~ ~L~\n");

untuk (mhs = 0; mhs < Mahasiswa; mhs++)

{

for (matkul = 0, subtot =0; matkul < NilaiMatakuliah; matkul++)

subtot += rapot[matkul][mhs];

printf("%4.1f", subtot/NilaiMatakuliah);

}

printf("\n");

return 0;

}

Untuk menginisiasi array dua dimensi digunakan seperti pada rapot.c

float rapot[NilaiMatakuliah][Mahasiswa] =

{

{4.3,4.3,4.3,3.0,2.0,1.2,0.2,0.2,0.4,2.4,3.5,6.6},

{8.5,8.2,1.2,1.6,2.4,0.0,5.2,0.9,0.3,0.9,1.4,7.3},

{9.1,8.5,6.7,4.3,2.1,0.8,0.2,0.2,1.1,2.3,6.1,8.4},

{7.2,9.9,8.4,3.3,1.2,0.8,0.4,0.0,0.6,1.7,4.3,6.2},

{7.6,5.6,3.8,2.8,3.8,0.2,0.0,0.0,0.0,1.3,2.6,5.2}

};

Array Bahasa C


Ini juga berlaku untuk array lebih dari dua dinensi tersebut. Seperti int kotak[10][20][30]; yeng merupakan array 3 dimensi.