Sabtu, 31 Desember 2016

CONTOH PROGRAM KONVERSI SUHU

NAMA : NADYA RERE ASTRI ANTI
ID NUMBER: 2001626190
DOSEN : Yanto Setiawan, SKom, M.T.I
BINUS UNIVERSITY

ALGORITMA

1. tampilkan menu
case 1
konversi celcius
case 2
konversi reamur
case 3
konversi fahrenheit
case 4
konversi kelvin
case 5
keluar program
default
kembali ke menu

2. pilih satuan suhu yang ingin dikonversikan

3. masuk ke fungsi satuan yang ingin dikonversikan
case 1: konversi celcius
cetak hasil konversi dengan rumus:
fahrenheit = (celcius * 9/5) + 32;
reamur = celcius*4/5;
kelvin = celcius + 273;
lalu input sebarang tombol untuk tampilkan fungsi ke-menu

case 2 :konversi reamur
cetak hasil konversi dengan rumus:
fahrenheit = (reamur*2.25)+32;
celcius = reamur/0.8;
kelvin = (reamur/0.8)+273;
lalu input sebarang tombol untuk kembali ke-menu

case 3 :konversi fahrenheit
cetak hasil konversi dengan rumus:
reamur = (fahrenheit-32)/2.25;
celcius = (fahrenheit-32)/1.8;
kelvin = (fahrenheit+459.67)/1.8;
lalu input sebarang tombol untuk kembali ke-menu

case 4: konversi kelvin
cetak hasil konversi dengan rumus:
reamur = (kelvin-273)*0.8;
celcius = kelvin-273;
fahrenheit = (kelvin*1.8)-459.67;
lalu input sebarang tombol untuk kembali ke-menu

FLOWCHART


PROGRAM

#include<stdio.h>
#include<stdlib.h>

float celcius, reamur, fahrenheit,kelvin; /*celcius,reamur,fahrenheit, dan kelvin sebagai float*/

int main (){ /*eksekusi program utama*/
printf("Created by\t: Nadya Rere Astri Anti\nID Number\t: 2001626190\n");
printf("\nPROGRAM KONVERSI SUHU\n");
menu(); /*fungsi tampilan menu*/
system("pause");
return 0;
}

int menu(){
int pilih;
printf("\npilih menu konversi dibawah ini :");
printf("\n1. dari celcius\n2. dari reamur\n3. dari fahrenheit\n4. dari kelvin\n5. keluar");
printf("\n\nnomor : ");
scanf("%d",&pilih);
switch (pilih){/*pilihan untuk memilih apa yang ingin di konversi*/
case 1:
celciusConverter(); 
break;
case 2:
reamurConverter();
break;
case 3:
fahrenheitConverter();
break;
case 4:
kelvinConverter();
break;
case 5: /*keluar dari program*/
printf("Sampai Jumpa (^_^)v\n");
    system("exit");
    break;
default:
menu();
}
return 0;
}

/*fungsi konversi celcius*/
int celciusConverter (){ 
system("cls");
printf("masukan suhu dalam celcius : ");
scanf ("%f",&celcius);
/*rumus konversi reamur*/
fahrenheit = (celcius * 9/5) + 32;
reamur = celcius*4/5;
kelvin = celcius + 273;
printf("\n Fahrenheit\t: %8.2f", fahrenheit);
printf("\n Reamur\t\t: %8.2f", reamur);
printf("\n Kelvin\t\t: %8.2Ff", kelvin);
printf("\n\ntekan sembarang tombol untuk kembali ke menu ^O^\n");
system("pause");
menu();
return 0;
}

