Anda di halaman 1dari 15

PENGANTAR CODING

“TIPE DATA, IDENTIFIER DAN OPERATOR”

DISUSUN OLEH :
NAMA :NATASYA AMANDA
NIM:20086248

DOSEN PENGAMPU :
Drs. ZULHENDRA, M.Kom.

PROGRAM STUDI PENDIDIKAN JASMANI, KESEHATAN DAN


REKREASI
JURUSAN PENDIDIKAN OLAHRAGA
FAKULTAS ILMU KEOLAHRAGAAN
UNIVERSITAS NEGERI PADANG
2021
A. Kasus/Tugas**)
1) Mengkonversikan jam-menit-detik (hh:mm:ss) menjadi total detik. Data
jam-menit-detik diberikan nilainya pada bagian deklarasi program.
Ingatlah bahwa : 1 menit = 60 detik
1 jam = 3600 detik
Misalnya, 1 jam, 5 menit, 40 detik adalah (1 x 3600) + (5 x 60) + 40 =
3940 detik.
Jawaban :

#include <iostream>

using namespace std;

int main(){

int jj, mm, dd, totalDetik;

float meter, km, cepat;

char titikDua;

cout<<"MENGHITUNG Total Detik"<<endl;

cout<<"-----------------------------------"<<endl;

cout<<"Masukan Waktu Jam :";

cin>>jj;

cout<<"Masukan Menit :";

cin>>mm;

cout<<"Masukan Detik :";


cin>>dd;

totalDik=jj * 3600 + mm * 60 + dd;

cepat=meter/totalDetik;

cout<<"-----------------------------------"<<endl;

cout<<"Total Detik = "<<totalDetik<<endl;

cout<<"-----------------------------------"<<endl;}

2) Dibaca lama sebuah percakapan telepon dalam satuan detik. Tulislah


algoritma program dalam bahasa C untuk menghitung berapa jam, berapa
menit, berapa detik percakapan telepon tersebut.
Contoh 4000 detik = 1 Ingatlah bahwa : 1 menit jam + 6 menit + 40
detik, ini diperoleh dengan cara :
4000 div 3600 = 1 (jam)
4000 mod 3600 = 400 (sisa detik)
400 div 60 = 6 (menit)
400 mod 60 = 40 (detik)
Masalah pada soal kasus ini merupakan kebalikan dari kasus/tugas soal
sebelumnya.
Jawaban :

#include <stdio.h> #include <conio.h> main() { int


sec,i,jml[2],waktu[2]={3600,60}; printf("Masukan jumlah detik yang
mau dihitung : "); scanf("%d",&sec);

printf("\n==============================================
="); printf("\n maka waktunya adalah : "); for(i=0;i<=1;i++) { jml[i]=sec
/ waktu[i]; sec= sec-(waktu[i]*jml[i]); } printf("\n Jam : %d \n Menit :
%d \n Detik : %d ",jml[0],jml[1],sec); getch(); }
3) Buatlah algoritma program dalam bahasa C/C++ bagaimana cara
mempertukarkan nilai dua buah variable drum-A dan drum-B…? Misalnya
sebelum pertukaran nilai (isi) drum-A adalah 18, dan nilai drum-B adalah
25, maka setelah pertukaran, nilai drum-A adalah 25 dan nilai drum-B
adalah 18. Andaikan nilai yang dipertukarkan adalah bertipe long-integer.
Buatlah algoritma programnya dalam bahasa C/C++.

Jawaban:

#include <stdio.h> void swap(int *a, int *b) { int c = *a; printf("Proses
pertukaran data di dalam fungsi\n"); printf(" --> a=%d, b=%d, c=%d\n",
*a, *b, c); *a = *b; printf(" --> a=%d, b=%d, c=%d\n", *a, *b, c); *b
= c; printf(" --> a=%d, b=%d, c=%d\n\n", *a, *b, c); } int main() {
int A = 18; int B = 25; printf("Data SEBELUM proses pertukaran\n");
printf("A=%d, B=%d\n\n", A, B); swap(&A, &B); printf("Data
SETELAH proses pertukaran\n"); printf("A=%d, B=%d\n\n\n", A, B);
return 0; }

4) Buatlah program untuk menerima daftar nilai mahasiswa sbb :


