Katenzo

royanrodiana.blogspot.com

Katenzo

royanrodiana.blogspot.com

Katenzo

royanrodiana.blogspot.com

Katenzo

royanrodiana.blogspot.com

Katenzo

royanrodiana.blogspot.com

Tampilkan postingan dengan label Pemrograman c. Tampilkan semua postingan
Tampilkan postingan dengan label Pemrograman c. Tampilkan semua postingan

Kamis, 25 April 2013

PERHITUNGAN MATRIX

         Dalam kegiatan kali ini kita akan membuat sebuah program menggunakan bahasa c untuk menghitung penjumlahan, pengurangan, perkalian, pembagian dua buah matrix ordo 2 dalam bilangan yang dapat diinputkan oleh user.

Disamping ini merupakan video tutorialnya :


Output yang akan dihasilkan :


Source code :

#include <stdio.h>
#include <stdlib.h>
float varA[2][2],varB[2][2],varC[2][2];
int x,y,z;
 //Buat fungsi menu untuk tampilan pemilihan menu
void menu(){
  printf("\n[1] PENJUMLAHAN");    
  printf("\n[2] PENGURANGAN");
  printf("\n[3] PERKALIAN");  
  printf("\n[4] PEMBAGIAN");
  printf("\n[0] KELUAR");
}

//buat fungsi untuk memasukan nilai matrix
void masukkan(){
  int i,j;
  printf("===========Bilangan Matrix A=========\n\n");
  for (i=0; i<2; i++){
    for (j=0; j<2; j++){
    printf("Bilangan Matrix A [%d][%d] : ",i, j);
       //buat inputan user menggunakan fungsi scanf
    scanf("%f",&varA[i][j]);
    }
  }
  printf("\n===========Bilangan Matrix B=========\n\n");
  for (i=0; i<2; i++){
    for (j=0; j<2; j++){
    printf("Bilangan Matrix B [%d][%d] : ",i, j);
       //buat inputan user menggunakan fungsi scanf
    scanf("%f",&varB[i][j]);
    }
  }
}

//buat fungsi untuk menampilkan yang akan dipanggil pada fungsi
//lain seperti penjumlahan
void tampilkan(char opr){
  for (x=0; x<2; x++){
    for (y=0; y<2; y++){
      printf("%2.0f ",varA[x][y]);
    }
    if(x==0) printf("\t%c\t",opr);
    else printf("\t\t");
    for (y=0; y<2; y++){
      printf("%2.0f ",varB[x][y]);
    }
    printf("\n");
  }
  
}
//buat fungsi untuk penjumlahan
void jumlah(){
  masukkan(); //pemanggilan fungsi masukan
  tampilkan('+'); //pemanggilan fungsi untuk menampilkan
  printf("Hasil Penjumlahan:\n");
  for (x=0; x<2; x++){
    for (y=0; y<2; y++){
      printf("%2.0f ",varA[x][y]+varB[x][y]);
    }
    printf("\n");
  }
}

//buat fungsi untuk pengurangan
void kurang(){
  masukkan(); //pemanggilan fungsi masukan
  tampilkan('-'); //pemanggilan fungsi untuk menampilkan
  printf("Hasil Pengurangan:\n");
    for (x=0; x<2; x++){
    for (y=0; y<2; y++){
              //buat rumus penguranganya
      printf("%2.0f ",varA[x][y]-varB[x][y]);
    }
    printf("\n");
  }
}
//buat fungsi perkalian
void kali(){
  masukkan();
  tampilkan('x');
  printf("Hasil Perkalian:\n");
  for (x=0; x<2; x++){
    for (y=0; y<2; y++){
      varC[x][y]=0;
      for (z=0; z<2; z++){
                //buat rumus untuk perkalian
        varC[x][y]+=varA[x][z]*varB[z][y];
             
      }
      printf("%2.0f ",varC[x][y]);
    }
    printf("\n");
  }
}
//buat fungsi pembagian
void bagi(){
  float deterB,temp,vrBinvers[2][2];
  masukkan();
  tampilkan(':');

  deterB = 1/((varB[0][0]*varB[1][1])-(varB[0][1]*varB[1][0]));
  vrBinvers[0][0] = deterB*varB[1][1];
  vrBinvers[0][1] = deterB*(-varB[0][1]);
  vrBinvers[1][0] = deterB*(-varB[1][0]);
  vrBinvers[1][1] = deterB*varB[0][0];

  for (x=0; x<2; x++){
    for (y=0; y<2; y++){
      printf("%2.0f ",varA[x][y]);
    }
    if(x==0) printf("\tx\t");
    else printf("\t \t");
    for (y=0; y<2; y++){
      printf("%6.2f ",vrBinvers[x][y]);
    }
    printf("\n");
  }

  printf("Hasil Pembagian:\n");
  for (x=0; x<2; x++){
    for (y=0; y<2; y++){
      varC[x][y]=0;
      for (z=0; z<2; z++){
        varC[x][y]+=varA[x][z]*vrBinvers[z][y];
      }
      printf("%6.2f ",varC[x][y]);
    }
    printf("\n");
  }
}