/*fungsi konversi reamur*/
int reamurConverter () {
system("cls");
printf("masukan suhu dalam reamur : ");
scanf("%f", &reamur);
/*rumus konversi reamur*/
fahrenheit = (reamur*2.25)+32;
celcius = reamur/0.8;
kelvin = (reamur/0.8)+273;
printf("\n Fahrenheit\t: %8.2f", fahrenheit);
printf("\n celcius\t: %8.2f", celcius);
printf("\n Kelvin\t\t: %8.2Ff", kelvin);
printf("\n\ntekan sembarang tombol untuk kembali ke menu ^O^\n");
system("pause");
menu();
return 0;
}

/*fungsi konversi fahrenheit*/
int fahrenheitConverter(){
system("cls");
printf("masukan suhu dalam fahrenheit : ");
scanf("%f", &fahrenheit);
/*rumus konversi reamur*/
reamur = (fahrenheit-32)/2.25;
celcius = (fahrenheit-32)/1.8;
kelvin = (fahrenheit+459.67)/1.8;
printf("\n reamur\t\t: %8.2f", reamur);
printf("\n celcius\t: %8.2f", celcius);
printf("\n Kelvin\t\t: %8.2Ff", kelvin);
printf("\n\ntekan sembarang tombol untuk kembali ke menu ^O^\n");
system("pause");
menu();
return 0;
}

/*fungsi konversi kelvin*/
int kelvinConverter(){
system("cls");
printf("masukan suhu dalam kelvin : ");
scanf("%f", &kelvin);
/*rumus konversi reamur*/
reamur = (kelvin-273)*0.8;
celcius = kelvin-273;
fahrenheit = (kelvin*1.8)-459.67;
printf("\n reamur\t\t: %8.2f", reamur);
printf("\n celcius\t: %8.2f", celcius);
printf("\n fahrenheit\t: %8.2Ff", fahrenheit);
printf("\n\ntekan sembarang tombol untuk kembali ke menu ^O^\n");
system("pause");
menu();
return 0;
}

OUTPUT PROGRAM






PROGRAM TEBAK ANGKA

NAMA : NADYA RERE ASTRI ANTI
ID NUMBER: 2001626190
DOSEN : Yanto Setiawan, SKom, M.T.I
BINUS UNIVERSITY

ALGORITMA

1. deklarasi angka sebagai bilangan bulat dan counter = 10

2. tampilkan menu berisikan pilihan main(1) dan keluar(2)
 pilih option yang diinginkan
case 1
masuk ke permainan tebak angka
case 2
keluar dari permainan
default
tampilkan "Pilihan Anda tidak tersedia, masukkan pilihan yang benar" dan tampilkan menu

3.deklarasi angka acak yang dipilih sendiri

4.angka acak = 1 + angka yang dipilih secara random oleh komputer

5.tampilkan "Saya memikirkan angka 1 s/d 50"

6.input angka yang kau tebak

7.jika angka yang ditebak sama dengan angka acak maka tampilkan "Selamat Kamu Benar, Saya sedang memikirkkan Angka <angka acak>", Set counter sama dengan 10 dan tampilkan menu

8.jika tidak counter - 1 ,  tampilkan "Maaf itu bukan angka yang saya pikirkan. Yang saya pikirkan adalah angka <angka acak>" dan "Silahkan ulangi lagi (Anda memiliki kesempatan <counter-1> kali lagi untuk mecoba)\"

9.lalu jika counter tidak sama dengan 0 maka kembali bermain tebak angk 

10.jika tidak maka tampilkan "Kamu kalah dalam permainan ini, set counter kembali menjadi 10; dan tampilkan menu

FLOWCHART


PROGRAM

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int tebak_angka(void);

int angka;
int counter = 10;
int main() {
printf("Created by\t: Nadya Rere Astri Anti\nID Number\t: 2001626190\n");
printf("\nPROGRAM TEBAK ANGKA\n");
    menu();
    system("pause");
    return 0;
}