Input : - Jumlah data (n)
- Nilai ke-1 s/d Nilai ke-n
Output : - Nilai minimal
- Nilai maksimal
- Nilai rata-rata (rata-rata = nilai total / jumlah data)
Jawaban:

#include <stdio.h>

#include <conio.h>

main()

inti,input,nilai,minimal,maksimal,jumlah=0;

float rata;

printf("Masukkan jumlah nilai yang akan anda inputkan: ");

scanf("%d",&input);

for (i=1;i<=input;i++)

printf("Masukkan nilai ke %d: \n",i);

scanf("%d",&nilai);

jumlah=jumlah+nilai;

if (i==1) maksimal=nilai;

minimal=n }

else{

if (minimal>nilai) minimal=n}

if (maksimal<nilai){

maksimal=ni } } }
rata=jumlah/input;

printf("Nilaiminimal=%d\nNilaimaksimal=%d\nNilai

ratarata=%0.2f\n\n\n",mini

mal,maksimal,rata);

getch(); -}

5) Buatlah program untuk menerima 2 buah bilangan bulat masukan.


Tampilkan hasil dari pembagian bilangan pertama dengan bilangan kedua,
dengan ketelitian 3 desimal.
Input : bil1 dan bil2
Output : hasil bagi bil1 dengan bil2
Nilai tambah: program bisa mengecek pembagian dengan nol, yaitu jika
bilangan kedua adalah nol, maka tidak dilakukan proses pembagian,
namun ditampilkan pesan kesalahannya (division by zero).

Jawaban:

#include <stdio.h>

int main()

double bilangan1,bilangan2,hasil=0;

printf("*masuk bilangan pertama=");

printf("%if",&bilangan1);

printf("*masukan bilangan kedua=");


scanf("%if",&bilangan2);

if(bilanga

n2==0){

printf("\n-maaf bilangan kedua tidak boleh sama dengan 0");}

