Anda di halaman 1dari 21

Nama : Iksyandi Pratama

NIM : 23067083

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
Misal, 1 jam, 5 menit, 40 detik adalah (1 x 3600) + (5 x 60) + 40 = 3940 detik.
Jawab :
a. Judul : Mengkonversikan jam menit detik ke detik
b. Analisis :
1 jam = 1 * 3600 = 3600 detik
5 menit = 5 * 60 = 300
40 detik
jadi 3600 + 300 + 40 = 3940
c. Deklarasi :
jam, menit, detik, hasil : integer
d. Program dalam C++ :

#include <iostream>

#include <string>

using namespace std;

int main()

string raptor_prompt_variable_zzyz;

int jam;

int detik;

int ment;

int hasil;
cout << "Nama : Iksyandi Pratama\n";

cout << "NIM : 23067083\n";

raptor_prompt_variable_zzyz ="masukan jam :";

cout << raptor_prompt_variable_zzyz << endl;

cin >> jam;

raptor_prompt_variable_zzyz ="masukan menit : ";

cout << raptor_prompt_variable_zzyz << endl;

cin >> ment;


raptor_prompt_variable_zzyz ="masukan detik : ";

cout << raptor_prompt_variable_zzyz << endl;

cin >> detik;


hasil =jam*3600+ment*60+detik;

cout << "maka hasilnya: " << hasil << " : "<<detik << endl;

return 0;

}
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 (sisadetik)
400 div 60 = 6 (menit)
400 mod 60 = 40 (detik)
Jawab :
Contoh program dalam bahasa C++ :
#include <stdio.h>
#include <conio.h>

main()

{
int sec,i,jml[2],waktu[2]={3600,60};
printf("Nama : Iksyandi Pratama\n");
printf("NIM : 23067083\n");
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();

Hasil Compile :
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++.
Jawab :
#include <stdio.h>
int main() {

int a, b;

printf("Nama : Iksyandi Pratama\n");


printf("NIM : 23067083\n");
printf("Masukkan a b: ");
scanf("%d %d", &a, &b);
a = a + b;
b = a - b;
a = a - b;

printf("Drum a, b: %d, %d \n", a, b);


return 0;
}
Hasil Compile :

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)
Jawab:
#include<stdio.h>

main()

printf("Nama : Iksyandi Pratama\n");

printf("NIM : 23067083\n");

int i, n;

float nilai, jum=0, max=0, min=0;

printf(">>Daftar Nilai Mahasiswa<<\n\n");

printf("Masukkan Jumlah nilai yang ingin dimasukkan : ");

scanf("\n%d", &n);

for(i=1; i<=n; i++) {


printf("Nilai ke-%d : ", i);

scanf("%f", &nilai);

jum=jum + nilai;

if(i == 1) {

max = nilai;

min = nilai;

else{

if(max < nilai)

max = nilai;

if(min > nilai)

min = nilai;

}
}

printf("\nNilai Minimal = %0.2f\n", min);

printf("Nilai Maksimal = %0.2f\n", max);

printf("Nilai Rata-rata = %0.2f\n", jum/n);

}
Hasil compile :
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).

Jawab:
#include <stdio.h>

main()

double bilangan1,bilangan2,hasil=0;

printf("Nama : Iksyandi Pratama\n");

printf("NIM : 23067083\n");

printf("* Masukkan bilangan pertama = ");

scanf("%lf",&bilangan1);

printf("* Masukkan bilangan kedua = ");

scanf("%lf",&bilangan2);

if(bilangan2==0){

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

else{

hasil=bilangan1/bilangan2;

printf("\n- Hasilnya Pembagian Bilangan Pertama dan kedua adalah %.3lf",hasil); }

}
Hasil Compile :
B. Soal Teori
1) Jelaskan struktur beberapa komponen dasar sebuah program sederhana
yang ditulis dengan bahasa C maupun C++.
Jawab :
a. include <stdio.h>
Perintah #include digunakan untuk memasukkan sebuah file khusus yang
memungkinkan kita mengakses berbagai fitur tambahan dalam bahasa C
b. int main(void) { }
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.
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.

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


menyatakan ?
Jawab :
Deklarasi adalah konstruksi bahasa yang menentukan properti
pengenal. Deklarasi digunakan untuk fungsi , variabel , konstanta , dan
kelas , tetapi juga dapat digunakan untuk entitas lain seperti enumerasi
dan definisi tipe.

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