int menu() {    //FUNGSI TAMPILAN MENU
    int pilih;
//TAMPILKAN MENU
    printf("|Silahkan pilih                 |\n");
    printf("|Apa yang ingin Anda lakukan ?  |\n");
    printf("| 1. Main Game                  |\n");
    printf("| 2. Keluar Game                |\n");

    printf("Silahkan Pilih (1 atau 2):");
    scanf("%d", &pilih);
        switch (pilih) {
        case 1:
            tebak_angka();
            break;
        case 2:
            printf("Sampai Jumpa (^_^)v\n");
            system("exit");
            break;
        default:
            printf("Pilihan Anda tidak tersedia, masukkan pilihan yang benar");
            menu();
        }
    return 0;
}

int tebak_angka() {
    int randnumber;
    srand(time(NULL));
    randnumber = 1 + rand() % 50;

    printf("\nSaya memikirkan angka 1 s/d 50.\n");
    printf("\nAngka apa itu?");
    scanf("%d", &angka);

    if(angka == randnumber) {
            printf("Selamat Kamu Benar, Saya sedang memikirkkan Angka %d\n", randnumber);

            counter = 10;
            printf("\nTekan Sembarang tombol untuk Melanjutkan\n");
            system("pause");

            menu();

    }

    else {
            counter -= 1;
            printf("Maaf itu bukan angka yang saya pikirkan.\nYang saya pikirkan adalah angka %d\n", randnumber);

            printf("\nSilahkan ulangi lagi (Anda memiliki kesempatan %d kali lagi untuk mecoba)\n", counter);

            if(counter != 0) {
                tebak_angka();
            }

else    {
        printf("\nKamu kalah dalam permainan ini.\n");
        counter = 10;
        menu();
        }

    }
    return 0;

OUTPUT PROGRAM



CONTOH PROGRAM REKURSIF

NAMA : NADYA RERE ASTRI ANTI
ID NUMBER: 2001626190
DOSEN : Yanto Setiawan, SKom, M.T.I
BINUS UNIVERSITY

ALGORITMA


1.       mulai

2.       tampilkan informasi “masukan jumlah baris bintang”
3.       input jumlah baris
4.       inisialisasi segitigaRataKanan sama dengan jumlah baris
5.       pengulangan pertama untuk membuat banyak baris
6.       jika  counter sama dengan banyak baris lalu banyak baris = 0 maka keluar dari proses pengulangan
7.       kemudian mengeksekusi pernyataan yang ada dibadan loop yaitu :
a.       pengulangan untuk menentukan banyak spasi
b.      jika banyak spasi sama dengan banyak baris – 1 lalu banyak spasi lebih besar sama dengan counter maka keluar dari perulangan
c.       pengulangan ketiga untuk menentukan banyak bintang dalam suatu baris
d.      jika banyak bintang = 1 lalu banyak bintang kurang dari sama dengan I maka keluar dari perulangan

FLOWCHART





PROGRAM


/* program membentuk baris bintang

menjadi segitiga siku-siku rata kanan
31 december 2016
created by Nadya Rere*/

#include <stdio.h>
#include<stdlib.h>

int segitigaRataKanan(int);

int main(){
int n;
printf("Created by\t: Nadya Rere Astri Anti\nID Number\t: 2001626190\n");
printf("\n\**\\PROGRAM REKURSIF\\**\ \n");
printf("\nmasukan jumlah baris bintang: ");
scanf("%d",&n);
segitigaRataKanan(n); /*prototype fungsi pembentuk segitiga rata kanan*/
getchar();
system("pause");
return 0;
}

int segitigaRataKanan(int n) /* fungsi rekursif pembentuk segitiga rata kanan*/
{
int i,c,d; 
for(i=n;i>=0;i--){ /*pengulangan pertama untuk membuat baris*/
for(c=n-1;c>=i;c--)/*pengulangan kedua untuk menentukan spasi*/
printf(" ");
for(d=1;d<=i;d++)/*pengulangan ketiga untuk menentukan banyak  bintang*/
printf("*");
printf("\n");
}
}

OUTPUT PROGRAM