//fungsi utama program
int main(void){
  int selesai=1,pilih;
  printf("\n================================================\n");
  printf("=========         PROGRAM C            =========\n");
  printf("=========    PERHITUNGAN MATRIKS       =========\n");
  printf("=========       Royan Rodiana          =========\n");
  printf("================================================\n\n");
  while(selesai==1){
    menu();
    printf("\nMasukkan pilihan >");
           scanf("%d",&pilih);
    switch(pilih){
      case 0 : selesai=0; break;
      case 1 : jumlah(); break;
      case 2 : kurang(); break;
      case 3 : kali(); break;
      case 4 : bagi(); break;
      
                //buat defaultnya jika memilih menu selain diatas ada peringatan dan sistem terhenti
      default :  printf("Maaf nomor yang anda masukan tidak ada di list \n silahkan ulangi !!!\n\n");
                system("pause");
                return 0;
                break;
    }
  }
  system("pause");
  return 0;
}


Kamis, 18 April 2013

TAHUN KABISAT C

Tahun Kabisat (Bahasa Inggris: Leap Year) adalah sebuah tahun syamsiah di mana pada tahun tersebut jumlah hari tidak terdiri dari 365 hari tetapi 366 hari.
Satu tahun syamsiah tidak secara persis terdiri dari 365 hari, tetapi 365 hari 5jam 48 menit45,1814 detik. Jika hal ini tidak dihiraukan, maka setiap 4 tahun akan kekurangan hampir1 hari (tepatnya 23 jam 15 menit 0,7256 detik).
Maka untuk mengkompensasi hal ini, setiap 4 tahun sekali (tahun yang bisa dibagi 4), diberi 1 hari ekstra: 29 Februari. Tetapi karena 5 jam 48 menit 45,1814 detik kurang dari 6 jam, maka tahun-tahun yang bisa dibagi 100 (seperti tahun 1900), bukan tahun kabisat, kecuali bisa dibagi dengan 400 (seperti tahun 2000).

Terdapat algoritma mudah untuk menentukan apakah suatu tahun termasuk tahun kabisat atau bukan sebagai berikut:
  1. Jika angka tahun itu habis dibagi 400, maka tahun itu sudah pasti tahun kabisat.
  2. Jika angka tahun itu tidak habis dibagi 400 tetapi habis dibagi 100, maka tahun itu sudah pasti bukan merupakan tahun kabisat.
  3. Jika angka tahun itu tidak habis dibagi 400, tidak habis dibagi 100 akan tetapi habis dibagi 4, maka tahun itu merupakan tahun kabisat.
  4. Jika angka tahun tidak habis dibagi 400, tidak habis dibagi 100, dan tidak habis dibagi 4, maka tahun tersebut bukan merupakan tahun kabisat
Hasil output yang dituju :


Source code dan video program c :




                                                                        Coding 1
Source Code:  Tahun Kabisat

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

int kabisat(int tahun);//prototype fungsi
int c; // deklarasi variable global

int main(void)
{
       printf("\n\n\n============CEK TAHUN KABISAT by ROYAN RODIANA===========\n\n");
       printf("Masukan tahun yang ingin dicek (yyyy) : ");
       scanf("%d",&c); // fungsi scanf untuk menerima input data dari user
       kabisat(c); // pemanggilan fungsi kabisat
       system("pause");
       return(0);
}

int kabisat(int tahun) //definisi fungsi
{
       //pernyataan dengan menggunakan if else
       //tanda || merupakan operator logical untuk "or"
              if (tahun %4 == 0 || tahun % 100 == 0|| tahun % 400 == 0)
                           printf("Tahun %d Merupakan Tahun Kabisat\n",c);
            else
                           // %d merupakan conversion specifier untuk integer
                printf("Tahun %d Bukan Tahun Kabisat\n",c);
}
      