else{

hasil=bilangan1/bilangan2;

printf("\n-hasilnya pembagian bilangan pertama dan kedua adalah


%.3if",hasil); }

B. Soal Teori :
1. Jelaskan struktur beberapa komponen dasar sebuah program sederhana
yang ditulis dengan bahasa C maupun C++.
Jawaban :
a. #include <stdio.h>
Di baris paling awal, terdapat kode #include. Perintah #include
digunakan untuk memasukkan sebuah file khusus yang memungkinkan
kita mengakses berbagai fitur tambahan dalam bahasa C.
Dalam contoh diatas, file stdio.h berisi kode program agar nantinya
kita bisa mengakses perintah printf. File stdio.h sendiri merupakan
singkatan dari Standard Input/Output.
Dengan kata lain, agar di dalam kode program nanti kita bisa
menggunakan perintah printf, dibagian paling atas kode program C harus
terdapat baris #include <stdio.h>. File include ini juga sering disebut
sebagai header file, dan karena itu pula menggunakan akhiran .h.
Bahasa C menerapkan konsep modular, dimana fitur-fitur yang ada di
pecah ke berbagai file. Jika ingin menggunakan perintah tertentu, panggil
header file yang sesuai.
Hasilnya, ukuran file program yang ditulis menggunakan bahasa C
menjadi efisien. Kita hanya perlu menggunakan header file yang
dibutuhkan saja. Namun kebalikannya, setiap ingin menggunakan perintah
tertentu, harus men-include-kan file header yang dibutuhkan.

b. int main(void) { }
Satu-satunya perintah yang harus ada di setiap kode program bahasa C
adalah main(). Struktur main() sendiri pada dasarnya merupakan sebuah
fungsi (function). Isi dari function ini diawali dan diakhiri dengan tanda
kurung kurawal ” { ” dan ” } “. Di dalam tanda kurung inilah “isi” dari
kode program penyusun fungsi main() ditulis.
Kode int sebelum main() menandakan nilai kembalian atau hasil akhir
dari function main(). Kode int merupakan singkatan dari integer, yakni
tipe data angka bulat.
Dengan demikian, kode program main() yang saya tulis diatas harus
menghasilkan sebuah angka bulat (menggunakan perintah return yang
akan kita bahas sesaat lagi).
Sedangkan tambahan void ke dalam main(void) menandakan bawah
fungsi main() tidak membutuhkan nilai input (bahasa inggris void =
kosong).

c. printf(“Hello, World!\n”);
Perintah printf digunakan untuk menampilkan sesuatu ke layar.
Perintah ini merupakan bagian dari stdio.h, sehingga jika kita ingin
menggunakannya, harus terdapat baris perintah #include <stdio.h> di
bagian paling awal kode program bahasa C.
Teks yang ingin ditampilkan ditulis dalam tanda kurung dan di dalam
tanda kutip dua, seperti: printf(“Hello, World!\n”); Hasil dari perintah ini,
akan tampil teks Hello, World! di layar. Tapi apa fungsi tambahan
karakter \n?
Jika ditulis di dalam teks, karakter ” \ ” dikenal sebagai escape
character. Fungsinya untuk menampilkan karakter yang tidak bisa ditulis.
Sebagai contoh, \n merupakan perintah untuk menulis newline character,
yakni karakter penanda baris baru.
Artinya, perintah printf(“Hello, World!\n”) akan menampilkan teks
“Hello, World!”, kemudian pindah ke baris baru. Bahasa C mendukung
berbagai escape character yang nantinya juga akan kita pelajari.
Setelah tanda kurung penutup perintah printf, harus ditutup dengan
tanda titik koma (semicolon), yakni tanda “ ; ”. Setiap perintah bahasa C,
harus diakhiri dengan tanda ini, kecuali beberapa perintah khusus. Lupa
menambahkan tanda titik koma di akhir sebuah perintah merupakan error
yang sangat sering terjadi.

d. return 0;
Perintah return 0; berhubungan dengan kode int main(void)
sebelumnya. Disinilah kita menutup function main() yang sekaligus
mengakhiri kode program bahasa C.
Return 0 artinya kembalikan nilai 0 (nol) ke sistem operasi yang
menjalankan kode program ini. Nilai 0 menandakan kode program
berjalan normal dan tidak ada masalah (EXIT_SUCCESS).
Kita juga bisa menulis return 1, return 99, return -1, dll. Nilai-nilai ini
nantinya bisa digunakan oleh sistem operasi atau program lain. Nilai
return selain 0 dianggap terjadi error atau sesuatu yang salah
(EXIT_FAILURE).

2. Apakah yang dimaksudkan dengan men-deklarasi (declare) atau


menyatakan sesuatu dalam pemrograman bahasa C?
Jawaban :
Dalam pemrograman komputer , deklarasi adalah konstruksi bahasa
yang menentukan properti pengenal : deklarasi menyatakan apa yang "berarti"
sebuah kata (pengidentifikasi). [1] Deklarasi paling umum digunakan untuk
fungsi, variable, konstanta, dan kelas, tetapi juga dapat digunakan untuk
entitas lain seperti enumerasi dan definisi tipe. [1] Di luar nama
(pengidentifikasi itu sendiri) dan jenis entitas (fungsi, variabel, dll.), Deklarasi
biasanya menentukan tipe data (untuk variabel dan konstanta), atau tipe tanda
tangan (untuk fungsi); jenis juga dapat mencakup dimensi, seperti untuk array.
Deklarasi digunakan untuk mengumumkan keberadaan entitas ke kompilator ;
ini penting dalam bahasa yang sangat diketik yang memerlukan fungsi,
variabel, dan konstanta, dan tipenya harus ditentukan dengan deklarasi
sebelum digunakan, dan digunakan dalam deklarasi maju . [2] Istilah
"deklarasi" sering dikontraskan dengan istilah "definisi", [1] tetapi arti dan
penggunaan bervariasi secara signifikan di antara bahasa; Lihat di bawah.

3. Apakah arti format spesifikasi (specification) %x ?


Jawaban:
Ada berbagai jenis spesifikasi teknis atau teknik (spesifikasi), dan
istilah tersebut digunakan secara berbeda dalam konteks teknis yang berbeda.
Mereka sering mengacu pada dokumen tertentu, dan / atau informasi tertentu
di dalamnya. Kata spesifikasi secara luas didefinisikan sebagai "menyatakan
secara eksplisit atau detail" atau "menjadi spesifik". Kegunaannya spesifikasi
%X itu sendiri sebagai menampilkan bilangan heksadesimal.
4. Terangkan apa maksud dari escape sequence \v ?
Jawaban :
\v (vertical tab) – pada console hanya akan ditampilkan sebagai sebuah
tanda gender laki – laki. escape sequence ini dibuat karena pada awalnya tidak
ada monitor untuk melihat sebuah tulisan sehingga hasilnya hanya bisa dilihat
setelah di print. Jadi bisa dikatakan bahwa karakter ini, termasuk juga
formfeed efeknya hanya akan terlihat jika diprint.

5. Jelaskanlah dengan kalimat sendiri kegunaan dari file header


Jawaban:
Kegunaan file header adalah suatu file bantuan yang digunakan untuk
menyimpan daftar-daftar fungsi yang akan digunakan di dalam program.

6. Tuliskan dan terangkan minimal tujuh macam operator


Jawaban:
a. Operator Aritmatika
Operator aritmatika merupakan operator yang digunakan untuk melakukan
operasi aritmatika.Operator ini terdiri dari:

Nama Simb
Operator Ol

Penjumlahan +

Pengurangan -

Perkalian *

Pembagian /
Sisa Bagi %
b. Operator Penugasan

Operator penugasan (Assignment Operator) merupakan operator untuk


meberikan tugas padavariabel. Biasanya untuk mengisi nilai.Operator
Penugasan terdiri dari:

Nama Operator Somb


ol

Pengisian Nilai =

Pengisian dan
Penambahan +=

Pengisian dan
Pengurangan -=

Pengisian dan Perkalian *=

Pengisian dan Pembagian /=

Pengisian dan Sisa bagi %=

Pengisian dan shift left <<=

Pengisian dan shift right >>=

Pengisian dan bitwise AND


&=

Pengisian dan bitwise OR |=


Pengisian dan bitwise XOR
^=
c. Operator Pembandingan
Operator pembandingan adalah operator untuk membandingkan dua buah
nilai. Operator ini juga dikenal dengan operator relasi. Operator
pembandingan terdiri dari :

Nama Operator Simbol


Ol
Lebih Besar >

Lebih Kecil <

Sama Dengan ==

Tidak Sama dengan !=

Lebih Besar Sama dengan


>=
Lebih Kecil Sama dengan
<=

d. Operator Logika
Biasa terdapat pada pembelajaran logika matematika.

Nama Simbol di
Operator Java

Logika AND &&

Logika OR ||

Negasi/kebalik an
!
e. Operator bitwise
Merupakan operator yang digunakan untuk operasi berdasarkan bit (biner)
dari sebuah nilai. Operator bitwise terdiri dari :

Nama Simbol di
Operator Java

AND &

OR |

XOR ^

NOT/komplem en
~

Left Shift <<

Right Shift >>

f. Increment dan decrement


operator increment dan decrement untuk menambah dan mengurangi nilai
dengan 1.

7. Jelaskan perbedaan antara variable statis (static variable) dan variable


otomatis (automatic variable).
Jawaban :
Variabel Static dapat mempertahankan nilainya antara panggilan
fungsi yang berbeda. Variabel statis hanya diinisialisasi sekali, jika tidak
diinisialisasi, maka secara otomatis diinisialisasi ke 0.

Variabel otomatis adalah variable yang hanya dikenal di dalam suatu


blok saja (dalam tanda {…}), baik itu blok pemilihan, pengulangan ataupun
fungsi. Dikatakan „otomatis‟ karena variable ini dialokasikan pada saat
pendeklarasian dan akan didealokasikan secara otomatis ketika program
keluar dari suatu blok. Walaupun bersifat opsional, namun untuk
mempertegas bahwa variable tersebut sebagai variable otomatis, kita dapat
menggunakan kata kunci auto pada saat pendeklarasian