Jawab :
arti specification format adalah format spesifikasi.
berikut adalah daftar dari format spesifikasi ( specification) :
• BMP — Windows Bitmap
• JPEG — Joint Photographic Experts Group
• PNG — Portable Network Graphics
• CUR — Cursor File
• JPEG 2000 — Joint Photographic Experts Group 2000
• PPM — Portable Pixmap
• GIF — Graphics Interchange Format
• PBM — Portable Bitmap
• RAS — Sun Raster
• HDF4 — Hierarchical Data Format
• PCX — Windows Paintbrush
• TIFF — Tagged Image File Format
• ICO — Icon File
• PGM — Portable Graymap
• XWD — X Window Dump

4) Terangkan apa maksud dari escape sequence \v ?


Jawab :
sebuah tanda gender laki-laki. eskape sequence ini dibuat karena pada
awalnya tidak ada monitor untuk melihat sebuah tulisan sehingga
hasilnya nya hanya bisa dilihat setelah diprint .

5) Jelaskanlah dengan kalimat sendiri kegunaan dari file header


Jawab :
file header merupakan suatu file library dengan ekstensi h (*.h). yaitu file
bantuan yang digunakan untuk menyimpan daftar-daftar fungsi yang akan
digunakan di dalam program.

6) Tuliskan dan terangkan minimal tujuh macam operator


Jawab :
• asisignment operator : berfungsi untuk memberikan berbagai
macam bentuk nilai kepada variabel. Pembuatannya akan
menggunakan = (tanda sama dengan) untuk memberikan sebuah
nilai.
• arithmetic operators : berfungsi untuk melakukan perhitungan
aritmatika. Seperti + untuk penjumlahan, - untuk pengurangan, *
untuk perkalian, / untuk pembagian, %untuk mencari sisa bagi.
• compound assignment : berfungsi untuk melakukan modifikasi
nilai variabel. Seperti =+ untuk penjumlahan, -= untuk
pengurangan, *= untuk perkalian, /= untuk pembagian, >>= right
shift and, << left shift and, &= bitwise and, ^= bitwise exclusive
or.
• increment and decrement operator : berfungsi untuk melakukan
peningkatan maupun pengurangan pada satu nilai yang berada
pada sebuah variabel,. Contohnya adalah ++ untuk increment dan
-- untuk decrement.
• relational and comparidon operators : berfungsi untuk membuat
sebuah statement bersyarat untuk menciptakan nilai true maupun
false. Contoonya == sama dengan, != tidak sama dengan, > lebih
dari, < kurang dari, >= lebih dari sama dengan, <= kurang dari
sama dengan.
• logical operator : berfungsi untuk melakukan pembandingan dua
nilai varibale maupun lebih. Contohnya && semua operand benar,
|| salah satu operand benar, ! melakukan pembalikan posisi.

• operator artimatika : berfungsi untuk melakukan operasi


aritmatika. Contohnya : Penjumlahan (+) , Pengurangan (-) ,
Perkalian (*) , Pemangkatan (**) , Pembagian (/) , Sisa Bagi (%)

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


otomatis (automatic variable).
Jawab :
• variabel statis (static variable) adalah variabel yang menempati
ruang memori komputer secara permanen .
• variabel otomatis (automatic variable) adalah variabel yang hanya
dikenal didalam suatu blok saja.
Tugas membuat program sederhana
Membuat kalkulator sederhana c++

#include <conio.h>

#include <iostream>

#include <string>

Using namespace std;

Int main(){

Printf(“Nama : Iksyandi Pratama\n”);

Printf(“NIM : 23067083\n”);

Int bil1,bil2, pil;


Float hasil;

String operasi;

Cout<<”PILIH OPERATOR ARITMATIKA”<<endl;

Cout<<”1. Penjumlahan”<<endl;

Cout<<”2. Pengurangan”<<endl;

Cout<<”3. Perkalian”<<endl;

Cout<<”4. Pembagian”<<endl;

Cout<<”5. Modulus”<<endl;

Cout<<endl;

Cout<<”Masukan Pilihan : “;

Cin>>pil;
Cout<<”Masukan Bilangan pertama : “;

Cin>>bil1;

Cout<<”Masukan Bilangan kedua : “;

Cin>>bil2;

Switch(pil){

Case 1 : hasil=bil1+bil2;

Operasi=’+’;

Break;

Case 2 : hasil=bil1-bil2;

Operasi=’-‘;

Break;
Case 3 : hasil=bil1*bil2;

Operasi=’*’;

Break;

Case 4 : hasil=bil1/bil2;

Operasi=’/’;

Break;

Case 5 : hasil=bil1%bil2;

Operasi=’%’;

Break;

Default :

Cout<<”Salah Masukan Operator”<<endl;

Cout<<” “<<endl;
Cout<<” “<<bil1<<operasi<<bil2<<”=”<<hasil<<endl;

Cout<<” “<<endl;

Getch();

}
Hasil Compile :

Anda mungkin juga menyukai