Deskripsi singkat:
Didalam code diatas terdapat pembuatan fungsi baru yaitu fungsi kabisat.cara penulisan fungsi baru tersebut adalah
  • Prototype fungsi
tipe_return nama_fungsi(tipe_variable nama_variable)
  • Definisi fungsi
tipe_return nama_fungsi(tipe_variable nama_variable)
        {
pernyataan
         }

Kamis, 11 April 2013

CONTROL FLOW C

                Program c yang terdapat pada video dan source code dibawah ini merupakan contoh dari penggunaan bebrapa control flow yaitu 


Pengulangan menggunakan while
  • Bentuk umum
While (kondisi
{
pernyataan
}

  • Contoh penulisanya
       while(i<100) // nilai i akan diproses ketika kurang dari 100 / kondisi
       {
       printf("%d +",i); //pernyataan
       a+=i; //a=a+i
       i+=3;
       }

Pengulangan do/while
  • Bentuk umum
do
{
pernyataan
}while(kondisi);

  • Contoh penulisanya
       do
       {

       printf("%d +",j); //pernyataan
       b+=j; //b=b+j
              j+=3;
       }

       while (j<100); //kondisi
Penggunaan For
  • Bentuk umum
for (ekspresi_1;ekspresi2;ekspresi3)
{
Pernyataan;
}

  • Contoh penulisanya
       for (k=2;k<100;k=k+3) //ekspresi
      
              {
       printf("%d +",k); //pernyataan
       c+=k;
              }







Coding 1
Source Code: Schaum 6.45 (a, b, c),164


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

int main (void)
{
       int i = 2,a=0; // varible yang digunakan untuk pengulangan while
       int j = 2,b=0; // varible yang digunakan untuk pengulangan do-while
       int k = 2,c=0; // varible yang digunakan untuk pengulangan for

       printf("================= 49013031 ROYAN RODIANA ==================\n\n\n");
       printf("================= PENGULANGAN WHILE========================\n\n");
      
       //PENGULANGAN WHILE
       while(i<100) // nilai i akan diproses ketika kurang dari 100 / kondisi
       {
       printf("%d +",i); //pernyataan
       a+=i; //a=a+i
       i+=3;
       }
      
       printf("hasil penjumlahan semua nilai  hasil pengulangan while adalah %d\n\n",a);


       printf("============= PENGULANGAN DO WHILE========================\n\n");
       //PENGULANGAN DO-WHILE
       do
       {

       printf("%d +",j); //pernyataan
       b+=j; //b=b+j
              j+=3;
       }

       while (j<100); //kondisi

       printf("Jumlah nilai hasil pengulangan do while adalah = %d\n\n",b);

       printf("=============== PENGULANGAN FOR =========================\n\n");
       //PENGULANGAN FOR

       for (k=2;k<100;k=k+3) //ekspresi
      
              {
       printf("%d +",k); //pernyataan
       c+=k;
              }
       printf("Jumlah nilai hasil pengulangan FOR adalah = %d\n\n",c);
      
       system("pause");//menghentikan output supaya tidak langsung tutup
       return(0);
}



Minggu, 07 April 2013

PROGRAM C

                                     INPUT / OUTPUT FILE DAN KONVERSI NILAI 

             Bahasa pemograman C merupakan salah satu bahasa pemrograman komputer.Meskipun C dibuat untuk memprogram sistem dan jaringan komputer, namun bahasa ini juga banyak digunakan untuk mengembangkan sofware aplikasi.
              Dibawah ini merupakn video yang menjelaskan mengenai konversi nilai Pada Pemograman c.



FUNGSI PRINTF DAN SCANF


Penyelesaian :
         
Coding 1
Source Code: SOAL NOMOR 1
                   /*Nama : ROYAN RODIANA
                            49013031 */
#include <stdio.h>
#include <stdlib.h>

int main(void)

{
       int p,q,index;
       float x, y, z;
       long int hitung;
       short int flag;
       unsigned int pos;
       double untung,rugi,pajak;
       unsigned long kanan;

       FILE *file;
       file = fopen("output tugas.txt","a");
      
       //Tugas 1 Nomor 1a

       printf("--------------------------------------------\n");
       printf("-        a. BILANGAN BULAT : p,q           -\n");
       printf("--------------------------------------------\n\n");
      

       printf("Masukan nilai p : ");
       scanf("%d",&p);                   // Tanda " %d " digunakan untuk type integer

       printf("Masukan nilai q : ");
       scanf("%d",&q);

       printf("\nNilai bilangan bulat yang anda masukan adalah\n\n P = %d\n Q = %d \n\n",p,q);

       fprintf(file,"a.Bilangan bulat\n Nilai bilangan bulat yang anda masukan adalah P = %d dan Q = %d \n",p,q);

       //Tugas 1 Nomor 1b

       printf("--------------------------------------------\n");
       printf("-        b. BILANGAN PECAHAN : x,y,z       -\n");
       printf("--------------------------------------------\n\n");

       printf("Masukan nilai x : ");// Tanda " %f " digunakan untuk type float /double
       scanf("%f",&x);                         
       printf("Masukan nilai y : ");          
       scanf("%f",&y);
       printf("Masukan nilai y : ");
       scanf("%f",&z);
       printf("\nNilai bilangan pecahan yang anda masukan adalah\n\n x = %.2f \n y = %.2f \n z = %.2f \n",x,y,z);
       fprintf(file,"b.Bilangan pecahan\n Nilai bilangan pecahan yang anda masukan adalah\n x = %.2f \n y = %.2f \n z = %.2f \n",x,y,z);
      
       //Tugas 1 Nomor 1c

       printf("--------------------------------------------\n");
       printf("-        c. BILANGAN LONG INTEGER          -\n");
       printf("-    '-2.147.483.648 s/d 2.147.483.647'    -\n");
       printf("--------------------------------------------\n\n");
      
       printf("Masukan nilai long integernya : ");
       scanf("%ld",&hitung);       // Tanda " %ld " digunakan untuk type long integer
       printf("\nNilai bilangan long integer masukan adalah %ld \n\n",hitung);
       fprintf(file,"c.Bilangan long integer\n Nilai bilangan long integer masukan adalah %ld \n",hitung);
      
       //Tugas 1 Nomor 1d

       printf("--------------------------------------------\n");
       printf("-           d. SHORT INTEGER               -\n");
       printf("--------------------------------------------\n\n");
      

       printf("Masukan nilai short integer : ");
       scanf("%hd",&flag);


       printf("\nNilai short integer yang anda masukan adalah %hd \n\n",flag);
       fprintf(file,"d.short integer\n Nilai short integer yang anda masukan adalah %hd \n",flag);

       //Tugas 1 Nomor 1e

       printf("--------------------------------------------\n");
       printf("-           e.INTEGER                      -\n");
       printf("--------------------------------------------\n\n");
      

       printf("Masukan nilai integer : ");
       scanf("%d",&index);


       printf("\nNilai integer yang anda masukan adalah %d \n\n",index);
       fprintf(file,"e.integer\n Nilai integer yang anda masukan adalah %d \n",index);
      
       //Tugas 1 Nomor 1f

       printf("--------------------------------------------\n");
       printf("-           f.UNSIGNED INTEGER             -\n");
       printf("--------------------------------------------\n\n");
      

       printf("Masukan nilai UNSIGNED INTEGER : ");
       scanf("%o",&pos);

       printf("\nNilai UNSIGNED INTEGER yang anda masukan adalah %u \n\n",pos);
       fprintf(file,"f.UNSIGNED INTEGER\n Nilai UNSIGNED INTEGER yang anda masukan adalah %u \n",pos);
      
       //Tugas 1 Nomor 1g

       printf("--------------------------------------------\n");
       printf("-           g.DOUBLE PRECISION             -\n");
       printf("--------------------------------------------\n\n");
      

       printf("Masukan nilai keuntungan : ");
       scanf("%lf",&untung);
       printf("\nNilai keuntungan adalah %lf \n\n",untung);
       fprintf(file,"g.DOUBLE PRECISION \n Nilai keuntungan adalah %lf \n",untung);

       printf("Masukan nilai kerugian : ");
       scanf("%lf",&rugi);
       printf("\nNilai keurugian adalah %lf \n\n",rugi);
       fprintf(file,"Nilai kerugian adalah %lf \n",rugi);

       printf("Masukan nilai pajak : ");
       scanf("%lf",&pajak);
       printf("\nNilai pajak adalah %lf \n\n",pajak);
       fprintf(file,"Nilai kerugian adalah %lf \n",pajak);

       //Tugas 1 Nomor 1h
       printf("--------------------------------------------\n");
       printf("-       h.BILANGAN BULAT TAK NEGATIF       -\n");
       printf("--------------------------------------------\n\n");

       printf("Masukan BILANGAN BULAT TAK NEGATIF : ");
       scanf("%lu",&kanan);
       printf("\nNilai h.BILANGAN BULAT TAK NEGATIF  adalah %lu \n\n",kanan);
       fprintf(file,"h.BILANGAN BULAT TAK NEGATIF  \n Nilai bilangan bulat tak negatif adalah %lu \n",kanan);

       system("pause");
return(0);
}



Deskripsi singkat:
Dalam program diatas terdapat beberapa penggunaan fungsi yaitu :
·         Fungsi main ( ) fungsi yang harus ada pada setiap program
·         Fungsi printf merupakan fungsi yang digunakan untuk menampilkan output pada layar
·         Fungsi scanf merupakan fungsi yang digunakan untuk menerima data dari inputan keyboard/user
Terdapat beberapa type data yang digunakan yaitu :
·         int conversion spesifiernya adalah %d
·         float conversion spesifiernya adalah %f
·         long int conversion spesifiernya adalah %ld
·         unsigned int conversion spesifiernya adalah %u
·         double conversion spesifiernya adalah %lf
·         unsigned long conversion spesifiernya adalah %lu
·         short int conversion spesifiernya adalah %hd



Penyelesaian :

Coding 2
Source Code: soal no.2

                   /*Nama : ROYAN RODIANA
                            49013031 */

#include <stdio.h>

int main (void)
{

       float a=-8.2,b=0.005;
       int x=129, y=87, z=-22;
       long float d1=2.88e-8, d2=-8.4e5;
       int u = 457;
       int v = 0xFFFF;
       unsigned int big=123456789;
       long float c=0.33333333333;

       FILE * file;
       file = fopen("soal2.txt","a");

       printf("-----------------------------------------------------\n");
       printf("-             MENAMPILKAN VARIABLE                  -\n");
       printf("-----------------------------------------------------\n");

       //soal 2a
       printf("2.a Menampilkan nilai variable a=-8.2 , b=0.005\n\n");
       printf("          Nilai variable yang ditampilkan\n");
       printf("          a = %.1f \n          b = %.3f \n\n",a,b);
       fprintf(file,"Variable yang ditampilkan\n          a = %.1f \n          b = %.3f \n\n",a,b);

       //soal 2b
       printf("2.b Menampilkan nilai variable x=129, y=87, z=-22\n\n");
       printf("          Nilai variable yang ditampilkan\n");
       printf("          x = %d \n          y = %d \n          z = %d \n\n",x,y,z);
       fprintf(file,"Variable yang ditampilkan\n          x = %d \n          y = %d \n          z = %d \n\n",x,y,z);

       //soal 2c
       printf("2.c \n\n");
       printf("          Nilai variable yang ditampilkan\n");
       printf("          d1 = %g \n          d2 = %g \n\n",d1,d2);
       fprintf(file,"Variable yang ditampilkan\n          d1 = %g \n          d2 = %g \n\n",d1,d2);

       //soal 2d
       printf("2.d Menampilkan nilai variable U = 711 (octal) v = ffff (hexadecimal) \n\n");
       printf("          Nilai variable yang ditampilkan\n");
       printf("          U = %o\n          v = %x \n\n",u,v);
       fprintf(file,"Variable yang ditampilkan\n          U = %o\n          v = %x \n\n",u,v);

       //soal 2e
       printf("2.e Menampilkan nilai variable big = 123456789 \n\n");
       printf("          Nilai variable yang ditampilkan\n");
       printf("          big = %u\n\n",big);
       fprintf(file,"Variable yang ditampilkan\n           big = %u\n\n",big);

       //soal 2f
       printf("2.f Menampilkan nilai variable c = 0.33333333333 \n\n");
       printf("          Nilai variable yang ditampilkan\n");
       printf("          c = %.10lf\n\n       ",c);
       fprintf(file,"Variable yang ditampilkan\n            c = %.10lf\n\n       ",c);

       system("pause");
return(0);
}

Deskripsi singkat:
Dalam code diatas erdapat beberapa penggunaan type data
  • float digunakan untuk bilangan real dengan jangkauan nilai 3.4x10-38
  • int digunakan untuk bilangan bulat dengan jangkauan nilai -32768 s/d 32768
  • long float digunakan untuk bilangan real dengan rentang terluas.jangkauan nilainya 3.4x10-4932 s/d 3.4x104932      
  • unsigned long digunakan untuk bilangan bulat positif dengan rentang yang lebih luas, jangkauan nilainya 0 s/d 4294967295
Conversion specifier yang digunakan adalah :
·         %f untuk type data float
·         %d untuk type data integer
·         %lf untuk type data long float
·         %u untuk type data unsigned int
·         %x untuk bilangan hexadecimal
·         %o untuk bilangan octal
Terdapat penulisan “%.10lf” artinya 10 angka yang akan tertulis dibelakang koma.

Penyelesaian
Coding 3
Source Code: soal no 3
#include <stdio.h> //librari untuk mengakses fungsi printf dan scanf
#include <stdlib.h>//librari untuk mengakses fungsi system ("pause");


int main(void) //main fungsi yang pertama kali dieksekusi
{
       int nilai; //nilai untuk bilangan bulat
       FILE * file;
       file = fopen("tugas3.txt","a"); //merupakan jenis operasi pada file untuk membuka file untuk ditambah dengan data,
                                       //jika belum ada akan dibuat yang baru.

       printf("\n\n\n"); //printf untuk menampilkan output pada layar

       printf("          ===============================================\n");
       printf("          ==  PROGRAM KONVERSI NILAI By ROYAN RODIANA  ==\n");
       printf("          ===============================================\n\n\n");

//3.a konversi hexadesimal ke desimal

       printf("   a. Konversi hexadesimal ke desimal \n\n");
       printf("            Masukan nilai Hexadesimal : ");
       scanf("%x",&nilai); // digunakan untuk meminta/menerima inputan data dari user

       fprintf(file,"Nilai hexadesimal %x",nilai); // "%x" merupakan conversion character untuk hexadesimal

       printf("            Maka Nilai Desimalnya adalah %d \n\n",nilai); // "%d" merupakan conversion character untuk hexadesimal

       fprintf(file," = %d (desimal)\n",nilai); //fprintf untuk menyimpan output di external file

//3.b konversi desimal ke hexadesimal
       printf("  b. Konversi desimal ke hexadesimal \n\n");
       printf("            Masukan nilai Desimalnya : ");
       scanf("%d",&nilai);

       fprintf(file,"Nilai desimal %d ",nilai);

       printf("            Maka Nilai hexadesimalnya adalah %x\n\n ",nilai);
       fprintf(file,"= %x (hexadesimal)\n",nilai);

//3.c konversi hexadesimal ke octal
       printf("   c. Konversi hexadesimal ke octal \n\n");
       printf("            Masukan nilai Hexadesimal : ");
       scanf("%x",&nilai);

       fprintf(file,"Nilai hexadesimal %x ",nilai);

       printf("            Maka Nilai octalnya adalah %o \n\n",nilai); //"%o" merupakan conversion character untuk octal
       fprintf(file,"=%o (octal)\n",nilai);

//3.d konversi Konversi octal ke hexadesimal
       printf("   d. Konversi octal ke hexadesimal \n\n");
       printf("            Masukan nilai octal : ");
       scanf("%o",&nilai);

       fprintf(file,"Nilai octal %o ",nilai);

       printf("            Maka Nilai Hexadesimalnya adalah %x \n\n",nilai);
       fprintf(file,"=%x (hexadesimal)\n",nilai);

//3.e konversi Konversi desimal ke octal
       printf("   e. Konversi desimal ke octal \n\n");
       printf("            Masukan nilai desimal : ");
       scanf("%d",&nilai);

       fprintf(file,"Nilai desimal %d ",nilai);

       printf("            Maka Nilai octalnya adalah %o \n\n",nilai);
       fprintf(file,"=%o (octal)\n",nilai);

//3.f konversi octal ke desimal
       printf("   f. Konversi octal ke desimal\n\n");
       printf("            Masukan nilai octal : ");
       scanf("%o",&nilai);

       fprintf(file,"Nilai octal %o ",nilai);
       printf("            Maka Nilai desimalnya adalah %d \n\n",nilai);
      
       fprintf(file,"=%d (desimal)\n\n",nilai);

       system("pause"); //untuk menahan program supaya tetap tampil/berjalan
       return(0); //nilai balikan dari fungsi main sama dengan nol

}

Deskripsi singkat:
Source code diatas merupakan program c untuk konversi nilai. Conversion specifier yang digunakan adalah :
·         %x untuk bilangan hexadecimal
·         %d untuk bilangan decimal
·         %o untuk  bilangan octal
Code
·         “printf ” untuk menampilkan output pada layar
·         “scanf” untuk mengambil input dari keyboard
·         FILE *file
File = fopen(“tugas3.txt”,”a”)
Berfungsi untuk penyimpanan output hasil.
“a” merupakan jenis operasi pada file untuk membuka file untuk ditambah dengan data,jika belum ada akan dibuat yang baru.


MENGANALISA KESALAHAN PENULISAN CODE PROGRAM C

soal L



Penyelesaian

Coding 4
Source Code: modul l
#include <stdio.h>
#include <stdlib.h>

//kesalahan tidak ada fungsi main

int main(void)

//kesalahan penulisan tanda kurung "}" seharusnya "{"
       //}
{
       int b=3;

//kesalahan pada baris akhir syntax kurang tanda ";"
       //printf("b= %f \n",b)
       printf("b= %f \n",b);

       system("pause");
//kesalahan pada tanda kutip seharusnya tanpa tanda kutip
       //return("0");
       return(0);
}

Deskripsi singkat:
Terdapat bebrapa kesalahan dalam program sebelum diperbaiki yaitu
·         Tidak terdapat fungsi main ( )
·         Salah satu tanda kurung terbalik “}” seharunya “{“
·         Kurang tanda titik koma “;” diakhir baris syntax
·         Adanya penggunaan tanda petik dua yang salah yaitu pada return(“0”);




Soal M


Penyelesaian 

Coding 5
Source Code: modul m
#include <stdio.h>
#include <stdlib.h>
//kesalahan pada penulisan Main
//int Main (void)
int main (void)
{

       //kesalahan penulisan komentar untuk dua baris komentar/lebih seharusnya menggunakan "*/" diakhir komentar
float ANGKA; /*Mendeklarasikan variable angka bertipe
                      float */
       printf("ketikan sembarang angka> ");

//indentifier tidak tedeklarasikan karena tulisan dalam c bersifat sensitif
       //scanf("%f",&angka);
       scanf("%f",&ANGKA);
//indentifier tidak tedeklarasikan karena tulisan dalam c bersifat sensitif dan supaya terpanggil inputan nilainya tambahkan "%f"
       //printf("Angka yang anda ketikan \n",angka);
       printf("Angka yang anda ketikan %f \n",ANGKA);
//kurang tanda titik koma
       //system("pause")
       system("pause");
//kesalahan pada penulisan kutip dua seharusnya dihilangkan
       //return("0");
       return(0);
//kesalahan kurang tanda kurung penutup
}

Deskripsi singkat:
Terdapat bebrapa kesalahan dalam program sebelum diperbaiki yaitu
·         Kesalahan pada penulisan fungsi main ( ) seharusnya tidak menggunakan huruf besar
·         Kesalahan pada penulisan untuk komentar lebih dari dua baris
·          Identifier tidak terdefinisikan karena pada variable ditulis dengan huruf besar tetapi pemangilanya menggunakan huruf kecil
·         Kurang tanda titik koma pada salah satu baris code.
·         Kesalahan pada penggunaan tanda kutip dua
·         Kurang tanda kurung kurawal sebagai penutup



soal n


Penyelesaian :

Coding 6
Source Code:modul n
#include <stdio.h>
#include <stdlib.h>

int main (void)
{
       int a,b=3,c;
       printf("masukan angka> ");
       scanf("%d",&a);
       c=a+b;
//tanda  " & " dihilangkan
       printf("setelah ditambah 3, yaitu %d + 3 = %d \n", a, c);
       system("pause");
//seharusnya tanda kutip dihilangkan
       return(0);
}

Deskripsi singkat:
Terdapat bebrapa kesalahan dalam program sebelum diperbaiki yaitu
·         Kesalahan pada penulisan “&”
·         Kesalahan pada penulisan tanda kutip dua