Keragaman Budaya Indonesia 5 Provinsi - Indonesia sangatlah kaya dengan keaneka ragaman istiadat pun budaya, tentu saja hal tersebut disebabkan oleh distrik Indonesia yang berbentuk kepulauan sehingga meningkatkan kekayaan dan keanekaragaman kebiasaan masing-masing pulau. Bahkan guna satu pulau ada bermacam-macam atau keanekaragaman kebiasaan pada masing-masing provinsi. Perbedaan kebiasaan dapat disaksikan dari adanya lokasi tinggal adat, pakaian adat, tarian tradisional, senjata tradisional, lagu daerah, suku wilayah dan sejumlah julukan pada 5 provinsi, bahkan sejumlah provinsi mempunyai lebih dari satu macam lokasi tinggal adat sebab pengaruh dari adanya suku yang beraneka aneka yang bermukim pada satu provinsi. Berikut ini kami tuliskan mengenai rumah tinggal adat, pakaian adat, tarian tradisional, senjata tradisional, lagu daerah, suku wilayah dan julukan pada 5 provinsi yang terdapat di Indonesia. 1. Provinsi Jawa Barat (JABAR) Ibukota ...
Ada banyak cara yang berbeda untuk menulis sebuah program untuk suatu tugas tertentu. Mari kita coba variasi pada suhu converter.
#include
/* mencetak tabel Fahrenheit-Celsius */ main()
{
int fahr;
for (fahr = 0; fahr <= 300; fahr = fahr + 20) printf("%3d %6.1f\n", fahr, (5.0/9.0)*(fahr-32));
}
Ini menghasilkan jawaban yang sama, tapi jelas terlihat berbeda. Salah satu perubahan utama adalah penghapusan sebagian besar variabel, hanya fahr tetap, dan kami telah membuat sebuahint.Bawah dan atas batas dan ukuran langkah hanya muncul sebagai konstanta dalam untuk pernyataan, sendiri merupakan konstruksi baru, dan ekspresi yang menghitung suhu Celsius sekarang muncul sebagai argumen ketiga printf bukannya pernyataan penugasan terpisah.
Perubahan terakhir ini adalah turunan dari aturan umum - dalam konteks di mana ia diperbolehkan untuk menggunakan nilai dari beberapa jenis, Anda dapat menggunakan ekspresi yang lebih rumit dari tipe tersebut. Karena argumen ketiga printf harus menjadi nilai floating-point untuk mencocokkan %6.1f,setiap ekspresi floating-point dapat terjadi di sini.
Pernyataan for itu adalah loop, generalisasi dari while. Jika Anda bandingkan dengan while sebelumnya, operasinya harus jelas. Dalam kurung, ada tiga bagian, yang dipisahkan oleh titik koma. Bagian pertama, inisialisasi
fahr = 0
dilakukan sekali, sebelum loop yang tepat dimasukkan. Bagian kedua adalah tes atau kondisi yang mengontrol loop:
fahr <= 300
Kondisi ini dievaluasi, jika memang benar, tubuh loop (di sini satu ptintf) dijalankan. Maka langkah kenaikan
fahr = fahr + 20
dijalankan, dan kondisi re-evaluasi. Loop berakhir jika kondisi telah menjadi palsu. Seperti dengan while, tubuh loop bisa menjadi pernyataan tunggal atau sekelompok pernyataan diapit oleh kurung. Inisialisasi, kondisi dan peningkatan dapat berupa ekspresi.
Pilihan antara while dan for adalah sewenang-wenang, berdasarkan yang tampaknya lebih jelas. For biasanya sesuai untuk loop di mana inisialisasi dan kenaikan adalah pernyataan tunggal dan logis terkait, karena lebih kompak dari while,dan itu membuat pernyataan kontrol loop bersama-sama di satu tempat.
Latihan: Memodifikasi program konversi suhu untuk mencetak tabel dalam urutan terbalik, yaitu, dari 300 derajat ke 0.
#Konstanta simbolik(Symbolic Constants)
Pengamatan terakhir sebelum kami meninggalkan konversi suhu selamanya. Ini praktik buruk untuk mengubur `` angka ajaib'' seperti 300 dan 20 dalam sebuah program, mereka menyampaikan sedikit informasi kepada seseorang yang mungkin harus membaca program nanti, dan mereka sulit untuk berubah dengan cara yang sistematis. Salah satu cara untuk berurusan dengan angka ajaib adalah untuk memberi mereka nama-nama bermakna. A # mendefinisikan garis mendefinisikan nama simbolis atau konstan simbolis menjadi string tertentu karakter:
#define nama daftar pengganti
Setelah itu, setiap terjadinya nama (tidak dalam tanda kutip dan bukan bagian dari nama lain) akan digantikan oleh teks pengganti yang sesuai. Nama ini memiliki bentuk yang sama sebagai nama variabel: urutan huruf dan angka yang dimulai dengan huruf a. Teks pengganti dapat berupa urutan karakter, tetapi tidak terbatas pada angka-angka.
#include
#define LOWER
|
0
|
/* lower limit of table */
|
#define UPPER
|
300
|
/* upper limit */
|
#define STEP
|
20
|
/* step size */
|
/* print Fahrenheit-Celsius table */
main()
{
int fahr;
for (fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP) printf("%3d %6.1f\n", fahr, (5.0/9.0)*(fahr-32));
}
kuantitas LOWER, UPPER dan STEP adalah konstanta simbolis, bukan variabel, sehingga mereka tidak muncul dalam deklarasi. Nama konstanta simbolis secara konvensional ditulis dalam huruf besar sehingga mereka dapat BER mudah dibedakan dari huruf kecil nama variabel. Perhatikan bahwa tidak ada titik koma di akhir baris #define.
#karakter input dan Output (Character Input and Output)
Kita akan mempertimbangkan keluarga program terkait untuk memproses data karakter. Anda akan menemukan bahwa banyak program hanya diperluas versi prototipe yang kita bahas di sini.
Model input dan output didukung oleh perpustakaan standar sangat sederhana. Input teks atau output, terlepas dari mana itu berasal atau di mana ia pergi ke, dibahas sebagai aliran karakter. Aliran teks adalah urutan karakter dibagi menjadi baris; setiap baris terdiri dari nol atau lebih karakter diikuti oleh karakter baris baru. Ini adalah tanggung jawab perpustakaan untuk membuat setiap input atau output aliran mengkonfirmasi model ini, programmer C menggunakan perpustakaan tidak perlu khawatir tentang bagaimana garis diwakili luar program.
Perpustakaan standar menyediakan beberapa fungsi untuk membaca atau menulis satu karakter pada satu waktu, yang getchar dan putchar yang paling sederhana. Setiap kali disebut, getcharmembaca karakter input berikutnya dari aliran teks dan kembali bahwa sebagai nilainya. Artinya, setelah
c = getchar();
variabel c berisi karakter berikutnya dari input. Karakter biasanya datang dari keyboard, masukan dari file dibahas nanti.Fungsi putchar mencetak karakter setiap kali itu disebut:
putchar(c);
mencetak isi dari variabel integer c sebagai karakter, biasanya di layar. Panggilan ke putchar dan printf dapat disisipkan, output akan muncul dalam urutan di mana panggilan akan dibuat.
#file Menyalin(File Copying)
Mengingat getchar dan putchar, Anda dapat menulis jumlah yang mengejutkan kode yang berguna tanpa mengetahui apa-apa lagi tentang input dan output. Contoh paling sederhana adalah program yang salinan input ke output yang salah satu karakter pada satu waktu:
membaca karakter
while (charater tidak end-of-file indicator)
Output karakter hanya membaca
membaca karakter
Konversi ini ke C memberikan:
#include
/* copy input to output; 1st version */
main()
{
int c;
c = getchar();
while (c != EOF) {
putchar(c);
c = getchar();
}
}
Operator relasional ! = Berarti `` tidak sama dengan''.
Apa yang tampaknya menjadi karakter pada keyboard atau layar tentu saja, seperti yang lainnya, tersimpan secara internal hanya sebagai pola bit. Tipe char secara khusus dimaksudkan untuk menyimpan data karakter tersebut, tetapi setiap tipe integer dapat digunakan. Kami menggunakan int untuk alasan halus namun penting.
Masalahnya adalah membedakan akhir masukan dari data yang valid. Solusinya adalah bahwa getchar mengembalikan nilai tersendiri saat tidak ada lagi masukan, nilai yang tidak dapat bingung dengan karakter yang nyata. Nilai ini disebut EOF, untuk `` akhir file''. Kita harus menyatakan c menjadi tipe yang cukup besar untuk menampung setiap nilai yang getchar kembali. Kita tidak bisa menggunakan arang karena c harus cukup besar untuk menampung EOF di samping setiap arang mungkin. Oleh karena itu kami menggunakan int.
EOF adalah bilangan bulat didefinisikan dalam , tetapi nilai numerik tertentu tidak masalah asalkan tidak sama seperti nilai arang. Dengan menggunakan konstanta simbolis, kita yakin bahwa tidak ada dalam program ini tergantung pada nilai numerik tertentu.
Program untuk menyalin akan ditulis lebih singkat oleh C programmer berpengalaman. Dalam C, tugas apapun, seperti
c = getchar();
adalah ekspresi dan memiliki nilai, yang merupakan nilai dari sisi kiri setelah penugasan. Ini berarti bahwa tugas yang dapat muncul sebagai bagian dari ekspresi yang lebih besar. Jika penugasan karakter ke c diletakkan di dalam tes bagian dari while loop, program salinan dapat ditulis dengan cara ini:
#include
/* copy input to output; 2nd version */
main()
{
int c;
while ((c = getchar()) != EOF)
putchar(c);
}
Sementara karakter while, memberikannya ke c, dan kemudian menguji apakah karakter adalah akhir-of-file sinyal. Kalau tidak, tubuh while dijalankan, mencetak karakter. While kemudian mengulangi. Ketika akhir input akhirnya tercapai, while berakhir dan begitu juga main.
Versi ini memusatkan input - sekarang ada hanya satu referensi untuk getchar - dan menyusut program. Program yang dihasilkan lebih kompak, dan, sekali idiom dikuasai, lebih mudah dibaca. Anda akan melihat gaya ini sering. (Ini mungkin untuk mendapatkan dibawa pergi dan membuat kode tak tertembus, namun, kecenderungan yang akan kita coba untuk mengekang.)
Tanda kurung di sekitar penugasan, dalam kondisi yang diperlukan. Didahulukan dari ! = Adalah lebih tinggi dari =, yang berarti bahwa dengan tidak adanya tanda kurung tes relasional ! = Akan dilakukan sebelum tugas =. Jadi pernyataan
c = getchar() != EOF
setara dengan
c = (getchar() != EOF)
Ini memiliki efek yang tidak diinginkan dari pengaturan c dengan 0 atau 1, tergantung pada apakah atau tidak panggilan getchar kembali akhir file.
Latihan: Pastikan ekspresi getchar ()! = EOF adalah 0 atau 1.
Latihan: Menulis sebuah program untuk mencetak nilai EOF.
By:gonoh
Komentar